2017-08-21 20:07:07 +02:00
#+TITLE : :ui doom-modeline
2017-05-25 20:08:50 +02:00
This module customizes the Emacs mode-line.
The DOOM modeline was designed for minimalism, and offers:
+ A match count panel (for ~evil-search~ , ~iedit~ and ~evil-substitute~ )
+ An indicator for recording a macro
+ Local python/ruby version in the major-mode
+ A customizable mode-line height (see ~+doom-modeline-height~ )
+ An error/warning count segment for flycheck
[[/../screenshots/ml.png ]]
[[/../screenshots/ml-search.png ]]
[[/../screenshots/ml-subst.png ]]
[[/../screenshots/ml-macro.png ]]
[[/../screenshots/ml-version.png ]]
[[/../screenshots/ml-errors.png ]]
2017-08-21 20:07:07 +02:00
* Table of Contents :TOC:
- [[#install ][Install ]]
- [[#extracting-my-modeline ][Extracting my modeline ]]
- [[#troubleshooting ][Troubleshooting ]]
- [[#where-are-my-minor-modes ][Where are my minor modes? ]]
* Install
2017-05-25 20:08:50 +02:00
This module requires the fonts included with ~all-the-icons~ to be installed.
Run ~M-x all-the-icons-install-fonts~ to do so.
2017-08-21 20:07:07 +02:00
* Extracting my modeline
2017-07-02 16:49:05 +02:00
Some might want my modeline without the DOOM config altogether. I've tried to make this easier for you, but there are a few things you'll need to do:
+ Ensure [[https://github.com/bbatsov/projectile ][projectile ]] and [[https://github.com/domtronn/all-the-icons.el ][all-the-icons ]] are installed.
+ Ensure ~projectile-mode~ is enabled.
+ Ensure the fonts included with ~all-the-icons~ are installed (~M-x all-the-icons-install-fonts~ ).
+ Replace ~def-package!~ calls with ~use-package~ .
+ Replace ~doom-project-root~ calls with ~projectile-project-root~ .
+ The ~+doom-modeline--make-xpm~ function is memoized with the ~def-memoized!~ macro. Change ~def-memoized!~ to ~defun~ .
2018-04-17 20:58:28 -07:00
+ Copy the ~add-hook!~ macro definition from [[/core/core-lib.el ][core/core-lib.el ]].
+ Copy the following macros and functions from [[/core/core-ui.el ][core/core-ui.el ]]:
2017-07-02 16:49:05 +02:00
+ ~def-modeline-segment!~
+ ~def-modeline!~
+ ~doom--prepare-modeline-segments~
+ ~doom-modeline~
+ ~doom-set-modeline~
2017-08-21 20:07:07 +02:00
That /should/ be everything. As I have never used this out of my config I can't guarantee immediate success, but I'd be happy to help you out if you file an issue.
2017-05-25 20:08:50 +02:00
2017-08-21 20:07:07 +02:00
* Troubleshooting
** Where are my minor modes?
I didn't need it, so I removed it. Run ~M-x doom/what-minor-mode~ to investigate what minor modes are currently active.