Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

mg979/vim-visual-multi

Repository files navigation

vim-visual-multi

It's called vim-visual-multi in analogy with visual-block, but the plugin works mostly from normal mode.

Basic usage:

  • select words with Ctrl-N (like Ctrl-d in Sublime Text/VS Code)
  • create cursors vertically with Ctrl-Down/Ctrl-Up
  • select one character at a time with Shift-Arrows
  • press n/N to get next/previous occurrence
  • press [/] to select next/previous cursor
  • press q to skip current and get next occurrence
  • press Q to remove current cursor/selection
  • start insert mode with i,a,I,A

Two main modes:

  • in cursor mode commands work as they would in normal mode
  • in extend mode commands work as they would in visual mode
  • press Tab to switch between <> and <> mode

Most vim commands work as expected (motions, r to replace characters, ~ to change case, etc). Additionally you can:

  • run macros/ex/normal commands at cursors
  • align cursors
  • transpose selections
  • add patterns with regex, or from visual mode

And more... of course, you can enter insert mode and autocomplete will work.

Installation

With vim-plug:

Plug 'mg979/vim-visual-multi', {'branch': 'master'}

With Vim 8+:

mkdir -p ~/.vim/pack/plugins/start && git clone https://github.com/mg979/vim-visual-multi ~/.vim/pack/plugins/start/vim-visual-multi

Documentation

:help visual-multi

For some specific topic it's often:

:help vm-some-topic

Tutorial

To run the tutorial:

vim -Nu path/to/visual-multi/tutorialrc

The wiki was the first documentation for the plugin, but many pictures are outdated and contain wrong mappings. Still, you can take a look.

You could read at least the Quick Start.


Some (sometimes very old) random pics:


Insert mode with autocomplete, alignment (mappings in pic have changed, don't trust them)


Undo/Redo edits and selections


Alternate cursor/extend mode, motions (even %), reverse direction (as in visual mode) and extend from the back. At any time you can switch from extend to cursor mode and viceversa.


Select inside/around brackets/quotes/etc:


Select operator, here shown with 'wellle/targets.vim' plugin: sib, sia, saa + selection shift


Synched column transposition


Unsynched transposition (cycle all regions, also in different lines)


Shift regions left and right (M-S-<>)


Find words under cursor, add new words (patterns stack), navigate regions, skip them, add regions with regex.


Normal/Visual/Ex commands at cursors


Macros. Shorter lines are skipped when adding cursors vertically.


Some editing functions: yank, delete, paste from register, paste block from yanked regions


Case conversion

About

Multiple cursors plugin for vim/neovim

Topics

Resources

Readme

License

MIT license

Stars

Watchers

Forks

Packages