Ihre Suche nach: taglist vim

Du kommst von www.google.de und suchst nach taglist vim. Folgende Beiträge könnten Dich auch interessieren:

Nicht gefunden was Du gesucht hast? Dann kannst Du hier mit Google das Web durchsuchen:

Hauptseite

Vim Plugin – Taglist: Splitscreen mit Übersicht der Funkionen in einer Datei

17. April 2011 von zimon

Das Taglist Plugin für Vim ist ein praktisches Tool zum programmieren. Es listet die einzelnen Funktionen (je nach Programmiersprache auch Klassen, Packete und Membervariablen) eines Programms in einem eigenen Splitscreen auf. Diese sind nach Dateien sortiert und man kann so sehr schnell zu einer gewünschten Funktion springen.

Damit das Plugin funktioniert muss das Paket exuberant-ctags installiert sein. Danach kann man die Datei taglist.vim ins
Pluginverzeichnis (~/.vim/plugin) kopieren.

Wenn nun eine Datei mit Quellcode geöffnet ist, kann man das Taglist Plugin durch den Befehl :TList aktivieren, woraufhin sich auf der rechten Seite der Splitscreen mit den Funktionen öffnet. Mit STRG+w w kann man zwischen den Splitscreens hin und her wechseln (Ich habe mir diese Tastenkombination auf + gelegt). Mit j und k kann man nun in den Funktionen hoch und runter scrollen. Drückt man bei der gewünschten Funktion ENTER, so springt der Cursor automatisch wieder auf den Quelltext an der Position, wo die gewählte Funktion beginnt.
Da sich beim Sprung zu einer Funktion die entsprechende Datei im aktuellen Buffer öffnet, empfiehlt es sich, Buffer statt Tabs zu verwenden.

Praktisch ist es, sich ein autocommand für Quelltexte zu erstellen, so dass die Taglist automatisch beim Öffnen von Quelltexten geladen wird.

Dafür wird eine Funktion benötigt, welche die Dateiendung überprüft und bei entsprechenden Endungen die Taglist öffnet. Das folgende Beispiel öffnet die Taglist für Java und Perl Dateien:

function OpenTlist()
    let myfile = expand("%")
    let myfiletype = expand("%:e")
    if myfiletype == "pl" || myfiletype == "java"
        Tlist
    end
endfunction

Nun noch das autocommand:

au BufRead * call OpenTlist()

Beides wird in die ~/.vimrc geschrieben.

Nun kann man sich in der ~/.vimrc noch ein Mapping anlegen um die Taglist mit z.B. F3 ein- und auszublenden:

map <F3> :TlistToggle<cr>

Wenn man Programmiert, dann schreibt man natürlich auch neue Funktionen. Diese werden von der Taglist leider nicht sofort erkannt. Daher ist es sinnvoll ein Mapping zu definieren um die Taglist zu updaten. Das folgende Mapping legt das Updaten der Taglist auf F4 (die Datei wird dabei direkt gespeichert):

map <F4> :w<cr>:TlistUpdate<cr>

Schlagworte: , , ,



4 Kommentare zu „Vim Plugin – Taglist: Splitscreen mit Übersicht der Funkionen in einer Datei“

  1. johndoe sagt:

    Gibt es einen großen Unterschied zu NERDTree?

  2. zimon sagt:

    Der NERDTree zeigt Dateien an, während Taglist die Funktionen innerhalb einer Datei anzeigt.

  3. Matthias sagt:

    TagList ist ja auch schon etwas angestaubt. Ich fahre mit TagBar (http://www.vim.org/scripts/script.php?script_id=3465) persönlich deutlich besser.

  4. zimon sagt:

    Hallo Matthias,
    vielen Dank für den Tipp. TagBar war mir bisher unbekannt.

    Habe mir TagBar jetzt mal etwas angesehen. Scheint wirklich sinnvoller zu sein. Man kann die obigen Konfigurationseinstellungen jedoch auch dafür nutzen. Es müssen lediglich die entsprechenden Kommandos angepasst werden. Also

    • TagbarOpen statt TList in der Funktion um TagBar automatisch zu öffnen
    • :TagbarToggle statt :TlistToggle für das Mapping zum Ein- und Ausblenden
    • Ein Mapping zum Updaten der TagBar ist nicht nötig. Nach dem Speichern der Datei zweimal togglen und die TagBar ist aktuell

    Viele Grüße
    zimon

Kommentieren

Kommentarlinks könnten nofollow frei sein.


Bloggeramt.de frisch gebloggt Blogverzeichnis - Blog Verzeichnis bloggerei.de