Vi: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 46: | Zeile 46: | ||
* 'w': schreibt den Editor-Inhalt in die Datei | * 'w': schreibt den Editor-Inhalt in die Datei | ||
* 'wq': schreibt den Editor-Inhalt in die Datei und beendet den Vi | * 'wq': schreibt den Editor-Inhalt in die Datei und beendet den Vi | ||
=== Beispiele für Ersetzen === | |||
* .,.+10s/abc/Abc/ | |||
** Ersetzt von der aktuellen Cursorposition (".") bis 10 Zeilen später (".+10") die Zeichenfolge "abc" durch "Abc", einmal je Trefferzeile |
Version vom 1. September 2016, 12:34 Uhr
Betriebsmodus
- "visual mode": Buchstaben bedeuten Kommandos
- "Input mode": getippte Buchstaben gelangen ins Dokumnent (wie bei "normale" Editoren). Beendent mit ESC. Wird in der Statuszeile angezeigt
- gestartet mit i (insert, fügt an Cursorposition ein), oder "a" (add, fügt hinter Cursorposition ein) oder 'A' (add, fügt in neue Zeile unter der Cursorposition)
- Beenden mit ESC
- command mode: Eingabe von Kommandos mit Parametern.
- Gestartet mit ':' (aus dem "Visual mode)
- Beenden mit ESC
Kommandos des "Visual Modes"
- c<range>: löscht den Bereich <range> und geht in den "Input mode"
- d<range>: löscht <range>
- f<char>: findet nächstes Zeichen <char> in der aktuellen Cursorzeile
- G: Gehe in letzte Zeile
- 107G Gehe in Zeile 107
- /<rexpr>: Suche <rexpr> (regulären Ausdruck)
- ?<expr>: Suche rückwärts
- x<char>: ersetzt das Zeichen an der Cursorposition durch <char>
<range>:
- w: bis Wortende $: bis Zeilenende
- /<rexpr<>: Bereich von Cursorposition bis zum Zeichen vor dem Auftreten des Suchstrings
Jedem Kommando kann eine Zahl vorangestellt werden, dann wird der Befehl entsprechend oft aufgerufen:
Beispiele:
- "3f-": finde das 3.te '-' ab Cursorposition
- "5dw": lösche 5 Wörter
- "d/Jonny": löscht von Cursor bis zum Zeichen vor "Jonny", auch über mehrere Zeilen
Kopieren von Text
Mit dem Kommando "y<range> kann Text in den Kopierpuffer gebracht werden, das Kommando 'p' fügt den Kopierpuffer
Beispiele:
- "5yy" kopiert 5 Zeilen (ab der Cursorposition) in den Kopierpuffer
- "3yw" kopiert 3 Wörter in den Kopierpuffer
- "y/^}" kopiert den Text von der Cursurposition bis (ausschließlich) der ersten Zeile, die mit '}' beginnt, in den Kopierpuffer
Kommandos im Kommandomodus
- q: beendet den Vi ohne Speichern nur, wenn nichts geändert wurde
- q!: beendet den Vi ohne Speichern, auch wenn Änderungen vorliegen
- s<range>/<search>/replacement/
- 'w': schreibt den Editor-Inhalt in die Datei
- 'wq': schreibt den Editor-Inhalt in die Datei und beendet den Vi
Beispiele für Ersetzen
- .,.+10s/abc/Abc/
- Ersetzt von der aktuellen Cursorposition (".") bis 10 Zeilen später (".+10") die Zeichenfolge "abc" durch "Abc", einmal je Trefferzeile