Как добавить новую строку с таким же отступом

33

Затем я нажимаю Enterв режиме вставки, создается новая строка, но курсор находится в начале строки.

Как мне создать новую строку с таким же отступом, что и у текущей?

Валя
источник
2
и вот как Google приводит меня сюда.
до

Ответы:

38

Добавление set autoindent к вашему ~ / .vimrc может сделать это для вас автоматически.

Brice
источник
Благодарность! не было .vimrc, можно ли создавать новый?
валя
да, под вашим домашним каталогом.
Джон Т
7

Я бы также предложил добавить это к вашему .vimrc:

set smartindent

Это увеличит отступ в новом блоке.

Натан Феллман
источник
5

Оба будут раздражать вас при вставке, поскольку Vim постарается сделать отступ на лету.

Перед вставкой введите:

:set paste
Romant
источник
Это верно в терминале. Если вы используете gvim, вам это не нужно.
Натан Феллман
В сложных ситуациях (виртуальные машины, удаленные рабочие столы, ...) даже gvimне будет доступа к буферу обмена. С другой стороны, vimлокальный запуск будет иметь доступ к буферу обмена и vimможет быть вставлен правильно, если вы используете "*pили "+p. Иногда vimи :set pasteи «тупое» вставление необработанных в терминал являются единственной возможностью.
Аарон МакДейд
0

В нижней части файла я использую:

# vim: ts=2 sw=2 sts=2 sr noet st ai si

Например Dockerfile:

FROM centos-7
RUN ...
CMD ...

# vim: ts=2 sw=2 sts=2 sr noet st ai si

Если вы хотите сохранить только отступ, используйте # vim: st ai si

Эдуардо Куомо
источник