首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置flycheck-posframe的颜色

如何设置flycheck-posframe的颜色
EN

Stack Overflow用户
提问于 2019-08-11 14:32:32
回答 1查看 202关注 0票数 2

我是新来的emacs,但是现在遇到了一些问题,我不能设置flycheck-posframe的颜色,什么是正确的设置方法。我试过写这篇文章,但它不能工作。谢谢

代码语言:javascript
复制
    (setq  flycheck-posframe-warning-prefix "😅"
           flycheck-posframe-error-prefix "😡"
           flycheck-posframe-border-width 5
           flycheck-posframe-error-face '((t :inherit nil :foreground "red"))
           flycheck-posframe-warning-face `(:foreground-color ."orange")
           flycheck-posframe-info-face '((t (:foreground "blue")))
           flycheck-posframe-border-face  '(:foreground "#dc752f")))
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-13 07:21:13

Emacs中的Faces实际上是以不同于普通变量的方式存储的,这意味着您不能使用setq设置它们的值。

修改面属性的最简单方法是通过Emacs Customization interface。可以通过运行命令M-x customize-face,然后输入要更改的面的名称来执行此操作。您可以在此自定义缓冲区中轻松编辑面的属性。完成更改后,必须选择Apply (如果希望将更改应用于当前Emacs会话)或Apply and Save (如果希望更改也保留到将来的Emacs会话)以使更改生效。

以下是使用自定义缓冲区修改flycheck-posframe-error-face的示例:

但是,如果出于某种原因需要使用Emacs Lisp修改面属性,则可以使用set-face-attribute函数进行修改。此函数采用面的名称(作为符号)、帧( nil的值表示更改将影响所有帧)以及交替的属性名称和值。请注意,这些属性更改只会影响当前的Emacs会话。您需要在每次启动Emacs会话时执行这些函数,以便将这些更改应用于该会话(例如,通过将以下命令添加到您的init文件)。

以下内容应进行您正在尝试进行的修改:

代码语言:javascript
复制
(set-face-attribute 'flycheck-posframe-error-face
                    nil
                    :inherit nil
                    :foreground "red")

(set-face-attribute 'flycheck-posframe-warning-face
                    nil
                    :foreground "orange")

(set-face-attribute 'flycheck-posframe-info-face
                    nil
                    :foreground "blue")

(set-face-attribute 'flycheck-posframe-border-face
                    nil
                    :foreground "#dc752f")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57447830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档