Hallo,
Ich möchte gerne vim dazu bringen, in einer Datei den Zeilenumbruch bei 80 Zeichen zu setzen. Der Befehl dazu lautet:
:set tw=80
Nun möchte ich natürlich nicht jedes Mal den Befehl eintippen und dachte, eine der folgenden Varianten
# vim:tw=80: # vim:set tw=80:
evtl. auch ohne die Raute, sollte vim das beibringen, wenn ich die Datei mit
vim README.foo
öffne. Aber das funktioniert nicht. Ich erhalte keinen Zeilenumbruch nach 80 Zeichen. Leider finde ich aber, auch nachdem ich $Suchmaschine bemüht habe, keine Lösung. Evtl. würde ein
.vimrc " README* specific autocmd BufRead README* set tw=80 autocmd BufNewFile README* set tw=80
helfen. Aber ich hätte einfach gerne eine Lösung, bei der der Umbruch nur für die Datei gilt. Kann hier jemand helfen? Ein Hinweis auf die richtige Doku würde mir auch helfen.
MfG Daniel
Am Samstag, den 02.02.2008, 17:15 +0100 schrieb Johannes Lötzsch:
Nun möchte ich natürlich nicht jedes Mal den Befehl eintippen
echo "set tw=80" >> ~/.vimrc
Das wäre aber eine globale Option, was ich ja (eigentlich) nicht will. Ich will die Option nur für eine Datei (via Modeline) setzen.
Aber ich habe die Lösung gefunden. Debian schaltet den modeline-Modus automatisch ab. Ein beherztes
set modeline
in der .vimrc erlaubt mir am Ende der Datei die textwidth-Option zu setzen. Nunja, jetzt muss ich mich wohl damit auseinandersetzen, was mir mehr bzw. weniger Scherereien bereiten könnte oder wird: die möglichen Sicherheitslücken durch `set modeline' oder eine globale Option `tw=80'.
MfG Daniel
Daniel Leidert daniel.leidert.spam@gmx.net (Sa 02 Feb 2008 16:17:35 CET):
Hallo,
Ich möchte gerne vim dazu bringen, in einer Datei den Zeilenumbruch bei 80 Zeichen zu setzen. Der Befehl dazu lautet:
:set tw=80
Das gilt für die *Eingabe* von Text. Ich glaube verstanden zu haben, daß Du etwas brauchst, das einen beliebigen schon vorhandenen Text auf die angegebene Breite zwingt bei der Anzeige:
set columns=80
set wrap
ode set nowrap
und dann vielleicht set listchars+=extends:>
Wenn Du umformatieren möchtest, dann ist das mit "tw" korrekt und Du solltest man nach "equalprg" und "gq" in der VIM-Hilfe lesen.
Heiko
Am Samstag, den 02.02.2008, 18:09 +0100 schrieb Heiko Schlittermann:
Daniel Leidert daniel.leidert.spam@gmx.net (Sa 02 Feb 2008 16:17:35 CET):
Ich möchte gerne vim dazu bringen, in einer Datei den Zeilenumbruch bei 80 Zeichen zu setzen. Der Befehl dazu lautet:
:set tw=80
Das gilt für die *Eingabe* von Text. Ich glaube verstanden zu haben, daß Du etwas brauchst, das einen beliebigen schon vorhandenen Text auf die angegebene Breite zwingt bei der Anzeige:
Nein, ich wollte schon ersteres ;). Aber danke für den Tipp, ich schau mir mal die angesprochenen Hilfe-Seiten an.
MfG Daniel
Hallo,
dann der 2. Versuch:
Daniel Leidert daniel.leidert.spam@gmx.net (Sa 02 Feb 2008 16:17:35 CET):
Hallo,
Ich möchte gerne vim dazu bringen, in einer Datei den Zeilenumbruch bei 80 Zeichen zu setzen. Der Befehl dazu lautet:
:set tw=80
Nun möchte ich natürlich nicht jedes Mal den Befehl eintippen und dachte, eine der folgenden Varianten
# vim:tw=80: # vim:set tw=80:
vim README.foo
Wenn in der README.foo eine dieser Zeilen in der Nähe des Anfangs oder Endes stehen *und*
set modeline set modelines=<NUMBER>
irgendwo in der /etc/vimrc oder ~/.vimrc steht oder einkompiliert ist.
Am Samstag, den 02.02.2008, 18:43 +0100 schrieb Heiko Schlittermann:
[automatischer Zeilenumbruch bei der Eingabe in vim]
Wenn in der README.foo eine dieser Zeilen in der Nähe des Anfangs oder Endes stehen *und*
set modeline set modelines=<NUMBER>
irgendwo in der /etc/vimrc oder ~/.vimrc steht oder einkompiliert ist.
Ich habe es schon gefunden (siehe meine Antwort auf die Mail von Johannes Lötzsch; Debian schaltet Modelines in der debian.vim aus). Allerdings scheint es so, dass ein
set modeline
entgegen der Doku nur Modelines am Ende der Datei zulässt. Am Anfang der Datei hatte die Modeline keinerlei Auswirkungen. Ans Ende gesetzt, führte sie zu dem gewünschten Ergebnis.
MfG Daniel
lug-dd@mailman.schlittermann.de