2

如何为操作员设置字体颜色?我正在用 C++ 编程,我希望像 '+'、'='、'!='、'<<' 之类的运算符按我的意愿着色。

我尝试将光标移动到运算符和“Mx customize-face”上,但默认情况下它会将我带到“所有面孔”。我应该编辑哪个?

4

2 回答 2

3

我相信这就是你要找的。

;;       * the name of our face *
(defface font-lock-operator-face
  '((((class color)
       :background "darkseagreen2")))
  "Basic face for highlighting."
  :group 'basic-faces)

;; You'll have a hard time missing these colors
(set-face-foreground 'font-lock-operator-face "red")
(set-face-background 'font-lock-operator-face "blue")

(font-lock-add-keywords 'c++-mode
  '(("\\(~^&\|!<>:=,.\\+*/%-]\\)" 0 'font-lock-operator-face)))
于 2014-02-21T02:31:53.050 回答
0

默认情况下,font-lock我的版本c++-mode(Emacs 24.3 默认)中没有操作符。您可以使用 获取光标下的人脸C-u C-x =。要将字体锁定添加到运算符,您可以通过以下方式添加:

(font-lock-add-keywords 'c++-mode
  '(("\\(~^<>:=,.\\+*/%-]\\)" 0 'highlight)))

正则表达式和面部可以自定义。我不是正则表达式忍者,所以突出显示的运算符非常简单。

于 2014-02-21T01:24:00.747 回答