Installations Anleitung Vim Plugins: The NERD Tree und Pathogen.vim

13.06.2015

Installation von Pathogen.vim

Die Installation von pathogen.vim ist der emfohlene Vorbereitungsweg um Nerdtree zu installieren Verwalten Sie Ihre ‘runtimepath’ mit Leichtigkeit. In der Praxis macht pathogen.vim es super einfach zu Plugins und Runtime-Dateien in ihren eigenen privaten Verzeichnissen zu installieren.

Installieren Sie pathogen.vim nach ~/.vim/autoload/pathogen.vim. Oder einfach copy und paste folgendes:

mkdir -p ~/.vim/autoload ~/.vim/bundle && curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim

Fügen Sie folgendes in Ihre etc/vimrc Konfigurationsdatei ein:

execute pathogen#infect()

vim-plugin-NERDTree

Wenn Sie ganz neu mit Vim anfangen und eine vimrc fehlt, Machen Sie folgendes:

vim ~ / .vimrc

und fügen Sie den folgenden minimal Konfigurations Beispiel ein:

execute pathogen#infect() syntax on filetype plugin indent on

Jetzt sollten Sie alle Plugins, die Sie installieren möchten, in ein Unterverzeichnis unter ~/.vim/bundle extrahieren, und sie werden nun automatisch dem “runtimepath” hinzugefügt. Beachten Sie folgendes:

cd ~/.vim/bundle && \ git clone git://github.com/tpope/vim-sensible.git

Nun ist sensible.vim ist installiert. Wenn Ihnen der Verzeichnisname /bundle nicht gefällt, können Sie dies ändern indem Sie zur Laufzeit ein relative glob argument mit übergeben:

execute pathogen#infect(‘stuff/{}')

 

Installation von The NERD Tree

Die NERD Baum können Sie Ihr Dateisystem zu erforschen und um Dateien und Verzeichnisse zu öffnen. Es stellt das Dateisystem, um Sie in Form eines Baumes, die Sie mit der Tastatur und/oder Maus zu manipulieren. Es erlaubt Ihnen auch, um einfache Dateisystemoperationen durchzuführen.

Die folgenden Features und Funktionen werden von der NERD Baum vorgesehen:

Dateien und Verzeichnisse werden in einer hierarchischen Baumstruktur angezeigt Verschiedene Lighting ist für die folgenden Arten von Knoten zur Verfügung gestellt:NerdTree-VIM-Plugin

  • Dateien
  • Verzeichnisse
  • sym-Links
  • Fenster .lnk-Dateien
  • schreibgeschützte Dateien
  • ausführbare Dateien

    Viele (kundengerecht) Zuordnungen werden zur Verfügung gestellt, um den Baum zu manipulieren:

  • Mappings erkunden Verzeichnisknoten zum Öffnen/Schließen/
  • Mappings, um Dateien in neuen/bestehenden Fenstern/Tabs geöffnet
  • Mappings, um das aktuelle Wurzel des Baumes ändern
  • Mappings, um rund um den Baum zu navigieren

    Verzeichnisse und Dateien können vorgemerkt werden. Die meisten NERD Baum Navigation kann auch mit der Maus durchgeführt werden Filterung der Baum Inhalt (zur Laufzeit umgeschaltet werden)

  • benutzerdefinierte Datei Filter können beispielsweise verhindern, vim Backup-Dateien angezeigt
  • optional die Anzeige von versteckten Dateien (.-Dateien)
  • Dateien können “ausgeschaltet” werden, so dass nur Verzeichnisse angezeigt werden

    Die Position und Größe der NERD Baumfenster kann angepasst werden Die Reihenfolge, in der die Knoten im Baum aufgelistet können angepasst werden. Ein Modell des Dateisystems erstellt/gepflegt, wie Sie es zu erkunden.

Dies hat mehrere Vorteile:

  • Alle Dateisysteminformationen werden zwischengespeichert und bei Bedarf wird nur einmal zu lesen
  • Wenn Sie einen Teil des Baumes, die Sie zuvor in der Sitzung verließ denken, werden die Verzeichnisknoten geöffnet/geschlossen werden, wie Sie sie verlassen

Das Skript erinnert sich an die Cursorposition und Fensterposition in der NERD Baum so können Sie es wechseln off (oder schließen Sie einfach das Baumfenster) und öffnen Sie es (mit NERDTreeToggle) die NERD Baumfenster wird genau so, wie Sie es verlassen erscheinen

Sie können über ein separates NERD Baum für jede Registerkarte, teilen Bäume über Laschen oder eine Mischung aus beidem.

Der NERD Baum wird im aktuellen Fenster angezeigt. Eine programmierbares Menüsystem wird zur Verfügung gestellt (simuliert einen Rechtsklick auf einen Knoten)

Ein Standard-Menü-Plugin ist vorgesehen, um grundlegende Dateisystemoperationen (erstellen/löschen/verschieben/kopieren von Dateien/Verzeichnisse)

Es gibt eine API für das Hinzufügen von Ihrem eigenen Tastaturbelegung

cd ~/.vim/bundle git clone https://github.com/scrooloose/nerdtree.git

Dann laden Sie den editor neu und starten im vim :Helptags und sehen sich :help NERD_tree.txt an.

Gibt es eine Unterstützung für Git-Flagge? Ja, installieren Sie nerdtree-git-Plugin.

Wie starte ich NERDTree automatisch mit dem start von vim? Fügen Sie folgendes in Ihre etc/vimrc Konfigurationsdatei ein:

autocmd vimenter * NERDTree

Wie starte ich NERDTree automatisch auch wenn keine Dateien angegeben wurden? Fügen Sie folgendes in Ihre etc/vimrc Konfigurationsdatei ein:

autocmd StdinReadPre * let s:std_in=1 autocmd VimEnter * if argc() == 0 && !exists(“s:std_in”) | NERDTree | endif

Wie kann ich eine bestimmte Taste oder Tastenkombination festlegen um vim mit NERDTree zu starten? Fügen Sie folgendes in Ihre etc/vimrc Konfigurationsdatei ein (In unserem Beispiel Ctrl+n - jedoch können Sie auch jede andere Tastenkombination wählen):

map :NERDTreeToggle

Wie kann man vim wieder schließen, wenn das einzige Fenster das Links geöffnet ist, ein NERDTree Fenster ist? Fügen Sie folgendes in Ihre etc/vimrc Konfigurationsdatei ein:

autocmd bufenter * if (winnr("$") == 1 && exists(“b:NERDTreeType”) && b:NERDTreeType == “primary”) | q | endif

Kann ich verschiedene SyntaxHervorhebungen für verschiedene Dateiendungen einstellen? Die Antwort finden Sie hier: NerdTree Github.com

Sie können auch einen absoluten Pfad stattdessen übergeben. Ich habe meine Plugins unter ~/src angelegt, und zwar habe ich dies folgendermassen gemacht:

execute pathogen#infect(‘bundle/{}’, ‘~/src/vim/bundle/{}')

Oder wenn Sie Ihre bundles irgendwo anderst als ~/.vim angelegt haben (sagen wir z.B. unter ~/src/vim):

source ~/src/vim/bundle/vim-pathogen/autoload/pathogen.vim

Wenn Sie Tags global ignorieren wollen geben Sie folgendes ein:

git config –global core.excludesfile ‘~/.cvsignore’ echo tags » ~/.cvsignore

Was ist mit Vimballs? Falls Sie wirklich einen benutzen müssen:

:e name.vba :!mkdir ~/.vim/bundle/name :UseVimball ~/.vim/bundle/name

Warum werden meine Plugins nicht geladen, wenn ich Vim-Sitzungen ausführe? Vim-Sitzungen erfassen standardmäßig alle globalen Optionen, die den ‘runtimepath’ umfassen, den eben pathogen.vim manipuliert. Dies kann wiederum andere Probleme verursachen, weshalb ich Ihnen empfehle diese Einstellung auszuschalten.

set sessionoptions-=options

 

Referenzen / Weiterführende Links:etc_vim-NerdTree-Install

[tabs placement=“tabs-below” style=“nav-pills”] [tab title=“The NERD Tree”]NerdTree Github.com[/tab] [tab title=“vim-pathogen”]vim-pathogen Github.com[/tab] [/tabs]