Live Substitution In Neovim

Waylon Walker - Jan 4 '21 - - Dev Community

Replacing text in vim can be quite frustrating especially since it doesn't have
live feedback to what is changing. Today I was watching Josh Branchaud's
Vim-Unalphabet series on Youtuve and realized that his vim was doing this and I
had to have it.

How to do it.

I had to do a bit of searching and found a great post from vimcasts that shows exactly how to get the live search and replace highlighting using inccomand

:h inccommand

'inccommand' 'icm'  string  (default "")
            global

    "nosplit": Shows the effects of a command incrementally, as you type.
    "split"  : Also shows partial off-screen results in a preview window.

    Works for |:substitute|, |:smagic|, |:snomagic|. |hl-Substitute|

    If the preview is too slow (exceeds 'redrawtime') then 'inccommand' is
    automatically disabled until |Command-line-mode| is done.

Enter fullscreen mode Exit fullscreen mode

Add this to your config

I believe that this is a neovim only feature, add it into your
~/.config/nvim/init.vim file. You can see it in my
dotfiles
as well.

set inccommand=nosplit
Enter fullscreen mode Exit fullscreen mode

See it in Action

example live<br>
substitution

The Video that inspired this

Check out Josh Branchaud's great series on the Vim-Unalphabet.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .