更改Emacs语法突出显示颜色

我正在运行Emacs,在C ++模式和PHP模式下编辑文件。 我喜欢语法高亮作为一个概念,但默认的颜色是一个滑稽。 我几乎读不懂其中的一些:太黑了。 什么是最简单的方法来改变他们的价值观? 我似乎无法在networking上find任何有关此事的信息。 我甚至不介意在编译我自己的Emacs时更改二进制文件。 我只是想find它所说的蓝色是#0000FF的地方,并将其改为#AAAAFF为例。

我发现使用颜色主题这种事情是最容易的。

https://www.emacswiki.org/emacs/ColorThemes

但是,如果您不想这样做,请将光标放在违规文本上,然后按Mx customize-face 。 它应该默认光标结束的面。

http://www.gnu.org/software/emacs/manual/html_node/emacs/Specific-Customization.html

2种方式 – 你可以安装包装颜色主题,它有很多很好的scheme来select,更容易手工完成。 旁边的是这样的(在你的.emacs中)

 (custom-set-faces custom-set-faces was added by Custom. If you edit it by hand, you could mess it up, so be careful. Your init file should contain only one such instance. If there is more than one, they won't work right. '(default ((t (:inherit nil :stipple nil :background "lightyellow2" :foreground "gray20" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight bold :width normal :family "liberation mono")))) '(background "blue") '(font-lock-builtin-face ((((class color) (background dark)) (:foreground "Turquoise")))) '(font-lock-comment-face ((t (:foreground "MediumAquamarine")))) '(font-lock-constant-face ((((class color) (background dark)) (:bold t :foreground "DarkOrchid")))) '(font-lock-doc-string-face ((t (:foreground "green2")))) '(font-lock-function-name-face ((t (:foreground "SkyBlue")))) '(font-lock-keyword-face ((t (:bold t :foreground "CornflowerBlue")))) '(font-lock-preprocessor-face ((t (:italic nil :foreground "CornFlowerBlue")))) '(font-lock-reference-face ((t (:foreground "DodgerBlue")))) '(font-lock-string-face ((t (:foreground "LimeGreen")))) 

等等

你也可以input

 `Mx customize-face RET` 

这将给你所有的定制设置,最终在你的.emacs。

将光标放在要更改的面上(“颜色”)。 击中Cu Cx = 。 这将告诉你哪个面孔出现在那个位置,它会让你点击来定制它/他们。 保存您的自定义。

如果你根本不关心颜色高亮,或者上面的答案都不适合你(或者花费太多的时间和精力去弄清楚),那么这里就是一个非常简单的解决scheme,它将完全消除颜色。

打字以下将摆脱颜色:

Mx global-font-lock-mode

你也可以做这个临时步骤,让你真正看到你的屏幕上的任何事情,尝试任何上述的答案。 在我的情况下,这是非常有用的,因为某些关键的文本颜色让我改变颜色本身几乎是看不见的 – 例如Mx的提示。

如果您想要更改为永久性的,可以将其添加到.emacs文件中:

(setq-default global-font-lock-mode nil)