В обычном режиме я могу нажать Ctrl
+, E
который удаляет остальную часть текущего слова и переходит в режим вставки.
Я хочу удалить все слово, независимо от положения курсора (конечно, внутри слова).
Ответы:
Вы можете использовать «изменить внутреннее слово», набрав «ciw», чтобы удалить слово, на котором находится курсор.
Команды "inner" и "a" отлично подходят для Vim, попробуйте также "ci {" внутри блока {} или "ca {", если вы также хотите удалить символы {}. Чтобы перевести эти команды на английский язык, чтобы лучше их запомнить, попробуйте: "изменить внутренний {блок" и "изменить {блок".
Документация на http://vimdoc.sourceforge.net/htmldoc/motion.html#text-objects
ciw
и caw
не совсем то же самое: ciw
удаляет только слово, также caw
удаляет конечный пробел.
Ответьте на ваш дополнительный вопрос: viwp
v -> start visual mode
iw -> select the 'inner word'
p -> paste - in visual mode it replaces the visually selected text.
:%s/a/b/g
. a
может быть точным текстом или регулярным выражением, и b
это то, чем вы замените все совпадения a
. Вы можете тестировать регулярные выражения в /
режиме vim . Замените %
номером строки или диапазоном, если вы не хотите заменять на всех строках.
По второму вопросу: bPldw
Это по порядку перенесет вас в начало текущего слова, вставит регистр по умолчанию перед курсором, перейдет к следующему символу (пройдя мимо конца только что вставленного текста) и удалит остальную часть слово.
bPlde
.
viwp
По первому вопросу bcw
тоже работаю. Это означает « b
в начале слова, c
изменить w
порядок». Но я думаю , что ciw
это более запоминающееся, что означает « c
висящий i
nner w
ог», всего лишь один шаг.
На второй вопрос о «замене пастой» я могу ответить "_diwP
. Он d
выбирает регистр, который вам не нужен, и i
сохраняет содержимое регистра по умолчанию. Преимущество состоит в том, что вы можете вставлять регистр по умолчанию много раз, потому что он не будет загрязнен. Это небольшой комплекс, поэтому я отображаю его как .w
p
nnoremap ,r "_diwP
Или вы могли бы использовать последовательность клавиш bdwi
для удаления текущего слова и перехода в режим INSERT.
bcw
для перехода к началу текущего слова, а затем изменить слово, после чего вы перейдете в режим вставки.
dwi
. Только будьте осторожны, чтобы копы не заметили, поскольку DWI незаконен в большинстве штатов.