doomemacs/modules/ui/doom-modeline
Henrik Lissner c7254e7bdc
Major optimization refactor, across the board
+ enable lexical-scope everywhere (lexical-binding = t): ~5-10% faster
  startup; ~5-20% general boost
+ reduce consing, function calls & garbage collection by preferring
  cl-loop & dolist over lambda closures (for mapc[ar], add-hook, and
  various cl-lib filter/map/reduce functions) -- where possible
+ prefer functions with dedicated opcodes, like assq (see byte-defop's
  in bytecomp.el for more)
+ prefer pcase & cond (faster) over cl-case
+ general refactor for code readability
+ ensure naming & style conventions are adhered to
+ appease byte-compiler by marking unused variables with underscore
+ defer minor mode activation to after-init, emacs-startup or
  window-setup hooks; a customization opportunity for users + ensures
  custom functionality won't interfere with startup.
2017-06-09 00:47:45 +02:00
..
config.el Major optimization refactor, across the board 2017-06-09 00:47:45 +02:00
packages.el General cleanup & refactor; update TODO 2017-05-19 17:21:52 +02:00
README.org Update READMEs & add new ones 2017-05-25 20:09:12 +02:00

:ui doom-modeline

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

Install

This module requires the fonts included with all-the-icons to be installed.

Run M-x all-the-icons-install-fonts to do so.

Extracting my modeline

Some might want my modeline without the DOOM config altogether. I've taken some care to make this as easier for you.

Here is what you must do:

  • Ensure projectile and 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

And you should be good to go. 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. File an issue.

Troubleshooting

Where are my minor-modes?

I didn't need it, so I removed it. I wrote doom/what-minor-mode in the rare case I needed to investigate the currently active minor modes however.