# mg979/vim-visual-multi

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/mg979-vim-visual-multi).**

4,864 stars · 98 forks · Vim Script · MIT

## Links

- GitHub: https://github.com/mg979/vim-visual-multi
- awesome-repositories: https://awesome-repositories.com/repository/mg979-vim-visual-multi.md

## Topics

`cursor` `multiple-cursors` `vim`

## Description

vim-visual-multi is a Vim and Neovim plugin that provides multi-cursor text editing. It functions as a multi-cursor text editor and macro orchestrator, allowing for parallel insertions, deletions, and replacements across diverse text occurrences.

The plugin includes a regex text selection tool used to spawn multiple cursors based on regular expression patterns. This enables the identification of matching words or fragments to perform batch modifications across a file.

The system covers several capability areas, including the vertical alignment and synchronization of cursors to a common column. It also provides automation for batch command execution, allowing macros to be run across all active cursor positions. Selection management tools allow for adding, removing, or skipping specific occurrences to refine the active cursor set.

## Tags

### Development Tools & Productivity

- [Multi-Cursor Editing](https://awesome-repositories.com/f/development-tools-productivity/multi-cursor-editing.md) — Provides simultaneous text editing, insertions, and replacements across multiple locations in a file.
- [Pattern-Based Spawning](https://awesome-repositories.com/f/development-tools-productivity/multi-cursor-editing/pattern-based-spawning.md) — Identifies matching words or regular expressions to instantly spawn cursors at every occurrence. ([source](https://github.com/mg979/vim-visual-multi#readme))
- [Multi-Caret Editors](https://awesome-repositories.com/f/development-tools-productivity/text-editors/multi-caret-editors.md) — Implements a multi-caret system for parallel insertions, deletions, and replacements across diverse text occurrences.
- [Vim Plugins](https://awesome-repositories.com/f/development-tools-productivity/vim-plugins.md) — Extends Vim and Neovim with capabilities for simultaneous text editing across multiple cursors.
- [Macro Orchestration Tools](https://awesome-repositories.com/f/development-tools-productivity/macro-orchestration-tools.md) — Executes macros and commands across multiple active cursor positions to automate repetitive tasks.
- [Columnar Synchronization](https://awesome-repositories.com/f/development-tools-productivity/multi-cursor-editing/columnar-synchronization.md) — Aligns multiple cursors to a common column to ensure consistent editing across different lines. ([source](https://github.com/mg979/vim-visual-multi/blob/master/README.md))
- [Cursor-Based Automation](https://awesome-repositories.com/f/development-tools-productivity/multi-cursor-editing/cursor-based-automation.md) — Allows the execution of macros and commands across all active cursors for repetitive text transformations. ([source](https://github.com/mg979/vim-visual-multi#readme))
- [Local Command Execution](https://awesome-repositories.com/f/development-tools-productivity/multi-cursor-editing/local-command-execution.md) — Executes macros or commands independently at every active cursor position to modify text locally. ([source](https://github.com/mg979/vim-visual-multi/blob/master/README.md))
- [Text Buffer Manipulations](https://awesome-repositories.com/f/development-tools-productivity/text-buffer-manipulations.md) — Coordinates text insertions and deletions across multiple offsets to maintain alignment across lines.

### Business & Productivity Software

- [Batch Text Transformations](https://awesome-repositories.com/f/business-productivity-software/batch-text-transformations.md) — Executes macros and commands across multiple active cursors to automate repetitive changes.

### User Interface & Experience

- [Multi-Cursor Management](https://awesome-repositories.com/f/user-interface-experience/multi-cursor-management.md) — Provides tools to add, remove, or skip specific occurrences of a pattern to refine the active cursor set. ([source](https://github.com/mg979/vim-visual-multi/blob/master/README.md))
- [Multiple Cursors](https://awesome-repositories.com/f/user-interface-experience/text-selection-control/multiple-cursors.md) — Simulates multiple active editing points by tracking coordinates outside the native editor state.
- [Regex-Based Selection](https://awesome-repositories.com/f/user-interface-experience/text-selection-control/regex-based-selection.md) — Uses regular expressions to identify and spawn multiple cursors across the document for batch editing.
- [Vertical Cursor Alignment](https://awesome-repositories.com/f/user-interface-experience/text-alignment/vertical-cursor-alignment.md) — Aligns cursors to a common column to reorganize or format text consistently across different lines.
- [Vertical Alignment](https://awesome-repositories.com/f/user-interface-experience/text-selection-control/multiple-cursors/vertical-alignment.md) — Aligns multiple cursors vertically to reorganize text and format content across different lines. ([source](https://github.com/mg979/vim-visual-multi#readme))

### DevOps & Infrastructure

- [Text Editor Batch Execution](https://awesome-repositories.com/f/devops-infrastructure/remote-command-execution/batch-command-executions/text-editor-batch-execution.md) — Processes editor commands by iterating through a queue of cursor positions for sequential buffer updates.
