This module provides an Atom-inspired, minimalistic modeline for Doom Emacs, powered by the doom-package:doom-modeline package (where you can find screenshots).
- @hlissner
Become a maintainer?
- +light
- Enable a lighter, less featureful version of the modeline that does not depend on doom-package:doom-modeline, which has performances issues in some cases.
- doom-package:anzu
- doom-package:doom-modeline unless doom-module:+light
- doom-package:evil-anzu if doom-module::editor evil
No hacks documented for this module.
This module does not have a changelog yet.
Enable this module in your doom!
block.
This module has no external requirements.
🔨 This module’s usage documentation is incomplete. Complete it?
- You can use
M-x hide-mode-line-mode RET
to hide modeline for the current buffer. - Also, there is
global-hide-mode-line-mode
for globally hiding modeline. You can just add(global-hide-mode-line-mode)
into =~/.doom.d/config.el~. hide-mode-line-excluded-modes
can be set for preventingglobal-hide-mode-line-mode
hiding modeline for buffers with the corresponding major modes.
🔨 This module’s configuration documentation is incomplete. Complete it?
Report an issue?
I rarely need to know what minor modes are active, so I removed them. M-x
doom/describe-active-minor-mode
was written to substitute for it.
- Check whether
all-the-icons
are installed. RunM-x all-the-icons-install-fonts
to install the resource fonts. Note thatall-the-icons
only support GUI. See all-the-icons for details. cnfonts
will conflict withall-the-icons
. You can refer the following workaround:;; See https://github.com/seagle0128/doom-modeline/issues/278#issuecomment-569510336 ;; Add to $DOOMDIR/packages.el (package! cnfonts) ;; Add to $DOOMDIR/config.el (add-hook 'after-setting-font-hook #'cnfonts-set-font)
- If
all-the-icons
fonts are installed while the icons cannot display correctly, please install the non-free font Symbola. This issue usually occurs on Windows.
I believe the consensus is: this is due to oversized icons, i.e. a font issue. Some possible solutions:
- Tweak
all-the-icons-scale-factor
(1.2 by default):(setq all-the-icons-scale-factor 1.1)
- Add some padding to the modeline definition:
(after! doom-modeline (doom-modeline-def-modeline 'main '(bar matches buffer-info remote-host buffer-position parrot selection-info) '(misc-info minor-modes checker input-method buffer-encoding major-mode process vcs " "))) ; <-- added padding here
- Use another font for the mode line (or a different
:height
) (source)(custom-set-faces! '(mode-line :family "Noto Sans" :height 0.9) '(mode-line-inactive :family "Noto Sans" :height 0.9))
(Mentioned in #1680, #278 and seagle0128/doom-modeline#334)
- Change the width of icon characters in
char-width-table
:(add-hook! 'doom-modeline-mode-hook (let ((char-table char-width-table)) (while (setq char-table (char-table-parent char-table))) (dolist (pair doom-modeline-rhs-icons-alist) (let ((width 2) ; <-- tweak this (chars (cdr pair)) (table (make-char-table nil))) (dolist (char chars) (set-char-table-range table char width)) (optimize-char-table table) (set-char-table-parent table char-table) (setq char-width-table table)))))
If this doesn’t help, try different values for
width
such aswidth 1
orwidth 3
.
This module has no FAQs yet. Ask one?
🔨 This module’s appendix is incomplete. Write more?
def-modeline-format! NAME LEFT &optional RIGHT
def-modeline-segment! NAME &rest REST
set-modeline! NAME &optional DEFAULT
- doom-modeline-height
- doom-modeline-bar-width
- doom-modeline-buffer-file-name-style
- doom-modeline-icon
- doom-modeline-major-mode-icon
- doom-modeline-major-mode-color-icon
- doom-modeline-buffer-state-icon
- doom-modeline-buffer-modification-icon
- doom-modeline-minor-modes
- doom-modeline-enable-word-count
- doom-modeline-buffer-encoding
- doom-modeline-indent-info
- doom-modeline-checker-simple-format
- doom-modeline-vcs-max-length
- doom-modeline-persp-name
- doom-modeline-lsp
- doom-modeline-github
- doom-modeline-github-interval
- doom-modeline-env-version
- doom-modeline-mu4e
- doom-modeline-irc
- doom-modeline-irc-stylize
- doom-modeline-buffer-path
- doom-modeline-buffer-file
- doom-modeline-buffer-modified
- doom-modeline-buffer-major-mode
- doom-modeline-buffer-minor-mode
- doom-modeline-project-parent-dir
- doom-modeline-project-dir
- doom-modeline-project-root-dir
- doom-modeline-highlight
- doom-modeline-panel
- doom-modeline-debug
- doom-modeline-info
- doom-modeline-warning
- doom-modeline-urgent
- doom-modeline-unread-number
- doom-modeline-bar
- doom-modeline-inactive-bar
- doom-modeline-evil-emacs-state
- doom-modeline-evil-insert-state
- doom-modeline-evil-motion-state
- doom-modeline-evil-normal-state
- doom-modeline-evil-operator-state
- doom-modeline-evil-visual-state
- doom-modeline-evil-replace-state
- doom-modeline-persp-name
- doom-modeline-persp-buffer-not-in-persp