doomemacs/modules/feature/evil
2018-04-18 01:08:56 -04:00
..
autoload feature/evil: fix inclusivity of evil-matchit #519 2018-04-18 01:08:56 -04:00
test Conform unit test macros to naming convention 2018-03-27 02:52:30 -04:00
config.el feature/evil: fix inclusivity of evil-matchit #519 2018-04-18 01:08:56 -04:00
packages.el feature/evil: add evil-collection (with +everywhere flag) #459 2018-03-19 04:39:02 -04:00
README.org Update & reformat module readmes for v2.0.9 2018-01-01 13:21:53 -05:00

:feature evil

This holy module brings the vim experience to Emacs.

Removing evil-mode

Features

  • A better :g[lobal] command with incremental highlighting.
  • Adds the :al[ign] ex command: offers an ex interface to align-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 (from evil-textobj-anyblock)
    • Args: a (from evil-args)
    • Indentation: i / I / J (from evil-indent-plus)
  • 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 or vim-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 (see evil-ex-visual-char-range).
  • :g will incrementally highlight buffer matches.