spacemacs/contrib/iedit
2014-12-06 01:18:03 -05:00
..
extensions/evil-iedit-state Free up d in iedit state and D now deletes all occurrences 2014-12-06 01:18:03 -05:00
extensions.el Completely changed the philosophy of iedit state 2014-12-06 00:57:20 -05:00
packages.el Add iedit layer 2014-12-05 00:59:35 -05:00
README.md Free up d in iedit state and D now deletes all occurrences 2014-12-06 01:18:03 -05:00

iedit contribution layer for Spacemacs

Table of Contents

This layer replaces auto-highlight-symbol back end by iedit.

It comes with two new evil states:

  • iedit state
  • iedit-insert state

These states color code is red.

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

Install

To use this contribution add it to your ~/.spacemacs

(defvar dotspacemacs-configuration-layers '(iedit)
  "List of contribution to load."
)

Key bindings

State transitions

Key Binding    |       From         |          To

-------------------|:------------------:|:-------------------------: SPC s e | normal or visual | iedit e | expand-region | iedit ESC | iedit | normal C-g | iedit | normal fd | iedit | normal ESC | iedit-insert | iedit C-g | iedit-insert | normal fd | 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 or fd 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 # | prefix all occurrences with an increasing number (SPC u to choose the starting number). D | delete the occurrences F | restrict the scope to the function gg | go to first occurrence G | go to last occurrence I | toggle case-sensitivity 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

In iedit-insert state

Key Binding            |                 Description

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

Examples

  • manual selection of several words then replace: v w w SPC s e S "toto" ESC ESC
  • append text to a word on two lines: v i w SPC s e J i "toto" ESC ESC
  • substitute symbol with expand-region: SPC v v e S "toto" ESC ESC
  • replace symbol with yanked (copied) text with expand region: SPC v e p ESC ESC

Todo

  • Make A append to the end of the edited region.
  • Make I insert to the beginning of the edited region.
  • Make 0 go to the beginning of the edited region.
  • Make $ go to the end of the edited region.