72 Stimmen

Vim stoppt den Zeilenumbruch in der Mitte eines Wortes

Nach der Durchführung :set wrap Vim bricht Zeilen um, die länger als das Fenster sind.

Aber ist es möglich, dass Vim nur bei Leerzeichen in eine neue Zeile umbricht und nicht in der Mitte eines Wortes?

89voto

Cat Plus Plus Punkte 119072

:help wrap

Mit dieser Option können Sie die Art der Textanzeige ändern. Sie verändert nicht den Text im Puffer, siehe dazu 'textwidth'. Wenn sie aktiviert ist, werden Zeilen, die länger als die Breite des Fensters sind, umbrochen und die Anzeige wird in der nächsten Zeile fortgesetzt. Wenn ausgeschaltet, werden die Zeilen nicht umgebrochen und nur ein Teil der langen Zeilen wird angezeigt. Wenn der Cursor auf einen nicht angezeigten Teil bewegt wird, rollt der Bildschirm horizontal. Die Zeile wird ggf. in der Mitte eines Wortes unterbrochen. S 'Zeilenumbruch', um den Umbruch an einer Wortgrenze zu erhalten.

:help linebreak

Wenn eingeschaltet, bricht Vim lange Zeilen an einem Zeichen um um und nicht am letzten Zeichen, das auf den Bildschirm passt.

:help breakat

breakat' 'brk' string (Standard " ^I!@*-+;:,./?" )

Also, :set linebreak und es sollte ohne Probleme funktionieren. Oder Sie können einschränken breakat um nur bei Leerzeichen zu unterbrechen, anstatt bei Leerzeichen+Zeichen.

24voto

sidyll Punkte 55286

Verwenden Sie

:set linebreak

Oder 'lbr' kurz gesagt. Es bricht Zeilen bei Zeichen um, die in Ihrem 'breakat' die standardmäßig ein Leerzeichen enthält.

4voto

bluesman Punkte 2184

Wenn vim geöffnet ist, drücken Sie esc und geben Sie ein

:set lbr

2voto

Stryker Punkte 5104

Im Folgenden wird ein Zeilenumbruch vorgenommen, ohne dass Wörter umbrochen werden und die kürzeren Zeilen erhalten bleiben.

:set formatoptions+=w
:set tw=80
gggqG

Um zu versuchen, den aktuellen Absatz zu formatieren, versuchen Sie Folgendes:

:nnoremap Q gqip

1voto

user127440 Punkte 11

Die folgenden Befehle funktionieren bei mir, und ich verwende Red Hat 7.x bei der Arbeit und Cygwin 3.1.4 zu Hause. Das Ausrufezeichen wirkt wie ein Not-Operator.

:set wrap
:set wrap!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X