我想在编辑任何语言时在emacs中突出显示某些非字母数字字符(= + /<>等)。
使用a different question on this site的答案,我在编辑Fortran时找到了突出显示'%'的解决方案:
(font-lock-add-keywords 'f90-mode
'(("%" . font-lock-keyword-face)))
但这只是一种语言中的一个符号。我可以通过污染我的.emacs文件来实现我想要的目标:
(font-lock-add-keywords 'c++-mode
'(("=" . font-lock-keyword-face)))
(font-lock-add-keywords 'java-mode
'(("=" . font-lock-keyword-face)))
(font-lock-add-keywords 'python-mode
'(("=" . font-lock-keyword-face)))
等等,但是这引入了一个错误,其中任何文件的最后几行都没有任何语法高亮。
如何在所有语言模式下为特定的非字母数字字符集启用语法高亮显示?
答案 0 :(得分:2)
使用库highlight-chars.el
(代码为here)。
您可以使用任何面部突出显示任何字符集。您可以使用任何类型的任意数量的条目来定义集合:
[:nonascii:]
,[:space:]
)iso-8859-1
或lao
)您还可以排除此类突出显示的任何字符集。
例如,您可以突出显示字符集greek-iso8859-7
中的所有字符,但字符GREEK SMALL LETTER LAMBDA
除外。或者突出显示类[:space:]
(空白)中的所有字符,但tab
除外。或?\u2190
到?\u21ff
范围内的所有Unicode字符(数学箭头),?\u21b6
,?\u21b7
,?\u21ba
和?\u21bb
除外(弯曲的箭头) )...