emacs helm:有什么办法让它服从模板颜色?

emacs helm: any way to make it obey the template colors?

使用 Helm,我注意到 helm 不服从(符合)主题颜色,例如,在文件选择上?

有什么简单的方法(最好不要弄乱主题文件)让 helm 符合主题颜色?

在 linux

上使用 emacs26

简直...

如果主题没有针对相关面孔的配置,则该面孔不会成为主题。 "face" 基本上是给定文本的属性集合的术语。例如,lisp 关键字 lambda 的面孔是 font-lock-keyword-face。默认情况下,它有 属性 :foreground Purple 在默认背景上为您提供紫色文本。如果我使用主题,例如 Solarizedfont-lock-keyword-face 将设置为 #859900 可爱的淡绿色。因此 lambda(以及定义为 "keyword" 的任何其他文本位)也将是该颜色。

现在,如果您正在查看的文字有面孔 helm-directory-selection-face(我编造了那个面孔名称。我不使用 helm),您就会出局幸运的是,您可以看到 Solarized 没有 helm-directory-selection-face 的配置。此时您真的有两个选择,1) 更改 helm-directory-selection 的定义以使用不同的面孔或 2) 添加 helm-directory-selection-face 到您的主题。如果您想这样做,请将点(光标)放在相关文本位中,然后执行 C-u C-x =。这将生成一个新的 *Help* window,其中包含该点位置的所有属性。靠近底部的是一小部分 table 文本属性。您需要将 face 的值添加到您的主题中。

大多数活跃的主题作者很乐意通过他们选择的支持机制(github、电子邮件等)接受请求,尤其是在您提供补丁的情况下。

tl;博士

存在主题并不意味着一切都是主题。将有问题的面孔添加到您的主题中,或者联系主题的作者,最好是补丁。