在Notepad ++中添加到Python语法高亮显示

时间:2012-06-01 14:11:08

标签: python xml 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" />

当我转到Settings-&gt; Style Configurator-&gt; Python-&gt; BUILTINS时,我会看到我的内置函数列表以及我分配给它们的颜色。但是,在编辑Python文件时,不会突出显示内置函数。这是为什么?

我发现类似here的内容,但找不到文件LexPython.cxx。我该如何解决这个问题?有可能解决吗?

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

您无法像这样添加其他类型。我建议您只需将 BUILTINS 字词添加到现有的 KEYWORDS 列表中。这就是我通常做的事情。

答案 2 :(得分:0)

你快到了...... 只需将您添加的关键字列表的styleID设置为14,只有14个可用。 现在,您可以通过样式配置器设置颜色。在这里看到效果 built-in function highlighting 内置函数int()和range()使用自定义颜色呈现。

一点解释:

指出here“...... Syntilla lexers使用预定义的数字来着色(这些是”styleID“)......”并且它们是针对每种语言定义的。您可以在记事本++源文件SciLexer.h中查看它。

实际上有一个为Wthon(SCE_P_WORD2)定义了id为14的WORD2组,但它没有在默认的stylers.xml中使用。