vim Textbreite neu formatieren

8

Ich möchte meine Datei so formatieren, dass die maximale Zeilenbreite 79 ist. Ich habe :set tw=79 und gggqG und die Ergebnisse waren nicht das, was ich erwartet habe. Wenn eine Zeile weniger als 79 Zeichen enthält, werden Zeichen aus der darunter liegenden Zeile nach oben verschoben und Zeilen mit mehr als 79 Zeichen werden nicht in zwei Zeilen aufgeteilt.

edit: Nun, ich habe mich getäuscht, dass es Zeilen über 79 bricht, außer in der Zeile mit Sternchen.

%Vor%

Außerdem werden Zeichen immer dann nach oben verschoben, wenn die Zeile & lt; 79.

hat     
deadghost 11.01.2012, 13:11
quelle

2 Antworten

7

Eine mögliche Lösung, obwohl nicht die beste.

Definieren Sie formatexpr und lassen Sie das externe Programm fold Ihren Text auf 79 Zeichen Breite formatieren.

%Vor%

Und jetzt:

%Vor%

Und zuletzt entfernen Sie diese Zeilenumbrüche (^ M):

%Vor%

In meinem Test hat es einige akzentuierte Zeichen geändert und einige andere Zeilen wurden gemangelt, aber probier es selbst aus. Sonst kannst du deine eigene Formatfunktion schreiben und sie mit formatexpr option verwenden.

    
Birei 11.01.2012, 14:34
quelle
1

Leere Zeile zwischen verschiedenen Absätzen einfügen. Dann mach das Neuformatieren.

    
kev 11.01.2012 13:16
quelle

Tags und Links