colors - 如何设置flycheck-posframe的颜色
问题描述
我是 emacs 的新手,但现在遇到了一些问题,我无法设置 flycheck-posframe 的颜色,设置它的正确方法是什么。我试过写这个,但它不能工作。谢谢
(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")))
解决方案
Emacs 中的面实际上与普通变量的存储方式不同,这意味着您不能使用setq
.
修改人脸属性最简单的方法是通过Emacs 自定义界面。您可以通过运行命令M-x customize-face
然后输入要更改的面部名称来执行此操作。您可以在此自定义缓冲区中轻松编辑面部属性。完成更改后,您必须选择Apply
(如果您希望更改应用于当前 Emacs 会话)或Apply and Save
(如果您希望更改也保留到未来的 Emacs 会话)以使更改发生。
这是使用自定义缓冲区进行修改的示例flycheck-posframe-error-face
:
但是,如果由于某种原因需要使用 Emacs Lisp 修改人脸属性,则可以使用该set-face-attribute
函数来完成。此函数采用人脸名称(作为符号)、帧(的值nil
表示更改影响所有帧)以及交替的属性名称和值。请注意,这些属性更改只会影响当前的 Emacs 会话。您需要在每次启动 Emacs 会话时执行这些函数,以便将这些更改应用于该会话(例如,通过将以下命令添加到您的 init 文件中)。
以下内容应进行您尝试进行的修改:
(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")
推荐阅读
- swift - 将小时从 12 小时制转换为 24 小时制 Swift 并保存为整数
- ionic3 - 如何在页面更改时隐藏横幅?
- custom-controls - Notes 文档中的 RichText 字段重复
- swift - ARKit – 渲染 1000 米以外的物体
- go - 用于(空间)高效存储的 boltdb 数据格式
- docker - Minishift 安装后不启动
- python - 使用 BeautifulSoup 抓取网站后文本丢失
- javascript - Javascript创建具有唯一值组合的数组
- java - 搜索数组列表不区分大小写
- markdown - 如何使用带有 markdown 的 jekyll 创建侧边菜单