Gibt es bei Verwendung von vim einen Befehl zum automatischen Einfügen von Text in Zeilenumbruch?

8

CONTEXT : Teil eines Jobs, den ich gerade mache, besteht darin, Textabschnitte aus einem Word-Dokument in eine Ruby-Datei einzufügen.

PROBLEM : Diese Absätze werden als einzelne sehr lange Textzeile eingefügt und ich muss manuell Zeilenumbrüche einfügen, um die Zeilen von angemessener Länge zu erstellen.

LÖSUNG Gibt es eine Möglichkeit, die Pasting-Funktion vernünftiger Randbereiche bewusst zu machen und den Text beim Einfügen einzufügen?

    
steve_gallagher 11.10.2012, 14:26
quelle

4 Antworten

12

Setze zuerst eine festgelegte Textbreite

%Vor%

dann gqq - für eine einzelne Zeile

für die gesamte Datei

%Vor%     
srini.venigalla 11.10.2012, 14:38
quelle
4

Sicher kannst du das mit:

:set wrap

Dadurch wird der Text als umgebrochen dargestellt, ohne die zugrunde liegende Struktur zu verändern oder Zeilenumbrüche einzufügen. Manchmal ist es auch hilfreich:

:set linebreak

Dies bewirkt, dass vim umbrochen wird, ohne Wörter zu unterbrechen.

Es ist auch möglich:

:set wrapmargin

Legt fest, wie weit der richtige Umbruch beginnen soll.

    
Benj 11.10.2012 14:27
quelle
4

vi, vim und gvim unterstützen die Befehle der 'ex' Ebene:

%Vor%

legt einen Zeilenumbruch von 10 Zeichen vom rechten Rand fest und erzwingt einen "Zeilenumbruch" - automatisches Umbrechen während der Eingabe. Dies funktioniert jedoch nicht beim Einfügen von Text. Dafür gibt es den Befehl 'fmt', der nativ für Unix / Linux ist und auf Cygwin und GnuWin32 bereitgestellt wird (siehe Wie bekomme ich fmt-ähnliche Funktionalität für Vim in Windows? ).

Der Befehl "fmt" bietet einen Filter zum Neuformatieren von vorhandenem Text mit Wortumbrüchen und akzeptiert ein numerisches Flag (z. B. "-80"), um die Zeilenbreite anzugeben. Sie können dies im vim-Editor nach dem Einfügen in die langen Zeilen aufrufen.

Sie tun:

%Vor%

um eine lange Zeile neu zu formatieren (Tastaturkürzel für ex-Befehl ":.! fmt")

Oder um einen ganzen Absatz umzuschreiben:

%Vor%

aus der ersten Zeile des Absatzes.

Dies sollte Ihnen etwas Zeit sparen.

    
blackcatweb 11.10.2012 15:02
quelle
3

Normalerweise muss ich Text importieren und dann das gesamte Dokument umbrechen: Ich benutze:

:g/./normal gqq

Ich hoffe, das hilft.

    
user2093625 21.02.2013 01:37
quelle

Tags und Links