vi-Help


———————————————————————————
VI – Kurzanleitung
———————————————————————————

Allgemeines
———–
Alle vi-Kommandos (beginnen mit „:“) können in die Konfigurationsdatei eingetragen werden. Diese kann heissen: .gvimrc .vimrc oder unter Win32 _vimrc

Bearbeitungsmodi
—————-
[ESC]: Kommandomodus
[i]: Einfügemodus (an der aktuellen Stelle)
[a]: Einfügemodus (am Ende der aktuellen Stelle -> „append“)
[:]: Execute-modus (Eingabe eines Kommandos), Kommandovervollständigung mit [TAB]

Dateiverwaltung:
—————-
[:e Dateiname]: Datei laden
[:e Verzeichnis]: Dateimanager (Der Parameter ist ein Verzeichnis)
[:w]: Aktuelle Datei speichern
[:w Dateiname]: Aktuelle Datei speichern unter einem neuen Namen (Bearbeitet wird weiter das Original)
[:sav Dateiname]: Aktuelle Datei speichern unter einem neuen Namen (Neue Datei wird bearbeitet)
[:buffer Dateiname]: Zwischen den Buffers (geöffnete Dateien) umschalten
[:next]: Zum nächsten Buffer wechseln
[:prev]: Zum vorherigen Buffer wechseln
[:q]: VIM beenden (nur wenn alle Buffers gespeichert, sonst Meldung)
[:q!]: VIM beenden (nicht gespeicherte Buffers gehen verloren)
[:wq]: Speichern und Schliessen (Alternativ: [ZZ])

Editor:
——-
[u]: Aktion rückgängig machen (undo)
[Ctrl+r]: Aktion wiederherstellen (redo)

[yy]: Zeile kopieren
[dd]: Zeile ausschneiden (löschen)
[dw]: Wort ausschneiden (ab der aktuellen Position nach rechts)
[db]: Wort ausschneiden (ab der aktuellen Position nach links)
[d^]: Bis Zeilenanfang löschen (ab der aktuellen Position)
[d$]: Bis Zeilenende löschen (ab der aktuellen Position)
[:’a,’bd]: Von Marke „a“ bis Marke „b“ löschen
[p]: Einfügen
[v]: Anfang des zu markierenden Bereichs setzen (Mit den Cursortasten Bereich markieren)
[y]: Markierten Bereich kopieren
[„xy]: Markierten Bereich in das Puffer „x“ kopieren (es können bis zu 26 Puffer belegt werden)
[„xp]: Text aus dem Puffer „x“ einfügen
[VG]: Alles markieren (ab der aktuellen Position nach unten

[mx]: Marke setzen („x“ ist ein bel. Kleinbuchstabe -> es sind 26 Marken möglich)
[‚x]: Zur Marke „x“ springen

[J]: CR/LF am Ende einer Zeile löschen (Zeilen zusammenfügen)
[:set list]: Nicht darstellbare Zeichen anzeigen
[:set ic]: Gross/Kleinschreibung ignorieren

[Ctrl+n]: Wort vervollständigen
[:%!xxd]: HEX-Editor-Modus (xxd muss installiert sein)

Im Text navigieren:
——————-
[gg]: An die erste Position des Textes springen
[GG]: An die letzte Position des Textes springen
[m][Cursor]: Um „m“ Zeichen/Zeilen springen (mit den Cursortasten -> links, rechts, oben, unten)
[w]: Wortweise nach rechts springen (Mit [b] nach links) -> auch hier kann eine Zahl vorangestellt werden

Suchen und Ersetzen:
——————–
[/Suchwort]: Nach „Suchwort“ suchen („Suchwort“ ist ein reg. Ausdruck). Mit [n] weiter suchen.
[/Suchwort/i]: Nach „Suchwort“ suchen, Gross/Kleinschreibung ignorieren
[:1,$s/Unix/Linux/g]: „Unix“ durch „Linux“ ersetzen (Bereich: 1,$ -> vom Anfang bis Ende, g: Alle ersetzen)
[:1,.s/^/#/g]: Alle Zeilen bis zur aktuellen Cursorposition (.) auskommentieren

Sonstiges:
———-
[:split]: Hauptfenster wird horizontal aufgespaltet. Wechseln mit [Ctrl+w+w].
[:r !date]: Ausgabe eines UNIX-Kommandos in den Text einfügen (hier Datum)
[:syntax on]: Syntaxeinfärbung einschalten
[:set nu!]: Zeilennummern ein-/ausblenden.
[:set ai]: Automatisches Einrücken (AutoIdent)
[:set cin]: Automatisches Einrücken im Still von C (Einrücken in Funktionsrümpfen)
[:set softtabstop=3]: Tabulator entspricht drei Leerzeichen
[:set shiftwidth=3]: Autom. Einrücken entspricht drei Leerzeichen
[:ab w1 wort]: Autom. Ersetzen von „w1“ durch „wort“ während der Eingabe

————————————————————