0

通过执行以下操作,我可以轻松地将要突出显示的关键字添加到lisp-interaction-mode

(font-lock-add-keywords 'lisp-interaction-mode '(("foo" (0 '(font-lock-warning-face)))))

一旦我(重新)在 lisp-interaction-mode 中打开任何缓冲区,这就会启动。

但是我不知道如何在 ansi-term 缓冲区中使用font-lock-add-keywords 。

我不知道我的模式是否错误,或者术语/ansi-term 缓冲区是否有一些“特殊”的东西会阻止上述工作。

我尝试使用“term-mode”,这显然是 ansi-term 正在使用的主要模式,但它似乎不起作用。

如何在ansi-term中使用font-lock-add-keywords

4

1 回答 1

0

这应该有效:

(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不会着色)。

于 2012-10-06T20:41:32.743 回答