永久覆盖 Emacs 主题的背景颜色

永久覆盖 Emacs 主题的背景颜色

我想使用 Emacs 主题比尔.emacs,只是背景颜色不同。我的文件中有以下内容:

(require 'color-theme)
(color-theme-initialize)
(color-theme-billw)
(set-background-color "gray12")

但是这似乎不会在启动时改变背景颜色;我需要set-background-color "gray12"在每个会话开始时手动在迷你缓冲区中运行。

有什么帮助吗?我尝试根据输出创建自己的自定义主题,color-theme-print但这导致的问题比它本身的价值还要多...

答案1

color-theme-billw函数内部使用该color-theme-install-frame-params函数来更改框架参数。因此,您可以按照以下相同的方式更改框架参数:

(require 'color-theme)
(color-theme-initialize)
(color-theme-billw)
(color-theme-install-frame-params
  '((background-color . "gray12")))

C-hfcolor-theme-install-frame-params

(color-theme-install-frame-params PARAMS)

使用 alist 更改框架参数PARAMETERS

如果color-theme-is-global不为零,则使用 修改所有帧modify-frame-parameters,并将PARAMETERS添加到 前面default-frame-alist。 的值initial-frame-alist不会被修改。如果color-theme-is-global为零,则只修改选定的帧。如果color-theme-is-cumulative为零,则从 恢复帧参数color-theme-original-frame-alist

如果当前框架参数有一个minibuffer值为 的参数only,则不会安装框架参数,因为这表示专用的迷你缓冲框架。

答案2

将光标定位到 (“观点在您想要设置“背景”的位置输入 (GNU Emacs 用语中为 )。最好是没有显示文本的位置。然后输入M-x describe-face

Emacs 会告诉你(GNU Emacs 可以显示的所有东西都有一个“面孔”)您正在查看。很可能是“默认”。然后在窗口底部,单击“您可以自定义此面孔”。

您现在处于“定制“。(它只是某种从/到你的获取/设置值的向导〜/.emacs)设置您想要的背景颜色,然后点击“保存以供将来的会话使用”。

就是这样。现在看看你的 ~/.emacs 的底部,里面(custom-set-faces ...)是你的脸部定义。

顺便提一句,颜色主题现在不知何故内置 GNU Emacs 24。我的 .emacs 中有这个:

(custom-set-variables

...stuff...

 '(custom-enabled-themes (quote (tango-dark)))

...stuff...)

相关内容