Vim: Zeilenende anzeigen
Servus zusammen, wie kann ich denn dem Vim sagen, daß er mir ein Zeilenende anzeigen soll? :set list kenne ich. Doch da sehe ich nur, wo ein Zeilenende ist, nicht aber, woraus es besteht, d.h. also <lf> oder <cr><lf>. Kann man sich das irgendwie anzeigen lassen? Danke+Gruß! -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hi Andre! On Fr, 29 Okt 2010, Andre Tann wrote:
wie kann ich denn dem Vim sagen, daß er mir ein Zeilenende anzeigen soll? :set list kenne ich. Doch da sehe ich nur, wo ein Zeilenende ist, nicht aber, woraus es besteht, d.h. also <lf> oder <cr><lf>.
Nicht direkt. Nachdem eine Datei geladen wurde, speichert Vim die Zeilenenden als \r. \n dagegen repräsentiert NUL-Bytes. Welche Zeilenendezeichen letztendlich gespeichert werden, bestimmt die Einstellung 'fileformat', bzw. kann man das explizit beim speichern noch einmal festlegen. :w ++ff=dos schreibt \r\n Zeilenendezeichen. Beim Einlesen einer Datei bestimmt Vim anhand der Einstellung 'fileformats' (plural) welche Formate Vim erkennt und auf welchen Wert 'fileformat' gesetzt wird. Das aktuelle Fileformat kannst Du Dir aber z.B. über die Statusleiste anzeigen lassen. Ich benutze beispielsweise das hier: #v+ if has("statusline") set statusline= set statusline+=%-3.3n\ " buffer number set statusline+=%f\ " file name set statusline+=%h%m%r%w " flags set statusline+=\[%{strlen(&ft)?&ft:'none'}, " filetype set statusline+=%{(&fenc==\"\"?&enc:&fenc)}, set statusline+=%{&fileformat} " file format set statusline+=%{(&bomb?\",BOM\":\"\")}] " BOM set statusline+=%= " right align "set statusline+=0x%-8B\ " current char set statusline+=%-10.(%l,%c%V%)\ %p%% " offset endif #v- Unabhängig davon, wenn Vim das Fileformat nicht erkennen kann, weil z.B. in der Datei sowohl \r\n und \n Zeilenendezeichen vorhanden sind, wird er Dir diese Zeilen auch anzeigen (entweder mit einem ^M oder ^J als Zeilenendezeichen, je nachdem was dort ist) und es gibt auch eine Fehlermeldung, wenn ich mich recht entsinne. Mit freundlichen Grüßen Christian -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Servus Christian, Christian Brabandt, Freitag 29 Oktober 2010:
Nicht direkt. Nachdem eine Datei geladen wurde, speichert Vim die Zeilenenden als \r. \n dagegen repräsentiert NUL-Bytes. Welche Zeilenendezeichen letztendlich gespeichert werden, bestimmt die Einstellung 'fileformat', bzw. kann man das explizit beim speichern noch einmal festlegen. :w ++ff=dos schreibt \r\n Zeilenendezeichen. Beim Einlesen einer Datei bestimmt Vim anhand der Einstellung 'fileformats' (plural) welche Formate Vim erkennt und auf welchen Wert 'fileformat' gesetzt wird.
OK.
Das aktuelle Fileformat kannst Du Dir aber z.B. über die Statusleiste anzeigen lassen. Ich benutze beispielsweise das hier:
#v+ if has("statusline") set statusline= set statusline+=%-3.3n\ " buffer number set statusline+=%f\ " file name set statusline+=%h%m%r%w " flags set statusline+=\[%{strlen(&ft)?&ft:'none'}, " filetype set statusline+=%{(&fenc==\"\"?&enc:&fenc)}, set statusline+=%{&fileformat} " file format set statusline+=%{(&bomb?\",BOM\":\"\")}] " BOM set statusline+=%= " right align "set statusline+=0x%-8B\ " current char set statusline+=%-10.(%l,%c%V%)\ %p%% " offset endif #v-
Ist das ein Ausschnitt aus der vimrc? Da meckert der Vim bei mir schon mal über #v+ und #v-, und außerdem ändert sich auch an der Statusleiste nichts.
Unabhängig davon, wenn Vim das Fileformat nicht erkennen kann, weil z.B. in der Datei sowohl \r\n und \n Zeilenendezeichen vorhanden sind, wird er Dir diese Zeilen auch anzeigen (entweder mit einem ^M oder ^J als Zeilenendezeichen, je nachdem was dort ist) und es gibt auch eine Fehlermeldung, wenn ich mich recht entsinne.
OK, solche Fälle kenne ich auch. Es ging mir mehr um die Fälle, die Du oben beschreibst. Wenn die Statusleiste das Format anzeigen würde, wäre ich schon zufrieden. Danke+Gruß! -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hi Andre! On Fr, 29 Okt 2010, Andre Tann wrote:
#v+ if has("statusline") set statusline= set statusline+=%-3.3n\ " buffer number set statusline+=%f\ " file name set statusline+=%h%m%r%w " flags set statusline+=\[%{strlen(&ft)?&ft:'none'}, " filetype set statusline+=%{(&fenc==\"\"?&enc:&fenc)}, set statusline+=%{&fileformat} " file format set statusline+=%{(&bomb?\",BOM\":\"\")}] " BOM set statusline+=%= " right align "set statusline+=0x%-8B\ " current char set statusline+=%-10.(%l,%c%V%)\ %p%% " offset endif #v-
Ist das ein Ausschnitt aus der vimrc? Da meckert der Vim bei mir schon mal über #v+ und #v-, und außerdem ändert sich auch an der Statusleiste nichts.
Die #v+/#v- gehören auch nicht dort rein. Das sind Delimiter, die man öfters in Mails/Usenet benutzt, um den Abschnitt logisch zu trennen. Grüße, Christian, heute Papa geworden: http://blog.256bit.org/archives/682-Willkommen-kleiner-Jasper-Augustin!.html -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (2)
-
Andre Tann
-
Christian Brabandt