Vims Skriptsprache praktisch erklärt
ÜbersetzO-matik
von Susanne Schmidt
Erschienen im Linux-Magazin
2003/06
Nicht nur Emacs ist mittels Skripting erweiterbar. Auch Vim, der zeitgemäß erweiterte Uralt-Editor »vi«, enthält eine eingebaute Skriptsprache. Sie ist nicht ganz so üppig wie Emacs-Lisp, braucht aber weniger Klammern. Wir erklären sie anhand eines Editor-Plugins zum Übersetzen von Wörtern.
Der Editor Vim [1] ist die moderne Variante des Klassikers »vi«. Mit seiner grafischen Oberfläche, Syntax-Highlighting für jede denkbare Programmiersprache und mehrfachem Undo bietet er deutlich mehr als das Original. Viele Anwender wissen, dass man mit Perl, Python, Ruby oder auch TCL einige Vim-Funktionen aufrufen kann. Der Editor hat aber auch eine eingebaute eigene Sprache: Mit While-Schleife, If-Else-Konstrukten, Variablen, vorgefertigten Funktionen und einer Handvoll üblicher Operatoren für Arithmetik ist Vim zwar nicht üppig, aber ausreichend bestückt.
Das Besondere an Vims Sprache: Das komplette Sortiment Tastatürkürzel und Ex-Befehle (die Doppelpunkt-Befehle) sind auch im Skript verfügbar, in der GUI-Version von Vim kommen noch die Menüfunktionen hinzu.
Aus der Skriptsprache kann man sich kleine Helfer basteln, die anspruchsvolle Ergänzungen zur Syntax-Hervorhebung oder das Verhalten je nach Dateiart steuern. Das Entwicklungstempo ist hoch, bisher sind in jeder größeren Release neue Funktionalitäten hinzugekommen. Das erweist sich aber gleichzeitig als Falle. Je nach Version von Vim haben ein paar Funktionen neue Namen erhalten, Rückwärtskompatibilität ist also nur bedingt gegeben.
Ein Tutorial und eine Funktionsliste stehen im Vim-Helpfile »usr_41.txt«, das man mit »:help usr_41« aufruft. Die Funktionen im Beispielskript beziehen sich alle auf Vim 6.1. Wer einen älteren Vim hat, muss vielleicht ein paar Änderungen nachschlagen.
Schneller Griff zur Übersetzung
Skriptsprachen lassen sich am besten am Beispiel erklären. Das hier vorgestellte kleine Skript enthält alle wichtigen Elemente der Vim-Sprache und tut gleichzeitig etwas Sinnvolles: Es erfasst ein englische Wort unter dem Cursor und schlägt es in einer Wörterbuchdatei für Deutsch und Englisch nach. Es zeigt die Übersetzung des Wortes an - dann hat der Nutzer die Wahl: Er kann das Wort einfügen oder das Suchwort mit Übersetzungswort in eine externe Datei schreiben.
Umgekehrt lässt sich in einem Dialog ein deutsches Suchwort eingeben und das englische Pendant anzeigen. Dazu sind erforderlich: Ein Dialog mit dem Anwender, der Zugriff auf externe Dateien und Kommandos, das Erkennen von Suchmustern und eine Verzweigung je nach Auswahl des Benutzers. Der Zugriff auf das Skript erfolgt über eine spezielles Tastaturmapping. Einige Funktionen für Dialoge mit dem Benutzer arbeiten übrigens sowohl mit dem GUI als auch auf der Konsole - Vim zeigt selbstständig die jeweils korrekte Variante an.
Skript als Plugin
Es gibt mehrere Möglichkeiten, um ein eigenes Skript in Vim zu aktivieren: Man schreibt kürzere Codestücke einfach in die ».vimrc« oder legt eine Datei mit der Endung » myscript.vim« ins Plugin-Verzeichnis von Vim. Vim lädt beim Start Skripte, die im Plugin-Pfad liegen, automatisch - genauso als wäre das Skript in die ».vimrc« eingetragen. Der globale Pfad für Vim-Plugins zeigt oft auf »/usr/ share/vim/vim Version/plugin« (oder auf »/usr/local/share«). Diese Plugins sind anschließend jedem User des Systems zugänglich.
Eigene Plugins kommen im Homeverzeichnis in »~/.vim/plugin«. Die Pfade kann man beim Kompilieren, über Umgebungsvariablen oder in der globalen Vim-Konfigurationsdatei ändern. Dank der Konfigurationsoption »FileType« lässt sich ein neues Plugin abhängig vom Dateityp laden: Die Beispiel-Vimrc nutzt die Möglichkeit für gzippte Dateien oder für C-Sourcen. Aber genauso ist je nach Endung »datei.gb« oder »datei.fr« einfach ein englisches oder französisches Wörterbuch zu laden - oder im Falle einer Unicode-Datei ein Chinesisch-sprachiges Plugin [2].

|
Abbildung 1: Das Vim-Menü für Übersetzungen in der schlichten Konsolen-Version.
|
| Whitepaper |
|
Daten Migration - Eine Publikation von Bloor Research
Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.
Download PDF (Registrierung erforderlich)
|
|
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele
Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.
Download PDF (Registrierung erforderlich)
|
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links"
nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedrucken Fassung entsprechen.
|