Я пишу свою диссертацию в VIM. Часто я понимаю, что хочу удалить первые несколько слов предложения и вместо того, чтобы написать другое открытие, просто использовать заглавные буквы в новом начале предложения. Было бы неплохо, если бы мне не приходилось переходить к началу следующего слова и вручную переключать заглавные буквы. (Обратите внимание, что это другая проблема, чем первая заглавная буква после предложения должна быть написана заглавными буквами.)

Как правило, когда я хочу это сделать, удаление происходит через d(elete) а не c(hange) . Но автокоманды vim, похоже, не делают различий между ними. Поскольку я использую d , я также не могу повесить это на InsertLeave .

Есть ли способ сделать это? Есть ли способ сделать это без определения отдельной команды удаления?

1 ответ1

1

Если вы делаете обычное удаление в обычном режиме с начала [предложения] с помощью [count]dw , ваш курсор уже будет на новом первом слове. Затем простой ~ переключит его дело. Я думаю, что это не может быть проще, чем это! Конечно, вы могли бы написать собственную команду (но обработка движения, например, d{motion} , не тривиальна для реализации), но вам, вероятно, придется сопоставить это с чем-то более длинным, чем одна клавиша, так что там ничего не выиграно.

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