Login
Newsletter
Werbung

Mi, 6. August 2003, 00:00

VIM kannste knicken!

Methoden

VIM unterstützt verschiedene Methoden, um zu erkennen, wann eine Faltung veranlasst wird oder um ihren Verschachtelungsgrad zu errechnen. Dabei sollte darauf geachtet werden, dass manche Methoden die Auswertung jeder einzelnen Zeile nach einer Regular Expression erfordern und im schlimmsten Fall, bei relativen Faltungsgrad-Angaben, diese wieder zurückverfolgen müssen. Dafür wird eine Menge Zeit benötigt, und das kann bei langen Dateien zur Last werden.

Die Faltungsmethode wird durch die Variable foldmethod bestimmt. Also lässt sich die Methode durch :set foldmethod=METHODE festlegen.

Übersicht

manual
Faltungen werden manuell vorgenommen und nicht in der Datei gespeichert
indent
Faltungslevel entspricht Einrückungslevel bei jeder Zeile
expr
Stufe der Verschachtelung wird aus einem Ausdruck oder einer Funktion berechnet
syntax
Syntax-Hilighting bestimmt faltbare Regionen
marker
Ist wie manual, aber Markierungen werden in den Dateien gespeichert.

Manuelle Faltung

Manuelle Faltung geschieht durch Markierung einer Region (VISUAL-Modus) und anschließendem Drücken von <z><f>. Durch <z><d> wird ein Fold wieder gelöscht, jedoch bleibt dessen Inhalt erhalten, er wird nur entfaltet. Um eine Faltung samt Inhalt zu löschen, dient ein normales <d><d>.

Die vorgenommenen Faltungen werden in der Datei nicht vermerkt, können jedoch über das VIM-Kommando :mkview mit dem Rest der Ansicht-Einstellungen für diese Datei gespeichert werden. Mit :loadview werden diese dann wiederhergestellt.

Falten nach Einrückung

Bei dieser Methode wird der Faltungsgrad anhand der Einrückung bestimmt. Es wird dabei die tatsächliche Einrückung durch die Variable shiftwidth geteilt, welche festlegt, wie breit eine Einrückung ist. Das heißt, standardmäßig bedeutet die Einrückung von acht Leerzeichen oder einem Tabulator die Erweiterung um ein Foldlevel.

Wenn man Code sinnvoll einrückt, lassen sich mit dieser Methode also durchaus sinnvolle Ergebnisse erzielen, falls es kein syntax File für das Dateiformat gibt, welches Sie editieren wollen. Sie müssen dann lediglich die Zeilen, die in eine Faltung sollen, in die gleiche Spalte rücken.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung