Angenommen, ich habe eine super lange Zeile im VIM-Editor (z. B. mehr als 300 Zeichen). Wie würde ich das in mehrere Zeilen aufteilen, so dass die Wortgrenzen bei 80 Zeichen ungefähr brechen?
Beispiel:
This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line This is a really long line
zu
This is a really long line
This is a really long line
This is a really long line
This is a really long line
This is a really long line
This is a ...
gq
wäre der Befehl also<ESC>
(Verlassen des Einfüge- / Ersetzungs- / etc-Modus) und danngq80l
gqq
] aaaahhh, es ist wunderschönStellen Sie zuerst Ihr vim so ein, dass es versteht, dass Sie 80 Zeichen möchten:
dann hilight die Linie:
und vim neu formatieren lassen:
quelle
Dies hängt nicht wirklich mit VIM zusammen, aber Sie können das fmt- Programm wie in verwenden
quelle
Markieren Sie für durchgezogene Textlinien den Bereich mit v im normalen Modus und drücken Sie dann
Dadurch wird am Ende jedes 80. Zeichens eine neue Zeile hinzugefügt.
quelle
Wenn Sie auf * nix sind, haben Sie wahrscheinlich zur
fold
Verfügung.Wählen Sie die Region aus, die Sie verwenden möchten
v
, und brechen Sie dann Leerzeichen in der Breite 80 mit folgenden Elementen auf:!fold --spaces --width=80
Dies entspricht im Wesentlichen der Verwendung
gq
.Wenn Sie jedoch nur bei Zeichen 80 brechen und nicht auf Leerzeichen beschränkt sein möchten, können Sie Folgendes verwenden:
!fold --width=80
Wenn Sie es mit einem Tastendruck wollen, legen Sie einfach eine Zuordnung fest - ich habe verwendet
vmap <f1> !fold --width=80<CR>
quelle
Verwenden Sie Folgendes, um lange Zeilen im gesamten Dokument zu teilen, ohne bereits vorhandene Zeilenumbrüche zu entfernen:
quelle
Ich musste eine ganze Datei anstatt einer Zeile neu formatieren. Wie Wernsey betont, hätte ich 'fmt' verwenden können, aber die folgende Sequenz in vim hat auch den Trick getan (aus den verschiedenen Antworten hier entlehnt):
quelle
Versuchen Sie als schnelle und böse vielleicht die folgende Karte:
was sagt:
Wenn Sie dann q und CR drücken, wird die Linie an der Wortgrenze in Blöcke aufgeteilt.
quelle
Ich habe '\' (und dann CR / Tab zum Formatieren) manuell in jede LONGLINE nach dem letzten Leerzeichen, aber vor der Spalte 80 eingefügt. Das heißt:
sieht jetzt so aus
und kompiliert normal.
quelle