我可以通过以下操作轻松地将我想突出显示的关键字添加到lisp交互模式中:
(font-lock-add-keywords 'lisp-interaction-mode '(("foo" (0 '(font-lock-warning-face)))))
在lisp交互模式下,只要我(重新)打开任何缓冲区,这就开始了。
然而,我不知道如何在ansi术语缓冲区内使用字体锁定添加关键字。
我不知道我的模式是错了,还是term/ansi术语缓冲区有什么"特别"的地方会阻止上面的工作。
我尝试了"术语模式",这显然是ansi术语使用的主要模式,但似乎不起作用。
如何在ansi术语中使用字体锁定添加关键字?
这应该有效:
(defun highlight-foo ()
(font-lock-add-keywords
nil ;; putting nil here adds the keywords only to the current buffer
'(("foo" 0 font-lock-warning-face))))
(add-hook 'term-mode-hook 'highlight-foo)
但是,请注意,当font-lock-mode
在这种设置下处于活动状态时,常规ANSI转义序列不会对终端中的颜色产生任何影响(例如,ls
的输出不会着色)。