Ответ 1
Попробуйте вернуться в обычный режим и введите S
Скажем, у меня есть текущий текст в буфере, где _
отмечает курсор
int main(int argc, char **argv) {
printf("Hello, world!\n");
_
}
У меня есть indentexpr
on (хотя, вероятно, будет работать и решение с cindent
или autoindent
).
Как начать вставку, чтобы мой курсор помещался в соответствующий столбец, чтобы следовать правилам отступа, т.е.:
int main(int argc, char **argv) {
printf("Hello, world!\n");
_
}
В настоящее время я часто использую ddO
(или ddO
в конце буфера), но, похоже, должен быть лучший способ. Использование ==
или даже >>
или v>
не работает, потому что строка пуста.
Попробуйте вернуться в обычный режим и введите S
Если я на пустой строке, но с неправильной точкой вставки, я обычно использую CTRL-f
(в режиме вставки) для отступа в нужное место.
Это полезно, когда я нажал ESC
, чтобы выйти из режима вставки, а затем потерял правильный отступ. Нажатие i
, за которым следует CTRL-f
делает трюк.