1

Я хотел бы заменить слово на месте. Например, после того, как я нажал на какое-то слово, нажав yw, а затем установил курсор на какое-то другое слово, я бы хотел нажать что-нибудь, чтобы произошла замена. (Например, SOME_KEYw, где w - это действительно w, а SOME_KEY - это ключ). Я не хотел бы переключаться в режим вставки.

Меня не интересует решение :%s/oldword/newword/gc . Мне нужна интерактивная замена на месте!

3 ответа3

7

То, что вы ищете, описано в Vim Tip 605.

Если вы дергаете первое слово с помощью yiw, вы можете заменить другое слово первым, набрав viwp.

Если вы пропустите i, yw также вырвет пробел после вашего слова, и при вставке вы получите слишком много пробелов. Поэтому использовать I для выбора я nner слова.

3

Я верю, что вы хотите cw <CTRL-R> 0

Это должно быть напечатано как c w ctrl+r 0.

1

Опираясь на ответ INNAM, с более коротким вкладом:

Сначала скопируйте первое слово с вами.

Затем замените любое другое слово этим ранее скопированным словом на vep.

Движение e движется вперед до конца слова [число] включительно. Не останавливается на пустой строке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .