Linux:Befehl:vi
1 Vi-Editor oder (neuer) Vim-Editor
Texteditor für Programmierer: dient zum bearbeiten von Dateien. Ein Vorteil ist hier die Umschaltung zwischen Befehls- und Eingabemodus.
Beim Start befindet sich Vi im Befehls-Modus. mit [i] (Eingabe links vom Cursor) oder [I] (Eingabe am Zeilenanfang) kommt man in den Editor-Modus.
[Esc] schaltet zurück in den Befehls-Modus.
2 Allgemein
Der Texteditor Vi ist ein mächtiges Werkzeug für das Terminal, der in der Unixwelt lange Zeit der Standard war und auch heute immer noch weit verbreitet ist. Er ist allerdings proprietäre Software, so dass man im Allgemeinen vom Vim - Vi improved redet, wenn man über den Vi spricht. Dies ist ein Open Source-Klon des Vi, der auf jedem Linux-System zu finden ist.
Auch vom Vim existieren eine Reihe Klone, die aber mehr oder weniger den gleichen Ansatz verfolgen. Mit gVim existiert ebenfalls eine Version mit grafischer (GTK-) Oberfläche.
gVim ist auf der Projektseite auch als Windows- und Mac-Version erhältlich.
3 Installation
- sudo apt-get install vim
- sudo apt-get install vim-full
4 Konfiguration
Die systemweite Konfigurationsdatei vimrc befindet sich im Verzeichnis /etc/vim/. Änderungen und Einstellungen dort gelten für alle Benutzer. Individuelle Anpassungen können jedoch durch eine eigene Konfigurationsdatei im Benutzerverzeichnis vorgenommen werden. Diese Einstellungen werden in der Datei .vimrc gespeichert. Ist die Datei nicht vorhanden, muss sie erstellt werden:
vi .vimrc
Weitere Informationen/Einstellungen können in einem zusätzlichen Konfigurationsverzeichnis hinterlegt werden. Konkrete Erläuterungen und Beispiele werden im Artikel Vim/Konfiguration beschrieben.
5 Anwendung
Vim verfügt über drei verschiedene Arbeitsmodi. Diese werden im folgenden kurz beschrieben. Die wichtigsten Tastenkürzel zur Arbeit mit dem Vim werden im Artikel Vim/Shortcuts erläutert.
6 Aufruf
Vim lässt sich im Terminal mit folgendem Befehl starten:
vim
Auf den meisten System ist auch die Kurzform vi ausreichend, die als Alias für vim genutzt wird. Um eine bestimmte Datei zu öffnen oder zu erstellen, setzt man einfach ihren Namen (ggf. inklusive Pfad) hinter den Aufruf:
vi datei_name
Root-Rechte, zum Beispiel zum Editieren von System-Dateien, erhält man durch ein vorangestelltes sudo. Will man den grafischen Vim starten, so muss man analog folgenden Befehl eingeben oder den entsprechenden Eintrag im Startmenü suchen:
gvim
Sowohl grafischer, als auch textbasierter Vim greifen auf die selbe Konfiguration zu. Man kann aber auch die spezifischen Einstellungen für GVim in einer separaten .gvimrc im Benutzerverzeichnis unterbringen. GVim nutzt dann beide Dateien, während der klassische Vim nur die .vimrc verwendet.
7 Befehlsmodus
Direkt nach dem Aufruf befindet sich der Editor im sogenannten Befehlsmodus. In diesem nimmt er Befehle entgegen und führt sie aus. Sehr abstrakt betrachtet kann man dieses Vorgehen mit dem Klicken durch die Menüs eines Programms vergleichen.
Tastenkürzel | Aktion |
---|---|
j | Schritt abwärts |
k | Schritt aufwärts |
h | Schritt nach links |
l | Schritt nach rechts |
dd | löscht eine komplette Zeile an der Cursorposition |
u | macht letzte Änderung rückgängig |
STRG + R | macht u rückgängig |
ZZ | speichert die Datei und beendet Vim |
8 Einfügemodus
Befindet sich der Vim im Einfügemodus, so kann der Text nach Belieben editiert werden.
Tastenkürzel | Aktion |
---|---|
i | Editiermodus an der Cursorposition starten |
a | Editiermodus eine Stelle hinter der Cursorposition starten |
o | Zeile unterhalb der Cursorposition einfügen und Editiermodus starten |
ESC | Editiermodus beenden |
9 Kommandozeilenmodus
Neben Befehlen, die zum Bewegen durch die Datei oder deren Modifikation dienen, kann man im Kommandozeilenmodus auch Parameter des Programms selber ändern, Dateien laden und/oder (Shell-) Befehle ausführen. Das Verhalten ist mit einer Mini-Kommandozeile vergleichbar.
Tastenkürzel | Aktion |
---|---|
:w | Datei speichern |
:w name | Datei unter name speichern |
:q! | Vim ohne Speichern beenden |
/such_ausdruck | Datei nach such_ausdruck durchsuchen |
:e datei_name | Datei datei_name öffnen |
:e # | zur zuvor bearbeiteten Datei zurückkehren |