用了一段时间这个新的 mode-line,感觉不等宽字体其实挺好看的
看来就是个习惯问题
换个字体用本身也无妨,问题是改变默认值会造成一堆兼容性问题。这家伙最近的commit导致了很多bug。我已经退回28了。
给上游报告一下 bug 啊。看邮件列表的讨论,好像是付出了很多的努力,才有了这个功能。
我用的 mode-line 比较简单,暂时没遇到什么 bug。
很多人已经报了,顺手修的时候又引入新的bug,无语。。。
方便截个图看看吗?
我也退回 28 了,最近 nix-community/emacs-overlay 加上了一个 emacsUnstableGcc
,就是开启了 native-comp 的 emacs 28.0.90。我发现 doom 在最新的 Emacs 上根本跑不了,只能在 emacs 28 用。
怪不得,看来要想用得舒服还是得守旧一点
这个已经不用了,改成了 emacsGcc ,也是指向 emacs 28.0.90
哦,那么 master 版本呢?
master 版本要自己 override 一下 emacsGit
启动过一段时间变成这样是已知的 bug 么,好像看到了 [Bug] Modeline Background gets Broken Up · Issue #486 · seagle0128/doom-modeline · GitHub
是Emacs29吗?29改了东西,不兼容了
是,我把几个face都设了貌似没问题了,再观察下
29的开发者最近在瞎改,等改完了再说吧
最新消息,他们准备先改回 monospace.
Message-ID: [email protected] To: [email protected] Subject: Variable pitch mode line From: Lars Ingebrigtsen [email protected] Date: Wed, 22 Dec 2021 14:14:22 +0100 X-Now-Playing: Daniel Brandt’s Erased Tapes: 1 + 1 = X (1): “Blackpool Sands Forever”
It’s been almost a month since it was switched to “on”, so I think it’s about time to take stock.
I think that, long term, we want to go in that direction. But we’ve uncovered some usability problems, mainly in the “how do I click those things in “U:–” anyway?” area, and we’ve got a plan to fix that, but haven’t yet.
So I think the way forward is to revert the trunk back to monospaced fonts, then fix the usability problems, and then do another test in a few months.
– (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
谢天谢地,否则兼容性破坏很多包都要改的。等方案成熟了再merge。
(defmacro doom-modeline-def-segment (name &rest body)
"Defines a modeline segment NAME with BODY and byte compiles it."
(declare (indent defun) (doc-string 2))
(let ((sym (intern (format "doom-modeline-segment--%s" name)))
(docstring (if (stringp (car body))
(pop body)
(format "%s modeline segment" name))))
(cond ((and (symbolp (car body))
(not (cdr body)))
(add-to-list 'doom-modeline-var-alist (cons name (car body)))
`(add-to-list 'doom-modeline-var-alist (cons ',name ',(car body))))
(t
(add-to-list 'doom-modeline-fn-alist (cons name sym))
`(progn
(fset ',sym (lambda () ,docstring ,@body))
(add-to-list 'doom-modeline-fn-alist (cons ',name ',sym))
,(unless (bound-and-true-p byte-compile-current-file)
`(let (byte-compile-warnings)
(byte-compile #',sym))))))))
最后那个 unless 是不是写错了?只有在当 byte-compile-current-file 为 t 时才会编译吧