VI Crash

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Die 4 Modi

Modus Aktivieren Verlassen
Normalmodus Standardmodus beim Öffnen
Einfügemodus i vor Cursor, a nach Cursor, o neue Zeile unten, O neue Zeile oben ESC
Visueller Modus v zeichenweise, V zeilenweise, Ctrl+v Blockauswahl ESC
Befehlszeilenmodus : Befehl, / Suche vorwärts, ? Suche rückwärts ESC

Merke: Immer mit ESC zurück in den Normalmodus.

Normalmodus

Navigation

  • gg – Anfang der Datei
  • G – Ende der Datei
  • :4 – Springe zu Zeile 4
  • 0 – Zeilenanfang
  • $ – Zeilenende
  • w – Nächstes Wort
  • b – Vorheriges Wort

Löschen

  • dd – Zeile löschen (in Register)
  • 3dd – 3 Zeilen löschen
  • dG – Bis Dateiende löschen
  • d0 – Bis Zeilenanfang löschen
  • d$ – Bis Zeilenende löschen
  • x – Zeichen löschen
  • 3x – 3 Zeichen löschen

Kopieren & Einfügen

  • yy – Zeile kopieren (yank)
  • 3yy – 3 Zeilen kopieren
  • yG – Bis Dateiende kopieren
  • y0 – Bis Zeilenanfang kopieren
  • y$ – Bis Zeilenende kopieren
  • p – Einfügen nach Cursor
  • P – Einfügen vor Cursor

Suchen

  • /muster – Vorwärts suchen
  • ?muster – Rückwärts suchen
  • n – Nächster Treffer
  • N – Vorheriger Treffer
  • * – Wort unter Cursor suchen

Sonstiges

  • u – Rückgängig (undo)
  • Ctrl+r – Wiederholen (redo)
  • . – Letzten Befehl wiederholen
  • r – Einzelnes Zeichen ersetzen
  • ZZ – Speichern und beenden

Visueller Modus

Tipp: Erst Text markieren, dann Befehl ausführen.

Auswahl

  • v – Zeichenweise markieren
  • V – Zeilenweise markieren
  • Ctrl+v – Blockauswahl (Spalten)
  • ggVG – Gesamte Datei markieren

Aktionen auf Auswahl

  • d – Auswahl löschen
  • y – Auswahl kopieren
  • > – Einrücken
  • < – Ausrücken
  • ~ – Groß-/Kleinschreibung wechseln
  • : – Befehl auf Auswahl anwenden

Befehlszeilenmodus

Datei

  • :w – Speichern
  • :w! – Speichern (Schreibschutz überschreiben)
  • :q – Beenden
  • :q! – Beenden ohne Speichern
  • :wq! – Speichern und beenden
  • :e <datei> – Andere Datei öffnen
  • :r <datei> – Datei an aktueller Stelle einfügen

Shell & Einstellungen

  • :sh – Kurz in Shell wechseln (zurück mit exit)
  • :!befehl – Shell-Befehl ausführen
  • :r!befehl – Ausgabe ins Dokument einfügen
  • :set number – Zeilennummern anzeigen
  • :set ruler – Koordinaten anzeigen
  • :syntax on – Syntax-Highlighting
  • :set tabstop=2 – Tab-Breite setzen

Suchen & Ersetzen

  • :s/alt/neu/ – Erstes Vorkommen in aktueller Zeile
  • :s/alt/neu/g – Alle Vorkommen in aktueller Zeile
  • :%s/alt/neu/g – Alle Vorkommen in der gesamten Datei
  • :%s/alt/neu/gc – Alle ersetzen mit Bestätigung
  • :%s/alt//g – Text löschen (durch nichts ersetzen)

Reguläre Ausdrücke (Auswahl)

Zeichen Bedeutung
. Beliebiges Zeichen (außer Zeilenende)
* Vorheriges Muster 0 oder mehrmals
^ Zeilenanfang
$ Zeilenende
[...] Genau eines der angegebenen Zeichen
[^...] Kein Zeichen aus der Menge
\< Wortanfang
\> Wortende
\ Sonderzeichen entwerten

Konfiguration

Konfigdateien

Systemweit
/etc/vimrc
Individuell (pro Benutzer)
~/.vimrc

Beispiel ~/.vimrc

syntax on
set ruler
set number
set tabstop=2

Datei mit Cursorposition öffnen

  • vi + <datei> – Cursor am Dateiende
  • vi +97 <datei> – Cursor in Zeile 97