在 minor mode 多的时候,mode-line 基本没法看了,论坛里有些帖子讨论如何简化,感觉都有些复杂了, 这里提供一个简单的方案,不需要额外安装第三方包,效果是 minor 部分只显示 flycheck:
(let ((my/minor-mode-alist '((flycheck-mode flycheck-mode-line))))
(setq mode-line-modes
(mapcar (lambda (elem)
(pcase elem
(`(:propertize (,_ minor-mode-alist . ,_) . ,_)
`(:propertize ("" ,my/minor-mode-alist)
mouse-face mode-line-highlight
local-map ,mode-line-minor-mode-keymap)
)
(_ elem)))
mode-line-modes)
))
参考: