Versionieren der Vimrc

Die Konfigurationsdatei von Vim liegt normalerweise im Homeverzeichnis des Benutzers als .vimrc. Um diese dem Git Repository hinzufügen zu können, wird sie in das .vim Verzeichnis verschoben.

In diesem Verzeichnis findet Vim seine Konfiguration nun nicht mehr, deswegen wird ein symbolischer Link auf diese Datei gesetzt.

Innerhalb des .vim Verzeichnisses wird nun ein neues Git Repository initialisiert.

Diesem noch leeren Repository wird nun die vimrc hinzugefügt und Comitted.

Pathogen

Pathogen ist ein Vim Plugin, welches es ermöglicht, andere Plugins als ein zusammengehöriges Bundle zu installieren. Um dies zu ermöglichen, manipuliert Pathogen den die Pfade der Runtime, welche die Pluginverzeichnisse festlegen. Plugins werden so nicht mehr in die autoload,plugins, etc. Verzeichnisse verschoben, sondern jedes Plugin hat einen eigenes Verzeichnis. Dadurch lassen sich einfacher Plugins installieren und vor allem auch wieder entfernen, da nur das Verzeichnis des Plugins gelöscht werden muss.

Pathogen lässt sich einfach aus dem github Repository des Entwicklers beziehen:

In die vimrc wird nun die folgende Zeile eingetragen, welche Pathogen aktiviert.

Es ist wichtig, dass diese Zeile vor der aktivierung des filetype Plugins steht.

Dieses wird nun ebenfalls zum Git Repository hinzugefügt.

Pathogen erwartet, falls es nicht umkonfiguriert wurde, dass jedes Plugin in einem eigenen Verzeichnis innerhalb eines Verzeichnisses namens bundle liegt. Dies wird wie folgt angelegt.

Plugins als Git Submodule installieren

Git’s Submodule sind ein Konzept, um innerhalb eines Git Repositories ein anderes Repository einbinden zu können. Somit kann jedes Vim Plugin aus seinem eigenen Repository bezogen werden. Um beispielsweise das fugitive Plugin als Submodul hinzu zu fügen, wird folgender Befehl genutzt.

Das Repository von fugitive wird nun in den Ordner bundle/fugitive ausgecheckt. Auf diese Weise kann nun jedes beliebige Plugin hinzugefügt werden.

Die Informationen welche Submodule eingebunden sind werden in der Git Historie mit gesichert, dazu müssen diese wie gewohnt comitted werden.

Nun kann dieses Repository auf einem der frei verfügbaren Anbietern von Git Repositories wie Github oder Bittbucket veröffentlicht werden. So ist es einfach die Konfiguration auf mehreren Rechnern zu beziehen und andere Nutzer können sich von der eigenen Konfiguration inspirieren lassen.

Updaten der Plugins

Da die Plugins nun über ihre eigenen Repositories eingebunden sind, kann man diese natürlich auch aktualisieren. So kann man alle Änderungen, welche die Entwickler an den Plugins gemacht habe, einfach auf die eingebundenen Plugins anwenden.

Es ist möglich die Plugins einzeln oder alle auf einmal zu aktuallisieren. Um ein einzelnes Plugin zu aktuallisieren wecheslt man in das entsprechende Verzeichnis innerhalb von bundle und lässt git nur diese Plugin aktuallisieren.

Dies kann man auch für alle Plugins nacheinander machen lassen.

Auschecken der Konfiguration auf einem anderen Computer

Nachdem die Konfiguration nun so aufbereitet wurde, kann diese auf jedem beliebigen Rechner ausgecheckt werden (natürlich unter der Voraussetzung, dass git verfügbar ist). Um dies zu tun, führt man folgende Schritte aus.