Я уже несколько лет использую vim в качестве вторичного редактора, но по разным причинам я все больше и больше использую его, даже когда доступен мой основной редактор. Одна проблема, которая всегда меня беспокоила vim
, и которая мешала мне больше ее использовать, - это способ, которым она обрабатывает размещение курсора. Курсор может быть только на символе, а не между символами, как это было бы в случае с любым редактором, созданным с 1984 года.
Только для одного примера того, почему это проблема, если я хочу удалить последнее слово в строке, я нажимаю, $
чтобы перейти к концу строки, а затем db
удалить назад. Это оставляет символ для удаления, потому $
что на самом деле он не дошел до конца строки, он перешел к последнему символу строки и db
удалил только то, что было до текущего символа. Проблема не в том, что мне нужно набирать дополнительный символ, а в том, чтобы делать то, что должно быть простым, требует дополнительной мысли, которая отвлекает мое внимание от того, что я на самом деле пытаюсь выполнить.
Мне кажется, что более современная идея размещения курсора во всех отношениях лучше, и я бы хотел перейти vim
на этот подход. Я уверен, что некоторые vim
фанаты не согласятся с моим мнением по этому поводу, но поскольку одним из стандартных аргументов в пользу vim
превосходства является его бесконечная конфигурируемость:
- это может доставить в этом случае?
- Можно
vim
ли разместить курсор между символами?
$bD
Insert
режим или отсутствует точкаnormal
режима. Я бы сделал$daw
или$bdw
удалить последнее слово в строке в обычном режиме. ВInsert
режиме я бы сделалA<Ctrl-w>
.