A Neovim plugin providing new operator motions for quick text substitution and exchange.
substitute.nvim is a Neovim plugin that provides new operator motions for quickly replacing and exchanging text within the editor. It allows users to substitute text objects with yanked content, apply substitutions across ranges, and swap text between locations, streamlining common editing tasks.
Neovim users who frequently perform text substitutions and exchanges, particularly those familiar with Vim plugins like vim-subversive or vim-exchange seeking a Lua-based alternative.
Developers choose substitute.nvim for its Lua implementation, which aims to be more maintainable and efficient than older VimScript plugins, while offering powerful, dot-repeatable operations and seamless integration with other Neovim plugins.
Neovim plugin introducing a new operators motions to quickly replace and exchange text.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Rewritten in Lua for improved maintainability and efficiency over VimScript alternatives like vim-subversive, as stated in the README's philosophy section.
Both substitute and exchange operators support the dot command, allowing quick repetition of edits without re-invoking motions, enhancing editing speed.
Includes built-in modifiers like reindenting, trimming, and joining lines, enabling context-aware substitutions directly during operations without extra steps.
Designed to work with plugins like yanky.nvim and vim-abolish, offering enhanced yank management and substitution capabilities through configurable hooks.
The plugin provides no default mappings, forcing users to manually set up keybindings, which adds setup overhead and potential for configuration errors.
Recommended mappings often use 's', which shadows Neovim's native change character, requiring users to adapt or remap other keys like 'cl' for basic edits.
Requires Neovim >= 0.8.0, locking out users on older versions or other editors like Vim, with only a limited compatibility branch for Neovim 0.6.0.
Advanced features like range substitutions and modifiers involve numerous options that can be overwhelming to tune, especially for casual users.