Мне действительно нравится incsearch
функциональность Vim . Есть ли способ, чтобы он или что-то подобное работало, пока я делаю замену?
Например, если в обычном режиме я набираю:
:%s/potato/
Могу ли я potato
выделить все s в моем файле так же, как они выделены incsearch
при написании
/potato
?
Это уже очень помогло бы мне при использовании регулярных выражений. Очень, очень хорошо иметь, когда я напишу это:
:%s/potato/banana/
Он заменит potato
s на banana
s и выделит их - возможно, замены должны быть другого цвета. Он не может «зафиксировать» изменения, пока я не нажму клавишу ввода).
Я использую neovim на данный момент, на случай, если это поможет.
incsearch
?hlsearch
должно работать ootb, если я наберу текст:%s/potato/\0/
для заменыpotato
на себя, то я увижу все совпадения подсвеченными.:/pattern<CR>
работает нормально, затем добавьте% s и строку замены. Thene снова, так что уточняет поиск и использует CTR-R / для вставки в поисковую часть:%s/
:%s/potato/carrot/c
позволит вам перейти («подтвердить») через ваши замены (добавить,g
чтобы заменить все экземпляры в одной строке), иhlsearch
вы увидите их заранее.Ответы:
После небольшого поиска я нашел эту проблему NeoVim , которая, в свою очередь, была закрыта этим пиаром , который привел меня к
inccommand
настройке. Добавив это в мой конфигурационный файл:заставляет NeoVim вести себя почти так, как я и просил в своем вопросе. Я не нашел что-то эквивалентное для обычного Vim, но я не смотрел на это очень энергично.
источник
incsearch
в subtitutions (будучи ленивый Vimmer и медленно принять нео вещи) , я бы , вероятно , искать картофель (/potato
) пользуется обычным инкрементным поиском highlighighting, а затем заменить пустой поиск:%s//banana
. Но я не знаю, как это соотносится сset inccommand=nosplit
другими аспектами.inccommand
настолько понравились настройки, что я сделал asciinema, показывая его на работе, на случай, если он побудит вас попробовать neovim