These optional dotfiles indicate the root of a module or module group (:lang), and will later contain module metadata. They will also serve as an alternative to packages.el and doctor.el, and will aide the parts of the v3.0 module API concerned with resolving the current module from a path (`doom-module-from-path`), which currently rely too heavily on parsing path strings. For now, however, they're simply placeholders. |
||
---|---|---|
.. | ||
+light.el | ||
.doommodule | ||
autoload.el | ||
config.el | ||
packages.el | ||
README.org |
:ui modeline
Description unfold
This module provides an Atom-inspired, minimalistic modeline for Doom Emacs, powered by the doom-package:doom-modeline package (where you can find screenshots).
Maintainers
Module flags
- +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.
Packages
- doom-package:anzu
- doom-package:doom-modeline unless doom-module:+light
- doom-package:evil-anzu if doom-module::editor evil
Hacks
No hacks documented for this module.
TODO Changelog
This module does not have a changelog yet.
Installation
Enable this module in your doom!
block.
This module has no external requirements.
TODO Usage
This module's usage documentation is incomplete. Complete it?
Hiding the modeline
- 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.
TODO Switching the modeline and header line
TODO Configuration
This module's configuration documentation is incomplete. Complete it?
TODO Changing the default modeline
TODO Activating a format
TODO Defining a modeline format
TODO Defining a modeline segment
TODO Extracting Doom's modeline into your config
Troubleshooting
Where are my minor modes?
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.
Icons in my modeline look strange
- Check whether
nerd-icons
are installed. RunM-x nerd-icons-install-fonts
to install the resource fonts. Note thatnerd-icons
only support GUI. See nerd-icons for details. -
cnfonts
will conflict withnerd-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)
The right side of the modeline is cut off
I believe the consensus is: this is due to oversized icons, i.e. a font issue. Some possible solutions:
-
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 check 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
.
Frequently asked questions
This module has no FAQs yet. Ask one?
TODO Appendix
This module's appendix is incomplete. Write more?
Autodefs
def-modeline-format! NAME LEFT &optional RIGHT
def-modeline-segment! NAME &rest REST
set-modeline! NAME &optional DEFAULT
Variables
- 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
Faces
- 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