[linux-l] Re: vim - expansions of abbreviations

olafBuddenhagen at gmx.net olafBuddenhagen at gmx.net
Sa Jan 27 15:02:47 CET 2007


Hallo,

On Thu, Jan 25, 2007 at 05:16:38PM +0100, Norman Steinbach wrote:
> Sven Guckes wrote:

> >> Warum ist bei mir mit dem entsprechenden Befehl (":set
> >> tw=72";"gggqG") in der Datei Text gelöscht worden
[...]
> bereits vorhandene Umbrüche (aus welchen die bisherige Formatierung
> des dokuments weitesgehend bestand) sind vernichtet worden,

Also wurde kein Text gelöscht, sondern Whitespace. Das doch ein wenig
was anderes.

> Ich glaube, ich habe mich ursprünglich evtl nicht exakt genug
> ausgedrückt: Mein Anliegen war eigentlich eher, bei allen Zeilen, die
> >72 Zeichen sind, alle Zeichen ab #73 in eine neue Zeile darunter
> umzubrechen, und sämtliche anderen Umbrüche (bei <=72 Zeichen)
> unangetastet so stehen zu lassen, ebenso wie sämtliche Leerzeichen und
> andere derartige Dinge, mit denen Plain-Text formatiert werden kann.

Wieso willst Du das überhaupt mit dem Editor machen? Klingt eher nach
'ner Aufgabe für ein externes tool, zum Beispiel sed:

   sed 's/\(.\{72\}\)\(.\)/\1\n\2/;P;D'

(Ich nehme an dass es auch einfacher gehen muss, aber irgendwie fällt
mir gerade nichts ein...)

Kannst Du auch direkt aus vim heraus machen:

   :%!sed 's/\(.\{72\}\)\(.\)/\1\n\2/;P;D'

(Oder statt % was Anderes, wenn Du nicht die ganze Datei filtern
willst.)

-Olaf-



Mehr Informationen über die Mailingliste linux-l