/evil-iedit-state

Slick Evil states for iedit.

Primary LanguageEmacs LispGNU General Public License v3.0GPL-3.0

evil-iedit-state

MELPA MELPA Stable

Table of Contents

Description

This package adds two new Evil states:

  • iedit state
  • iedit-insert state

It has also a nice integration with expand-region for quick edit of the current selected text by pressing e.

Install

Package manager

You can either install evil-iedit-state from MELPA:

 M-x package-install evil-iedit-state

Or add it to your Cask file:

(source melpa)

(depends-on "evil-iedit-state")

Manually

Add evil-iedit-state.el to your load path. evil-iedit-state requires both iedit and evil to be installed.

Key bindings

State transitions

Key Binding    |       From         |          To

-------------------|:------------------:|:-------------------------: e | expand-region | iedit ESC | iedit | normal C-g | iedit | normal ESC | iedit-insert | iedit C-g | iedit-insert | normal

To sum-up, in iedit-insert state you have to press ESC twice to go back to the normal state. You can also at any time press C-g to return to normal state.

Note: evil commands which switch to insert state will switch in iedit-insert state.

In iedit state

iedit state inherits from normal state, the following key bindings are specific to iedit state.

Key Binding   |                 Description

------------------|------------------------------------------------------------ ESC | go back to normal state TAB | toggle current occurrence 0 | go to the beginning of the current occurrence $ | go to the end of the current occurrence # | prefix all occurrences with an increasing number (C-u to choose the starting number). A | go to the end of the current occurrence and switch to iedit-insert state D | delete the occurrences F | restrict the scope to the function gg | go to first occurrence G | go to last occurrence I | go to the beginning of the current occurrence and switch to iedit-insert state J | increase the edition scope by one line below K | increase the edition scope by one line above L | restrict the scope to the current line n | go to next occurrence N | go to previous occurrence p | replace occurrences with last yanked (copied) text S | (substitute) delete the occurrences and switch to iedit-insert state V | toggle visibility of lines with no occurrence U | Up-case the occurrences C-U | down-case the occurrences

Note: 0, $, A and I have the default Vim behavior when used outside of an occurrence.

In iedit-insert state

Key Binding            |                 Description

---------------------------|------------------------------------------------------------ ESC | go back to iedit state C-g | go back to normal state