可能我的第三方包比较少,目前还没有出现问题
四舍五入一下就是什么都没改
* Changes in Specialized Modes and Packages in Emacs 28.2
** The command 'kdb-macro-redisplay' was renamed to 'kmacro-redisplay'.
This is to fix an embarrassing typo in the original name.
** 'desktop-save-mode' now saves the desktop in 'save-buffers-kill-emacs'.
Previously, the desktop was saved in 'kill-emacs' via
'kill-emacs-hook'. However, that violated the convention that
functions in 'kill-emacs-hook' cannot interact with the user, and in
particular didn't play well with ending daemon sessions of Emacs. So
we moved the saving of the desktop to 'save-buffers-kill-emacs', via
'kill-emacs-query-functions'. To make sure the desktop is saved,
terminate Emacs with 'save-buffers-kill-emacs', not with 'kill-emacs'.
(This change was done in Emacs 28.1, but we didn't announce it in NEWS
back then.)
有时间再试试,谢谢!
我用大佬的 doom-modeline
, Emacs-29.1-rc1 一直给我报
Warning: setting attribute ‘:background’ of face ‘doom-modeline-bar-inactive’: nil value is invalid, use ‘unspecified’ instead.
算了, 我滚回去用 28.2 咯.
是这样的.
29.x 给的告警,你是不是用了doom-themes,给他报bug
是, 这个好像是我安装 doom-modeline
时自动下载的.
嗯…我没搞懂这和 doom-themes
有啥关系, 而且就算有关系, 我因为一个来自其它 package 的 face 报警 而给 doom-themes
报 bug, 会不会有点不太合适
-
doom-themes
不会自动跟随doom-modleine
安装。 -
doom-themes
或者其他类似的主题会修改doom-modeline
的默认face,导致这个问题发生。 - 最好用
emacs -Q
来确认,或者删除doom-themes或者换其他主题。
抱歉, 应该是我记忆混乱了.
我把除了原生的 theme 都删了, custom-enabled-themes
也置为了 nil, 还是有这个 warning.
看来得慢慢裁剪 init 文件排查错误了…
用 emacs -Q
排查
我焯, 终于找到复现的方法了, 这玩意得开 daemon 才能复现, 鬼知道我尝试了多久.
除了 elpa/
目录下必要的 package 外,
我的 init.el
:
;;; -*- lexical-binding: t; -*-
(setq server-auth-dir "~/tmp/")
(setq server-name "server")
(custom-set-variables
'(doom-modeline-mode t))
无 early-init.el
.
启动 Emacs-29.1-rc1:
C:\Users\shynur\bin\emacs-29.1-rc1\bin\emacsclientw.exe --server-file=c:/Users/shynur/tmp/server --alternate-editor="" --create-frame
查看下 doom-modeline-bar-inactive
face 和 (face-foreground 'mode-line-inactive)
的值。
按照我提到的步骤启动的话,
全部是 unspecified
;
"grey20"
.
另外刚刚发现, 创建好 daemon 之后, 每次用
C:\Users\shynur\bin\emacs-29.1-rc1\bin\emacsclientw.exe --server-file=c:/Users/shynur/tmp/server --alternate-editor="" --create-frame
新打开一个 frame 时, 都会报一次那个 warning.
我是新开了个 Windows 11 虚拟机测试的. 在我本地上, 这个 warning 会持续报.
更新doom-modeline
试试。
本地试了一下, 没看到 warning. 感谢!
最后怎么解决的呀?
试试这个:
;; Bugfix
;;--------------------------------------------------------------------
;;; doom-one theme:
;; Warning: setting attribute ‘:background’ of face ‘font-lock-comment-face’: nil value is invalid, use ‘unspecified’ instead.
在你所使用的 doom-theme 文件中:
将
(modeline-fg fg)
-改为->
(modeline-fg 'unspecified)
将
:background (if doom-one-brighter-comments (doom-lighten bg 0.05))
-改为->\
:background (if doom-one-brighter-comments
(doom-lighten bg 0.05)
'unspecified)
用的 v29.1, 啥配置都没改, 只是更新了一下 doom-modeline 就好了.
我是小白,请问是如何更新doom-modeline 的呀
我想问下具体的文件路径在哪里呀