Nachdem wir im letzten Beitrag den einfachen Editor nano kennengelernt haben, wenden wir uns nun vim zu – einem der mächtigsten und gleichzeitig komplexesten Texteditoren unter Linux.
Während nano vor allem für schnelle Änderungen gedacht ist, bietet vim nahezu unbegrenzte Möglichkeiten für effizientes Arbeiten, Skripting und Automatisierung – wenn man seine Bedienlogik einmal verstanden hat.
1. Was ist vim?
vim steht für Vi IMproved und ist eine erweiterte Version des klassischen vi-Editors. Er ist auf fast allen Unix- und Linux-Systemen vorinstalliert und zeichnet sich aus durch:
- Moduskonzept: Unterschiedliche Modi für Eingabe, Navigation und Befehle
- Hohe Effizienz: Mächtige Tastenkombinationen für schnelles Bearbeiten
- Anpassbarkeit: Plugins, Themes, Makros und Skripting
- Weite Verbreitung: Nahezu überall verfügbar
2. Installation von vim
Auf vielen Systemen ist vim bereits vorinstalliert. Falls nicht:
- Debian/Ubuntu
sudo apt install vim
- Fedora
sudo dnf install vim
- Arch Linux
sudo pacman -S vim
3. Grundprinzip: Die Modi in vim
Das Besondere an vim ist sein Moduskonzept.
Modus | Zweck | Wechseln mit |
---|---|---|
Normalmodus | Navigation, Befehle, Bearbeiten | ESC |
Einfügemodus | Texteingabe | i , a , o |
Befehlsmodus | Komplexe Befehle, Suchen, Speichern | : im Normalmodus |
Visueller Modus | Text markieren | v |
4. vim starten und beenden
- Datei öffnen oder erstellen
vim datei.txt
- Beenden ohne Speichern
:q!
- Speichern und Beenden
:wq
oder:x
- Nur speichern
:w
5. Wichtige Befehle im Normalmodus
Aktion | Befehl |
---|---|
Wechsel in Einfügemodus | i (vor Cursor), a (nach Cursor), o (neue Zeile) |
Cursor bewegen | Pfeiltasten oder h (links), j (unten), k (oben), l (rechts) |
Zeile löschen | dd |
Zeichen löschen | x |
Kopieren (Yank) | yy (Zeile), y + Bewegung |
Einfügen | p |
Rückgängig machen | u |
Letzte Änderung wiederholen | . |
Beispiel:
dd
löscht die aktuelle Zeile3dd
löscht drei Zeilen ab Cursorposition
6. Suchen und Ersetzen
- Suchen nach Text
/Suchbegriff
Mitn
zum nächsten Treffer springen. - Suchen und Ersetzen
:%s/alt/neu/g
→ Ersetzt in der gesamten Datei „alt“ durch „neu“.
7. Visueller Modus für Markierungen
- Zeichenweise markieren:
v
- Zeilenweise markieren:
V
- Blockweise markieren:
Strg + v
Kombinieren mit Befehlen:
- Markieren →
y
= Kopieren - Markieren →
d
= Löschen
8. Konfigurationsdatei .vimrc
In der Datei ~/.vimrc
können Einstellungen dauerhaft gespeichert werden:
syntax on " Syntax-Highlighting
set number " Zeilennummern anzeigen
set tabstop=4 " Tabweite
set expandtab " Tabs als Leerzeichen
set autoindent " Automatische Einrückung
Laden:
vim ~/.vimrc
9. Praxisbeispiele
- Schnelle Änderung in einer Konfigurationsdatei
sudo vim /etc/hosts
- Bearbeiten:
i
→ Änderungen vornehmen - Speichern:
:wq
- Bearbeiten:
- Große Logdateien durchsuchen
/Fehler n
→ Springt von einem Treffer zum nächsten - Makros aufzeichnen
q
+ Buchstabe → Makro aufzeichnen- Aktionen ausführen
q
→ Aufzeichnung beenden@Buchstabe
→ Makro abspielen
10. Zusammenfassung
Modus | Zweck | Wechsel mit |
---|---|---|
Normalmodus | Navigation, Bearbeiten | ESC |
Einfügemodus | Texteingabe | i , a , o |
Befehlsmodus | Speichern, Suchen, Ersetzen | : |
Visueller Modus | Markieren | v , V , Strg+v |
Schreibe einen Kommentar