Vim предоставляет множество способов перемещения по документам, а также переходов между буферами. В этой статье мы сосредоточимся на некоторых полезных трюках, которые еще больше улучшат вашу скорость.
Работа с поиском движения
Например. в приведенном ниже предложении, если мы хотим удалить слова, выделенные жирным шрифтом. Помимо использования f{char} или t{char}, другим более простым вариантом является использование поискового движения.
The task takes a lot of time but at the end is still completed on time. ^ - cursor here
Введите d/is‹CR›, и он станет
The task is still completed on time. ^ - cursor here
Чтобы расширить это, вы можете использовать vim-sneak, который позволяет вам прыгать или работать в любом месте с 2 персонажами.
E.g.
This qt is qt qt is a test. ^ - cursor here
Введите 2dzis, и он станет
This is a test. ^ - cursor here
Вы также можете использовать это с другими модификаторами, например. «v» для выбора или «c» для изменения слов.
Выполнение операций с текстовыми объектами
Это должно показаться знакомым любому пользователю Vim.
print("hello world") ^ - cursor
Введите ci”, после чего вы сможете изменить слова в двойных кавычках, даже если позиция вашего курсора не находится внутри “”
Однако это не будет работать в следующих случаях, если ваш курсор не находится внутри скобок или квадратных скобок.
This is a line with {braces} ^ - cursor here This is a line with [brackets] ^ - cursor here This is a line with <angle brackets> ^ - cursor here
Вот targets.vim. Targets.vim добавляет различные текстовые объекты, чтобы дать вам больше целей для работы. После установки ci{, ci[, ci‹ должны работать корректно для описанных выше сценариев.
Кроме того, вы можете использовать «cin‹text-object›», чтобы выбрать следующие пары.
E.g.
This is line 1 ^ - cursor here This is line 2 with {braces}
Введите cinB или cin{. Теперь вы можете изменить слова в {}
This is line 1 This is line 2 with { } ^ - cursor here
Я надеюсь, что эти приемы помогут всем пользователям Vim.
Также ознакомьтесь со следующими статьями.
Если вы еще не являетесь участником Medium и хотите им стать, нажмите здесь. (Часть вашей абонентской платы будет использована для поддержки alpha2phi.)