So fügen Sie eine neue Zeile mit demselben Einzug hinzu

33

Dann drücke ich Enterim Einfügemodus, eine neue Zeile wird erstellt, aber der Cursor steht am Anfang der Zeile.

Wie erstelle ich eine neue Zeile mit demselben Einzug wie die aktuelle?

valya
quelle
2
und so führt mich google hierher.
Am

Antworten:

38

Das Hinzufügen set autoindent zu Ihrem ~ / .vimrc kann das für Sie automatisch tun.

brice
quelle
Vielen Dank! Es gab keine .vimrc, ist es in Ordnung, eine neue zu erstellen?
Valya
Ja, in Ihrem Home-Verzeichnis.
John T
7

Ich würde auch vorschlagen, dies zu Ihrer .vimrc hinzuzufügen:

set smartindent

Der Einzug in einen neuen Block wird vergrößert.

Nathan Fellman
quelle
5

Beides wird Sie beim Einfügen stören, da Vim versucht, alles spontan einzurücken.

Vor dem Einfügen geben Sie ein:

:set paste
romantisch
quelle
Dies gilt im Terminal. Wenn Sie gvim verwenden, sollten Sie dies nicht benötigen.
Nathan Fellman
In komplexen Situationen (virtuelle Maschinen, Remote-Desktops, ...) haben Sie sogar gvimkeinen Zugriff auf die Zwischenablage. Auf der anderen Seite hat die vimlokale Ausführung Zugriff auf die Zwischenablage und vimkann ordnungsgemäß eingefügt werden, wenn Sie "*poder verwenden "+p. Manchmal ist vimund :set pasteund 'dummes' Einfügen von Rohdaten auf das Terminal die einzige Option.
Aaron McDaid
0

Am Ende der Datei verwende ich:

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

Zum Beispiel Dockerfile:

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

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

Wenn Sie nur den Einzug behalten möchten, verwenden Sie # vim: st ai si

Eduardo Cuomo
quelle