multiple-cursors layer
Table of ContentsClose
1. Description
1.1. Features:
- support for multiple cursors.
2. Install
To use this configuration layer, add it to your ~/.spacemacs. You will need to
add multiple-cursors to the existing dotspacemacs-configuration-layers list in this
file.
3. Configuration
4. Key bindings
4.1. evil-mc
The evil-mc package provides the following key bindings:
| Key binding | Description |
|---|---|
g r f |
evil-mc-make-and-goto-first-cursor |
g r h |
evil-mc-make-cursor-here |
g r j |
evil-mc-make-cursor-move-next-line |
g r k |
evil-mc-make-cursor-move-prev-line |
g r l |
evil-mc-make-and-goto-last-cursor |
g r m |
evil-mc-make-all-cursors |
g r n |
evil-mc-skip-and-goto-next-match |
g r N |
evil-mc-skip-and-goto-next-cursor |
g r p |
evil-mc-skip-and-goto-prev-match |
g r P |
evil-mc-skip-and-goto-prev-cursor |
g r r |
evil-mc-resume-cursors |
g r s |
evil-mc-pause-cursors |
g r q |
evil-mc-undo-all-cursors |
g r u |
evil-mc-undo-last-added-cursor |
4.1.1. Make cursors from a selection
When the following commands are called from a:
- character or line selection, then the cursors are created at the beginning or at the end of each line with a selection.
- block selection, then the cursors are created before or after the selection blocks left or right most column.
| Key binding | Description |
|---|---|
g r A |
evil-mc-make-cursor-in-visual-selection-end |
g r I |
evil-mc-make-cursor-in-visual-selection-beg |
4.1.2. Additional key bindings
For easy navigation you also have the following:
| Key binding | Description |
|---|---|
M-n |
evil-mc-make-and-goto-next-cursor |
M-p |
evil-mc-make-and-goto-prev-cursor |
C-n |
evil-mc-make-and-goto-next-match |
C-p |
evil-mc-make-and-goto-prev-match |
C-t |
evil-mc-skip-and-goto-next-match |
C-M-j |
evil-mc-make-cursor-move-next-line |
C-M-k |
evil-mc-make-cursor-move-prev-line |
4.2. multiple-cursors
The multiple-cursors backend provides the following key bindings to
insert new cursors:
| Key binding | Description |
|---|---|
SPC s m a |
mc/mark-all-dwim |
SPC s m b |
mc/mark-all-like-this |
SPC s m m |
mc/mark-more-like-this-extended |
SPC s m r |
mc/edit-lines |
These special bindings manipulate text under cursors:
| Key binding | Description |
|---|---|
SPC s m s l |
mc/insert-letters |
SPC s m s m |
mc/mark-sgml-tag-pair |
SPC s m s n |
mc/insert-numbers |
SPC s m s r |
set-rectangular-region-anchor |
SPC s m s s |
mc/sort-regions |
SPC s m s t |
mc/reverse-regions |
5. Notes
5.1. multiple-cursors
Some commands executed during multiple-cursors enabled may lead Emacs to go frenzy.
Commands like window manipulation will be executed multiple times if mc is active.
Not all Emacs commands may be compatible with mc.
To run interactive M-x commands with mc, run the command first. This will result
with application of the command to the leading cursor. Then press C-: to apply the
command to consequtive cursors. If this is not the case or you want a command to be
executed only once, configure the mc/cmds-to-run-once variable of the layer like
in the following example.
(setq-default dotspacemacs-configuration-layers '( (multiple-cursors :variables multiple-cursors-backend 'mc mc/cmds-to-run-once '(upcase-region))))