есть ли способ вставить новую строку выше текущей, не открывая ее (не входя в режим вставки)? То есть вроде «О», но без открывания.
есть ли способ вставить новую строку выше текущей, не открывая ее (не входя в режим вставки)? То есть вроде «О», но без открывания.
Ответы:
Я использую плагин Тима Поупа unimpared, который имеет команду специально для этой цели:
[<space>
И если вы хотите добавить пробел после строки, на которой вы находитесь:
]<space>
Определение вашего запроса O
.
Логично при вставке новой строки выше было бы O
.
Чтобы вставить перед курсором: i
После: a
Перед строкой (домой): I
Добавить в конце строки:A
Самое близкое, я думаю, вы придете, I
который поместит курсор в начало строки.
m`O+Esc`
:h append()
Он не будет перемещать курсор, он позволит вам вставить столько строк (пустых или нет), сколько вы пожелаете, и не изменит предыдущую метку позиции.
call append(line('.')-1, '')
formatoptions
Вы можете отобразить любую клавишу или последовательность клавиш, которая вам нравится
m`O<ESC>``
это вставит пустую строку над текущей, сохраняя вас в обычном режиме и без изменения позиции курсора.