summaryrefslogtreecommitdiff
path: root/README.org
blob: c9c309e06ef5e302a885ee1091c3ac81522b1f4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
* Iedit - Edit multiple regions in the same way simultaneously

This package includes Emacs minor modes (iedit-mode and
iedit-rectangle-mode) based on a API library (iedit-lib) and allows you to edit
one occurrence of some text in a buffer (possibly narrowed) or region, and
simultaneously have other occurrences edited in the same way, with visual
feedback as you type.

Normal scenario of Iedit mode is like:

 - Highlight certain contents - by press C-; (The default key binding) All
   occurrences of a symbol, string or a region in the buffer may be highlighted
   corresponding to current mark, point and prefix argument.  Refer to the
   document of `iedit-mode' for details.

 - Edit one of the occurrences
   The change is applied to other occurrences simultaneously.

 - Finish - by pressing C-; again

You can also use Iedit mode as a quick way to temporarily show only the
buffer lines that match the current text being edited.  This gives you the
effect of a temporary `keep-lines' or `occur'.  To get this effect, hit C-'
when in Iedit mode - it toggles hiding non-matching lines.

Renaming refactoring is convinient in Iedit mode

 - The symbol under point is selected as occurrence by default and only complete
   symbols are matched

 - With digit prefix argument 0, only occurrences in current function are matched

 - Restricting symbols in current region can be done by pressing C-; again

 - Last renaming refactoring is remembered and can be applied to other buffers
   later

 - Restricting the search area to just the current line can be done by
   pressing M-I.

 - Restricting the search area to the lines near the current line can
   be done by pressing M-{ and M-}. These will expand the search
   region one line at a time from the top and bottom.  Add a prefix
   argument to go the opposite direction.

Iedit-rectangle-mode provides rectangle support with *visible rectangle*
highlighting, which is similar with cua mode rectangle support.  But it's
lighter weight and uses iedit mechanisms.

There are also some other facilities you may never think about.  Refer to the
document of function `iedit-mode' (C-h f iedit-mode RET) for more details.