我使用emacs来编辑许多文件类型,并且想要一个简单的可视队列来告诉.vhd或.py文件中的.c文件。如何为该语言的主要模式添加自定义背景颜色?
答案 0 :(得分:7)
你可以通过钩子来做到这一点。您可以挂钩的其他内容是新主要模式启动时。将这样的内容放入.emacs文件中,每次进入Python模式时,emacs都会将背景颜色设置为紫色。
(add-hook 'python-mode-hook
(lambda ()
(set-background-color "purple")))
如果您切换回没有显式设置背景挂钩的模式,将背景颜色重置为默认值,这将留给读者练习。
您也可以使用M-x set-background-color
手动设置背景颜色答案 1 :(得分:4)
您无法逐个缓冲地设置背景颜色。请参阅SU问题How can I change the background colour of a single emacs buffer?。
第一个答案显示了如何更改单个Emacs帧的背景,如果每个文件(或每个模式)有一个帧,这可能对您有用。
答案 2 :(得分:4)
对于后人来说,由于这个帖子已有4年历史,现在可以在Emacs 24.4+中更改缓冲区本地级别的面部。只需定义一张脸并使用(face-remap-add-relative)
换出你想要的任何脸部。
定义defface
:
(defface my-special-face '((t :background "aqua")))
然后为您选择的模式添加一个钩子:
(add-hook 'python-mode-hook
(lambda ()
(face-remap-add-relative 'default 'my-special-face)))