繁体   English   中英

在记事本++中添加到Python语法突出显示

[英]Add to Python Syntax Highlighting in Notepad++

我想为Notepad ++中的Python内置函数添加语法突出显示。 我通过将以下行添加到python标记中,在AppData / Notepad ++中修改了langs.xml:

<Keywords name="instre2">len max min sum map str int reduce</Keywords>

我还在同一位置的stylers.xml中的python标签中添加了这一行:

<WordsStyle name="BUILTINS" styleID="13" fgColor="8080FF" bgColor="FFFFFF" fontName="" fontStyle="0" fontSize="" keywordClass="instre2" />

当我转到“设置”->“样式配置器”->“ Python”->“构建”时,我会看到内置函数列表以及分配给它们的颜色。 但是,在编辑Python文件时,内置功能不会突出显示。 为什么是这样?

我在这里找到了类似的东西 ,但是找不到文件LexPython.cxx。 我该如何解决? 有可能解决吗?

基于.cxx文件扩展名,该扩展名会使LexPython.cxx成为c ++源文件,因此听起来您需要编写Python词法分析器并将其添加到Notepad ++生成过程中。

他的意思是Notepad ++ 源代码包中的“ ... \\ scintilla \\ lexers \\ LexPython.cxx”

您不能像这样添加其他类型。 我建议将您的BUILTINS单词简单地添加到现有的KEYWORDS列表中。 那就是我通常所做的。

您就快到了……将您添加的关键字列表的styleID设置为14,只有14个有效。 现在,您可以通过样式配置器设置颜色。 参见此处的效果内置函数突出显示内置函数int()和range()用自定义颜色呈现。

一点解释:

这里指出:“ ... Syntilla词典使用预定义的数字为事物着色(这些是“ styleID” ...),并且为每种语言定义了它们。 您可以在notepad ++源文件SciLexer.h中进行检查。

实际上为python(SCE_P_WORD2)定义了一个ID14为WORD2的组,但默认的stylers.xml中未使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM