
Ich habe eine reine Textdatei, die -- >8 --
als Abschnittstrennzeichen verwendet, z. B.:
-- >8 --
first section
some content
more content
-- >8 --
second section
some content
more content
-- >8 --
Um die Navigation in der Datei zu erleichtern, möchte ich Abschnitte zwischen Markierungen zusammenfalten. Ich hatte erwartet, dass das so einfach wäre wie:
set foldmethod=marker
set foldmarker=--\ >8\ --,--\ >8\ --
Es entstehen jedoch verschachtelte Falten.
Ich habe herausgefunden, dass ich dazu einen Fold-Ausdruck verwenden kann (siehe Antwort unten), aber das scheint ziemlich übertrieben. Gibt es eine einfachere Möglichkeit, dies zu tun?
Antwort1
Ich habe herausgefunden, dass ich hierfür einen Fold-Ausdruck verwenden kann:
set foldmethod=expr
set foldexpr=(getline(v:lnum)=='--\ >8\ --')?1:2
Bildschirmfoto:
- -- >8 --
|++--- 5 lines: first section------------------------------------------------
| -- >8 --
|++--- 5 lines: second section-----------------------------------------------
| -- >8 --