Jak dodać nową linię z tym samym wcięciem

33

Następnie wciskam Enterw trybie Wstawianie, tworzona jest nowa linia, ale kursor jest umieszczany na początku linii.

Jak utworzyć nową linię z takim samym wcięciem jak bieżąca?

valya
źródło
2
i tak go tutaj zabiera Google.
holuj

Odpowiedzi:

38

Dodanie set autoindent do ~ / .vimrc może zrobić to automatycznie.

brice
źródło
dzięki! nie było pliku .vimrc, czy można utworzyć nowy?
valya
tak, w twoim katalogu domowym.
John T
7

Sugeruję również dodanie tego do twojego .vimrc:

set smartindent

Zwiększy wcięcie w nowym bloku.

Nathan Fellman
źródło
5

Obaj będą cię denerwować podczas wklejania, ponieważ Vim spróbuje wciąć wszystko w locie.

Przed wklejeniem wprowadź:

:set paste
romant
źródło
Dotyczy to terminala. Jeśli używasz gvima, nie powinieneś tego potrzebować.
Nathan Fellman
W skomplikowanych sytuacjach (maszyny wirtualne, pulpity zdalne, ...) nawet gvimnie będzie miał dostępu do schowka. Z drugiej strony, uruchamianie vimlokalne będzie miało dostęp do schowka i vimmożna je poprawnie wkleić, jeśli używasz "*plub "+p. Czasami vimi :set paste„głupie” wklejanie surowego do terminala to jedyna opcja.
Aaron McDaid,
0

Na dole pliku używam:

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

Na przykład Dockerfile:

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

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

Jeśli chcesz zachować tylko wcięcie, użyj # vim: st ai si

Eduardo Cuomo
źródło