Я понимаю, что "команда" для стирания буквы - это x, но если вы серьезно просто стираете, как 3-5 букв, действительно ли вообще полезно нажимать ESC + hhhhh + xxxxx
?
В vim, есть ли причина, по которой мы не можем использовать возврат?
Я понимаю, что "команда" для стирания буквы - это x, но если вы серьезно просто стираете, как 3-5 букв, действительно ли вообще полезно нажимать ESC + hhhhh + xxxxx
?
В vim, есть ли причина, по которой мы не можем использовать возврат?
Поскольку ваша последовательность печатания начинается с <Esc>
я предполагаю, что вы находитесь в режиме вставки , верно? Если это так, вы можете <C-w>
чтобы удалить слово слева от курсора, не выходя из режима вставки .
Нажатие на <bs>
работает и в режиме вставки для отдельных символов, и вам не нужно выходить из него, если вам нужно удалить только несколько символов, которые вы только что набрали.
x
- это команда «стереть букву в обычном режиме», но она работает только одна (x
) или с количеством (5x
), то же самое для X
Есть много ситуаций, когда вам нужно воздействовать на целое слово или два, или что находится между парой скобок, или до определенного шаблона вперед, или до и включая конкретную букву назад ... В таких ситуациях вам следует использовать d
в комбинации с движениями.
В командном режиме Backspace используется для перемещения курсора влево. Если вы хотите использовать его как положено, используйте следующую команду в командном режиме:
:nnoremap <bs> X
Добавьте его в свой файл .vimrc
если хотите постоянное изменение.
Вместо ESC hhhhh xxxxx
, попробуйте d5h
.
Вы можете использовать предложенное Сачином Шехаром картирование или сделать это "по пути Ви", но, на мой взгляд, есть лучший способ:
Настройка управляет тем, как ключ работает Backspace backspace
Помещение этого в ваш .vimrc заставляет ключ Backspace работать так, как ожидает большинство людей:
set backspace=indent,eol,start
Do :h 'backspace
для получения дополнительной информации.