mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-03 12:27:26 -05:00
Some packages (like evil-collection and dumb-jump) use helm macros, but Doom cannot ensure helm will be installed by the time these packages are byte-compiled during installation. In fact, the default load order prevents this. Rather than imposing hard load order requirements, we just make sure helm is higher on the packages list, so it gets installed sooner.
:feature evil
This holy module brings the vim experience to Emacs.
Table of Contents TOC
Removing evil-mode
See the corresponding question in the FAQ.
Features
- A better
:g[lobal]
command with incremental highlighting. - Adds the
:al[ign]
ex command: offers an ex interface toalign-regexp
with incremental highlighting. - Support for more of vim's filename modifiers in ex commands (like
:p
,:p:h
or:t
) than vanilla evil-mode offers. -
A list of new text objects:
- Blocks:
B
(fromevil-textobj-anyblock
) - Args:
a
(fromevil-args
) - Indentation:
i
/I
/J
(fromevil-indent-plus
)
- Blocks:
-
Incorporates vim functionality ported to evil:
vim-commentary
=>evil-commentary
vim-easymotion
=>evil-easymotion
vim-multiedit
=>evil-multiedit
vim-multiple-cursors
=>evil-mc
&evil-multiedit
vim-seek
orvim-sneak
=>evil-snipe
vim-surround
=>evil-embrace
&evil-surround
NERDTree
equivalent is available in:tools neotree
Multiple-cursors
Two multiple-cursor implementations exist in this module: evil-mc
and
evil-multiedit
. Together, these provide the functionality of
vim-multiple-cursors
.
The former lets you place "clone" cursors. The latter lets you interactively
edit many regions at once (like an interactive version of :%s
).
A hybrid code-folding system
This module combines evil-vimish-fold
and hideshow
. The former allows
arbitrary folds and the latter allows folds on markers and indentation.
Together, they create a more consistent (and feature-complete) code-folding
system.
Most vim folding keys should work, e.g. zr
, zm
, za
, zo
, etc.
Hacks
- Automatically moves to new window when splitting
- From visual mode,
*
and#
will search for the current selection instead of the word-at-point.
Differences from vim
- Column-wise ranges in ex commands are enabled by default. i.e. the range in
:'<,'>s/a/b
will only affects the visual selection, not full lines (seeevil-ex-visual-char-range
). :g
will incrementally highlight buffer matches.