用普通字体覆盖粗体字体

时间:2012-07-03 13:59:04

标签: emacs lisp elisp

对于任何应用主题,我想用普通字体覆盖粗体字体。我该怎么做?

1 个答案:

答案 0 :(得分:2)

假设您使用的是Emacs 24的内置主题,

我对this问题的回答非常适用。像这样(未经测试):

(defun debold-font-lock ()
  "remove all colors from font-lock faces except comment and warning"
  (mapc (lambda (face)
          (when face
            (set-face-bold-p face nil)))
        (face-list)))

(debold-font-lock)

如果您需要随时提供建议,可以将其添加到load-theme

编辑:我上面提到了一个建议,但如果没有建议通常会更好 你可以帮助它。

所以我们可以定义一个新函数:

(defun load-theme-no-bold ()
  (interactive)
  (call-interactively 'load-theme)
  (debold-font-lock))

根据需要将此功能映射到键或直接从M-x调用。

编辑:建议信息。

在Emacs中,您可以使用建议机制更改任何功能的工作方式。

您认为“P”应该插入按键 a ?没问题。

请参阅docs

因为这是一个强大的工具,所以它往往很多,但实际上 它应该只作为最后的手段,因为你永远不会知道什么 那里的包装取决于现有的行为。