Vim – der schnellste Texteditor der Welt?

Aus LinuxUser 10/2022

Vim – der schnellste Texteditor der Welt?

© scyther5 / 123RF.com

(V)Imposant

Das Texteditor-Urgestein Vim ist besser als sein Ruf. Neben Quellcode können Sie damit bequem Texte schreiben – sobald Sie wissen, wie.

Wer nur Office-Suiten wie LibreOffice oder OnlyOffice und vielleicht noch den einen oder anderen Markdown-Editor kennt, der fragt sich zu Recht: Warum wird Vim eigentlich (noch) genutzt? Schließlich steckt dahinter nur ein Texteditor im Terminal, und inzwischen gibt es modernere Editoren mit echter GUI und Werkzeugleisten. Trotzdem schart sich eine rege Community um Vim, Neovim und andere Forks, die ihren Editor häufig emotional verteidigt und ungefragt anpreist. Irgendetwas muss also dran sein. Doch ist man mit Vim wirklich schneller als mit anderen Editoren? Und lässt sich damit nur programmieren?

Fürs Editieren einer Konfigurationsdatei im Terminal nach Anleitung nutzen viele Benutzer den kompakten Nano. Der Texteditor fürs Terminal ist bei fast allen Distributionen vorinstalliert, nach wenigen Sekunden durchschaut und die Aufgabe nach wenigen Handgriffen erledigt. Keine echte Lernkurve, dafür aber eben eher marginal im Funktionsumfang. Wer mit Nano komplexere Inhalte schreiben möchte, etwa Handbücher, Artikel für Linux-Fachzeitschriften, Belletristik oder Quellcode, der stößt schnell an die Grenzen des einfachen Editors. Genau hier kommt Vim ins Spiel.

Wie Nano verfügt Vim über keine nennenswerte grafische Oberfläche und startet im Terminal (Abbildung 1). Zudem bedient man Vim fast ausschließlich über die Tastatur, nur Scrollen und Markieren lassen sich optional mit der Maus erledigen. Im Internet finden sich sogar Anleitungen dazu, wie sich Vim denn überhaupt beenden lässt (obwohl das sogar auf dem Startbildschirm steht). Selbst die Konfigurationsdatei folgt einer ganz eigenen Syntax. Trotzdem ziehen zahlreiche Nutzer Vim den ebenfalls oft vorinstallierten Editoren wie Gedit, Kate oder Kwrite vor. Sogar die tollen Markdown-Editoren aus LU 08/2022 [1] haben keine Chance bei Vim-Fans.

Abbildung 1: So kann Vim aussehen. Hier ist das Plugin Goyo aktiv.

Abbildung 1: So kann Vim aussehen. Hier ist das Plugin Goyo aktiv.

Dabei wirkt Vim frisch installiert nicht besonders attraktiv. Die echten Stärken zeigt der Editor erst nach dem Anpassen der Konfigurationsdatei .vimrc und dem Installieren der gewünschten Plugins – vor allem aber nach dem Verinnerlichen der Tastatursteuerung. Erst dann spielt Vim anderen Editoren gegenüber seine Stärken aus, ganz ohne grafische Elemente wie Werkzeugleisten oder ein umfangreiches Kontextmenü bei Rechtsklick.

Geschichte und Forks

Bei Vim handelt es sich um eine erweiterte Version des Vi-Editors, der wiederum als visueller Modus für den zeilenbasierten Unix-Editor Ed und dessen Ableger gedacht war. Der Name Vim steht für Vi Improved. Seit 1991 erscheint der Editor unter der GPL, verbrämt mit Charity- und Careware-Anteilen. Die Software ist frei und gratis erhältlich, Spenden statt an einen Entwickler an ICCF Holland zur Unterstützung von AIDS-Waisen in Uganda sind jedoch stets willkommen.

Der Fork Gvim liefert eine grafische Oberfläche mit Menüpunkten und Werkzeugleiste und bietet entsprechend einen seichteren Umstieg für alle, die schnuppern oder die reine Tastatursteuerung umgehen wollen. Hinter Neovim [2] hingegen steckt ein eher klassischer Fork, der den Fokus auf Stabilität und Erweiterbarkeit legt, indem er auf selten benutzte Funktionen oder alte Programmbausteine verzichtet. Dank der identischen Basis lassen sich Vim-Plugins in der Regel problemlos auch auf Vim-Derivaten installieren.

Kaum überraschend gibt es unter den Anhängern der Derivate erbitterte Wortgefechte, welche Ausgabe von Vim nun die beste sei. Das muss allerdings jeder für sich selbst herausfinden.

Verschiedene Modi

Sie bedienen Vim über verschiedene Modi – eines der wichtigen Alleinstellungsmerkmale. Die Angabe zum gerade aktiven Modus findet sich links unten im Fenster. Der Ansichtsmodus NORMAL bildet die Ausnahme, denn er wird von Haus aus nicht explizit angezeigt. Es handelt sich quasi um einen erweiterten Lesemodus. Sie schalten ihn über die Escape-Taste ein, was alle anderen Modi deaktiviert.

Mit [X]+ löschen Sie das aktuelle Zeichen, mit [D]+[D] schneiden Sie zeilenweise oder mit [D]+[W] wortweise aus. Die Schreibmarke lässt sich mithilfe der alternativen Pfeiltasten [H]+[J]+[K] und [L] bewegen. Vim-Tastenkombinationen füllen ganze Blogs und das Handbuch, daher behandeln wir hier nur die essenziellen Möglichkeiten.

Der Schreibmodus INSERT wandelt fast jeden Tastendruck rigoros in Textzeichen um, auch für die Funktionstasten. Der Modus lässt sich über [I]+ einstellen und mit [Esc]+ beenden. [V]+ aktiviert VISUAL, was Funktionen wie Markieren, Kopieren ([Y]+ wie “yank”) und Einfügen ([P] wie “paste”) bietet.

Der Befehlsmodus COMMAND ermöglicht mittels [Umschalt]+[.], aus dem NORMAL-Modus heraus Kommandos auszuführen, die in anderen Programmen über die Werkzeugleiste oder Kontextmenüs laufen. Außerdem lassen sich Kommandos verknüpfen: [Umschalt]+[.][Q] (:q) schließt Vim, [Umschalt]+[.][W] (:w) speichert das aktuelle Dokument und [Umschalt]+[.][W]+[Q] (:w) speichert das Dokument und schließt Vim. [Umschalt]+[.][W]+[Q][Umschalt]+[ 1] (:wq!) überschreibt das Dokument auch im Read-only-Modus ([Umschalt]+[ 1] steht hier für --force) und schließt Vim. Damit ist die Liste der Kommandos bei Weitem noch nicht beendet. Die schreibweisensensitive Textsuche starten Sie über [Umschalt]+[ 7] oder [Umschalt]+[ß].

Es braucht Zeit, um Vim zu erlernen. Die Grundlagen beherrschen Sie vermutlich nach wenigen Minuten, komplexere Aktionen erfordern jedoch häufig tatsächlich das Nachschlagen im Handbuch, in Blogs, Foren oder Videos. Alternativ können Sie Vimtutor nutzen. Sie führen das Programm auf der Kommandozeile aus und es bringt in einer interaktiven Tour die Grundlagen bei (Abbildung 2). Neulingen und Interessierten kann man das Programm nur wärmstens ans Herz legen.

Abbildung 2: Das Programm Vimtutor erklärt den Editor interaktiv.

Abbildung 2: Das Programm Vimtutor erklärt den Editor interaktiv.

Sie merken dabei recht schnell, dass Vims Steuerung an vielen Punkten gut durchdacht ist und mit jeder Minute alles immer flotter von der Hand geht. Allein die alternativen Bewegungstasten [H]+[J]+[K] und [L] erlauben, die Hand nicht aus der neutralen Haltung von den Buchstaben wegzuführen und tatsächlich effizienter zu schreiben oder zu editieren.

Allerdings sind die Befehle auf das US-Tastaturlayout zugeschnitten, was einige Zeichenfolgen in der deutschen Variante etwas merkwürdig erscheinen lässt. Zum Glück halten sich die entsprechenden Fälle aber in Grenzen. Sollen die Befehle häufig zum Einsatz kommen, empfiehlt es sich ohnehin, einen eigenen Alias in der .vimrc anzulegen.

Plugins, Scripting und mehr

Ein Vim ohne Plugins oder eine leere .vimrc-Konfigurationsdatei dürften sich bei aktiven Vim-Nutzern kaum finden. Der Editor spielt seine Stärken erst dann aus, wenn Sie ihn recht genau an Ihre Vorlieben angepasst haben.

Unter Programmierern erfreut sich Vim großer Beliebtheit, weil der Editor ein Scripting erlaubt – in Vims eigener Skriptsprache. Sie lässt sich leicht erlernen, macht Vim aber nicht zu einer IDE, die etwa ein Visual Studio Code oder Vscodium ersetzen könnte. Sie können Ihren Editor aber mit etlichen Addons und Hacks individuell so einrichten, dass er deren Funktionen zumindest nahekommt.

Auch bei großen Dateien glänzt Vim durch Performance und beansprucht zudem kaum Platz auf der Festplatte. Der Editor arbeitet ohne Electron, steht dank Forks jedoch trotzdem für alle gängigen Betriebssysteme zur Verfügung. Programmierer sowie Texter freuen sich zudem über einfach einzustellendes Syntax-Highlighting wie Limelight (Abbildung 3). Über ein einfaches syntax on in der .vimrc oder im Befehlsmodus werden entsprechende Zeichenfolgen als Code erkannt.

Abbildung 3: Limelight hebt den aktuellen Absatz hervor und blendet alle anderen ein wenig aus.

Abbildung 3: Limelight hebt den aktuellen Absatz hervor und blendet alle anderen ein wenig aus.

Vor- und Nachteile

Nicht alle Vim-Nutzer programmieren auch. Mit dem Editor kann man problemlos längere Texte schreiben. Es gibt sogar Autoren, die mit Vim Romane verfassen. Allerdings müssen Sie dazu die Konfiguration entsprechend anpassen und Plugins installieren. Beispielsweise lassen sich Dateien mit dem Kommando :vsplit in vertikalen oder mit :split in horizontalen Spalten anzeigen. Das funktioniert beliebig oft, wobei allerdings schnell die Übersicht verloren geht (Abbildung 4).

Abbildung 4: Das Fenster lässt sich vertikal und horizontal in beliebig viele Unterfenster teilen.

Abbildung 4: Das Fenster lässt sich vertikal und horizontal in beliebig viele Unterfenster teilen.

Zwischen den Spalten steuern Sie den Cursor via [Strg]+[W] und Vims alternativen Pfeiltasten [H]+[J]+[K] und [L]. In den Spalten lässt sich eine Datei zeitgleich in mehreren Positionen anzeigen. Den Inhalt synchronisiert der Editor dabei, nicht aber die angezeigte Position. Das ist in erster Linie perfekt für Entwickler. Texter nutzen die Spalten vermutlich eher für mehrere, gleichzeitig geöffnete Dateien wie Notizen zum aktuellen Artikel oder Charakterbögen, Ortsbeschreibungen und Plot-Notizen für den Roman.

Während das Erstellen von Inhalten in Vim problemlos funktioniert, gestalten sich Folgeschritte wie Korrigieren, Lektorieren, Kommentieren oder das Einfügen von Änderungsvorschlägen ungleich komplizierter. Deswegen sollten Sie dafür auf andere Programme ausweichen. Libre- und OnlyOffice liefern häufig bessere Ergebnisse, sind verbreiteter und sorgen in Kombination mit weiteren Tools meist für einen flüssigeren Prozess. Kurze Inhalte wie Blogposts, Artikel, Anleitungen oder Webseiten in Markdown beherrscht Vim (mit Anpassungen) mindestens so gut wie andere Editoren. Wer sich erst einmal mit der Tastatursteuerung vertraut gemacht hat, will oft davon nicht mehr weg; nicht umsonst bieten etliche Programme einen Vim-Mode an.

Als eine weitere Stärke von Vim erweisen sich die Puffer. Mit deren Hilfe öffnen Sie mehrere Dateien hintereinander, ohne auf Spalten zurückzugreifen. :e Datei öffnet einen neuen Buffer, mit :bn springen Sie zum nächsten Buffer und mit :bp zum vorhergehenden. Das Kommando :hardcopy exportiert Inhalte. Damit generieren Sie Postscript-Dateien (.ps), die Sie anschließend mithilfe von Hilfsprogrammen in andere Formate umwandeln können. Ps2pdf zum Beispiel liefert ein PDF, das Sie dank Pipe direkt aus Vim heraus verknüpfen können:

:hardcopy Datei.ps | ps2pdf %.ps && rm %.ps

Dabei erstellt Vim zunächst eine Postscript-Datei, die Ps2pdf dann in ein PDF umwandelt. Das .ps-File löschen Sie im Anschluss wieder. Mit dem Kommando :set printfont:Schrift h10 ändern Sie die Schriftart und -größe (die Zahl hinter dem h) für den Postscript-Export. Für individuellere PDFs, .docx– oder .odt-Dateien empfiehlt es sich, Pandoc [3] einzusetzen, das Sie mit eigenen Vorlagen nutzen können. Einsteigerfreundlich ist das jedoch nicht, vor allem für Anwender, die von den Bürosuiten oder Markdown-Editoren Ein-Klick-Exporte in alle erdenklichen Formate gewohnt sind.

Ein wenig Maussteuerung gibt es dann doch noch: Text lässt sich nicht nur im visuellen Modus mittels mit [Y]+ oder [D]+ kopieren respektive ausschneiden und mit [P] an anderer Stelle wieder einfügen. Sie können auch über die Maus Text markieren und mit einem Rechtsklick Reintext oder als HTML (allerdings mit allen möglichen Formatierungscodes) in den Zwischenspeicher legen. Das ist notwendig, sollten Sie den Text schnell aus Vim herauskopieren wollen. Das eingebaute Yanking funktioniert nur innerhalb des Programms.

Fazit: Vim für alle?

Auf der Suche nach dem für Sie idealen Texteditor sollten Sie zumindest für ein paar Tage Vim ausprobiert haben. Optik und Bedienung mögen anfangs seltsam erscheinen, aber dieser Effekt tritt beim Verlassen gewohnter Bahnen immer auf. Daneben müssen Sie die Konfiguration, das Erweitern durch Plugins, die verschiedenen Betriebsmodi und die weitgehende Tastatursteuerung erst einmal verinnerlichen. Vimtutor eignet sich dabei als gute Starthilfe, doch es empfiehlt sich, möglichst viel Zeit im Editor zu verbringen.

Vim dürfte vor allem deshalb so beliebt und verbreitet sein, weil er sich wie kein anderer Texteditor an die individuellen Vorlieben und Bedürfnisse des Benutzers anpassen lässt. Arbeiten Sie ohnehin viel im Terminal, bekommen Sie mit Vim einen leistungsfähigen Editor an die Hand, der problemlos mit Gedit, Kwrite oder Kate und Co. mithalten kann und Nano locker in den Schatten stellt. (csi/jlu)

Der Autor

Der freie Autor Claudius Grieger schreibt seine Texte mit Vim. Ricing und Config-Eskapaden sind nicht sein Ding, müssen aber manchmal sein.

Infos

  1. Markdown-Editoren (Teil 1): Claudius Grieger, “Bitte nicht stören!”, LU 08/2022, S. 48, https://www.linux-community.de/48034
  2. Neovim: https://neovim.io
  3. Pandoc: Daniel Tibi, “Bäumchen wechsle dich”, LU 09/2018, S. 58, https://www.linux-community.de/41552
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 10/2022 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben