Was ist ein Vim-Plugin?

13

Ich verstehe, dass wir die Leistung von Vim erweitern können, um neue Funktionen hinzuzufügen oder vorhandene zu ändern und unser Bearbeitungserlebnis zu verbessern.

Obwohl ich schon lange selbst Vim-Benutzer bin, bin ich jetzt in einem Neuland: Was genau ist ein Vim-Plugin? Was sind die Voraussetzungen, um ein Plugin zu schreiben, damit ich in naher Zukunft meine eigenen Plugins schreiben kann?

Paulo Cereda
quelle

Antworten:

15

Ein Plugin ist eine Möglichkeit, die Funktionalität von vim zu erweitern.

Vim kategorisiert Plugins in "globale" Plugins (die bedingungslos geladen werden und funktionieren) und "Dateityp" -Plugins (die nur für bestimmte Dateitypen geladen und betrieben werden, siehe :help filetype). Vim sucht an bestimmten Stellen nach Plugins, vorausgesetzt, Sie haben den Laufzeitpfad nicht geändert (manuell oder mit Plugins wie Pathogen oder Vundle):

  • Unter * nix und OS X ist die Standardeinstellung ~/.vim/plugin
  • Unter Windows ist die Standardeinstellung $HOME/vimfiles/plugin

Stattdessen werden Dateityp-Plugins verwendet ftplugin, die für den Dateityp, dem sie entsprechen (z. B. foo.vimfür den fooDateityp) , benannt werden müssen (oder in einem Unterverzeichnis mit dem Namen ).

Plugins sind nur VIM-Skripte, sodass Sie sie verwenden können, um Funktionen, Zuordnungen und Befehle genau wie in Ihrem zu definieren. .vimrcWenn Sie jedoch ein Plugin schreiben, möchten Sie Ihr VIM-Skript im Allgemeinen etwas allgemeiner schreiben, als wenn Sie es gerade wären selbst hacken .vimrc. Wenn Ihr vim mit der entsprechenden Option kompiliert wurde, können Sie Plugins auch in anderen Sprachen wie Python, Ruby oder Lua schreiben.

Plugins sind normalerweise mehr als nur eine einzelne .vimDatei, die sich im entsprechenden Verzeichnis befindet. Sie enthalten häufig auch Autoload-Skripte ( :help autoload), Syntax-Skripte ( :help syntax) und Skripts zur Behandlung von Einrückungen. Der gesamte Code in diesen Skripten bietet leistungsstarke Hooks, um vim zu erweitern.

Die in Vim integrierte Hilfe ( :help plugin) enthält alle möglichen zusätzlichen Details. Das Schreiben von Plugins ist ein ziemlich weit gefasstes Thema, aber die integrierte Hilfe von vim kann äußerst nützlich sein. Darüber hinaus gibt es im Internet einige hervorragende Ressourcen wie:


Die Verwendung eines Plugins (unabhängig davon, ob Sie eines geschrieben oder aus dem Internet heruntergeladen haben) ist eine einfache Sache, es in das entsprechende Verzeichnis (oder ggf. in Verzeichnisse) zu stellen und vim zu starten. Einige Plugins verfügen möglicherweise über komplexere Installationsverfahren (z. B. das beliebte YouCompleteMe- Abschluss-Plugin mit einer kompilierten Komponente).

Heutzutage sind Plugin-Management-Plugins wie Pathogen und Vundle eine beliebte Alternative zur manuellen Installation von Plugin-Dateien, zumal Plugins normalerweise mehr als eine Datei enthalten (wie oben angegeben). Weitere Informationen finden Sie in dieser Frage .

Gemeinschaft
quelle