vim: aktiviere Faltungen, aber schließe sie nicht automatisch

16

Ich mag das Falten in Vim sehr, aber es gibt ein paar Nicht-Dateipuffer (Command-T-Plugin-Fenster für einen), die ich wirklich nicht falten möchte, da die normalen Fold-Befehle dort nicht funktionieren.

Wenn ich vim nur anweisen könnte, Falten nicht automatisch zu schließen (schließen Sie sie nur, wenn ich es anweise), sollte dies das Problem beheben, aber in der vim-Hilfe werden keine Optionen zum Ändern dieses Verhaltens angezeigt. Gibt es eine Möglichkeit, das Falten zu aktivieren, aber nicht automatisch alle Falten zu schließen, wenn ein Puffer erstellt / eine Datei geöffnet wird?

Herms
quelle

Antworten:

21

Der Befehl, beim Öffnen eines Puffers keine Falten zu schließen, lautet

:set foldlevelstart=99

Sehen

:help foldlevelstart

für mehr.

garyjohn
quelle
13

du kannst tun:

set nofoldenable

Zum Beispiel in meinem .vimrc habe ich:

set foldmethod=indent       " automatically fold by indent level
set nofoldenable            " ... but have folds open by default
sml
quelle
2
Aus tech.groups.yahoo.com/group/vim/message/119298 : "Mit nofoldenable sind alle Faltungen geöffnet, als ob sie überhaupt nicht existieren würden. Sie können nicht mit ihnen interagieren. Aber sobald Sie versuchen, mit ihnen zu interagieren Mit ihnen (zum Beispiel durch Drücken von zc) legen Sie automatisch die Folderable fest, wodurch alle im Fenster vorhandenen Falten angewendet werden. "
Mansoor Siddiqui
0

zR ist der Befehl zum Öffnen aller Faltungen. Ich gehe davon aus, dass Sie mit dem Befehl autocommand (au) von vim einfach eine Option in Ihre .vimrc einfügen können, um den Befehl zR auszugeben, wenn Sie einen Puffer mit den Dateierweiterungen öffnen, die Sie nicht mit dem automatischen Schließen von Falzen starten möchten. Etwas wie das:

au BufRead *.myext zR

habe nicht getestet, tatsächlich korrekte Syntax kann exe-Befehl für den zR sein:

au BufRead *.myext exe "zR"

Ich gehe davon aus, dass Sie über das automatische Falten von manuell definierten oder automatisch definierten Falten sprechen, wenn ein Puffer geöffnet wird. Wenn die Puffer in Fragen überhaupt keine Falten haben sollen, ist dies wahrscheinlich ein anderes Problem, bei dem das Falten für diese Puffertypen deaktiviert werden soll.

Herbert Sitz
quelle
Ja, aber zR funktioniert nicht, wenn ich im Puffer bin. Daher bin ich mir nicht sicher, ob der automatische Befehl funktionieren würde.
Herms