Emacs:语法突出显示python模式中的怪癖

时间:2013-11-05 15:22:28

标签: python emacs syntax-highlighting

我运行GNU Emacs 23.3.1。 当我进行python编程(主要是版本2.7)时,我注意到两个小但相当恼人的语法突出显示差异。 一个是突出变量名称;只有在没有缩进且没有其他方面的块中写入时才会突出显示它们。例如:

A = 0
B, C = 0, 0
def f():
    D = 0

在这种情况下,A突出显示,而B,C和D则不突出显示。是什么导致这种情况,有可能找到并改变它吗?我宁愿总是突出显示所有变量,但如果这很棘手,那么不突出显示变量(同时保留所有其他突出显示而不改变任何其他模式)是另一种选择。

另一个差异与print语句和特殊变量有关,如file,map和range(以及任何其他类似突出显示的单词):

print file

在这种情况下,文件不会突出显示。

print file, file

但是,在这种情况下,第一个文件实例不会突出显示,而第二个实例则不突出显示。不同地突出显示的关键字(无突出显示,真/假,无等)始终始终如一地正确突出显示。

如果我非常地运行emacs(emacs -nw),这种情况仍然存在。我还与其他编辑(vi,nano和kate)进行了测试,虽然突出显示不同(不同的单词和不同的颜色),但没有发现任何差异或不一致。在使用emacs编写C ++,bash或latex时,我没有遇到过这样的问题。

1 个答案:

答案 0 :(得分:0)

使用python-mode.el, M-x customize-face RET py-variable-name-face RET

https://launchpad.net/python-mode