Я также некоторое время использовал dahu / vim-fanfingtastic и нашел его очень полезным. Он поддерживает семантические повторы .
благодаря библиотеке tpope / repeat.vim, которую вы также должны установить.
Альтернатива - крисбра / улучшенный фут, который делает более или менее то же самое.
В rhysd / clever-f.vim есть возможность включить многострочный поиск, хотя его основной функцией является возможность f
повторения текущего поиска, как ;
это уже делается.
Все те ручки ;
и ,
ключи, как и ожидалось.
Недостаток с многострочно f
и в t
том , что если вы попали в неправильный ключ, то будет снято с текущей строкой , чтобы где - то неожиданный в файле. Ctrl-Oможет помочь в такие моменты. (Это может быть опасно с c
изменением, если вы не понимаете, что вы только что проглотили несколько строк, но это были только проблемы с зубами для меня.)
Существуют и другие связанные плагины с немного отличающимися подходами, такие как justinmk / vim-sneak и goldfeld / vim-seek, которые запрашивают два символа , облегчая (но все еще не гарантируя) попадание в целевое местоположение.
И тогда есть easymotion / vim-easymotion . Это предлагает множество мощных клавиш управления движением , некоторые из которых требуют дополнительного нажатия одной или двух клавиш для подтверждения целевого символа, когда есть много кандидатов.
Но в настоящее время я использую решение для дома. Я работал с автором EasyMotion, чтобы создать f
и t
прошить маркеры подсчета для всех соответствующих персонажей перед вами.
Это действует как естественный помощник для движений vanilla vim. Когда вы пытаетесь двигаться куда-то, fx
но потом обнаруживаете, что x
на пути больше s, чем вы думали, вы можете прочитать число, которое вспыхнуло над персонажем, к которому вы стремитесь, и затем сделать [count];
прыжок туда.
Вы можете найти ветку здесь . Обязательно прочитайте раздел Добавить полезные советы, чтобы настроить сопоставления клавиш.
Однако для c
операций изменения все же предпочтительнее сделать это правильно с первого раза . В этих случаях я рекомендую провести дополнительное нажатие клавиши в v
визуальном режиме или использовать один из гарантированных переходов EasyMotion.
d/a
чтобы удалить к следующемуa
иc/.
удалить к следующему.
. Если вы используетеhlsearch
и не хотите этого при выполнении этой операции, вы можете создать отображение, которое выполняет вашуd/
операцию, а затем отключает выделение (заканчивается на:nohlsearch
).