Einführung
Viele Funktionen vom klassischen vi
Editor lassen sich auch in anderen Programmen nutzen.
Den vi
Mode Aktivieren
In der Shell (ksh, bash, zsh, …)
In der Shell (Korn Shell, Bash, Z Shell, …) kann man mit folgendem Befehl den vi
Modus aktivieren:
$ set -o vi
Damit dies direkt beim Start aktiviert wird, fügt man folgende Zeile in der RC-Datei der Shell ein:
set -o vi
In der Korn Shell lautet die Datei ~/.kshrc
, in der Bash ~/.bashrc
und in der Z Shell ~/.zshrc
.
In der Readline Bibliothek
Viele Programme, welche eine interaktive Benutzerschnittstelle anbieten, wie z.
B. python
(Python-Interpreter), scapy
, sage
, etc. nutzen die GNU Readline
Bibliothek. Die GNU Readline Bibliothek kann mit der Datei ~/.inputrc
bzw.
/etc/inputrc
konfiguriert werden. Die Optionen dazu findet man in der Manpage
von Readline mit man 3 readline
.
Um den vi
Mode in allen Programmen zu aktivieren, legt man also die Datei ~/.inputrc
mit folgendem Inhalt an:
########################################################################
#
# ~/.inputrc
# Konfigurationsdatei für die Readline Bibliothek
#
# 2011-11-16; Emanuel Duss; Erste Version
#
########################################################################
# VI-Mode in allen Tools, welche die Readline-Bibliothek benutzen
set editing-mode vi
# EOF
Soll diese Einstellung für jeden Benutzer auf dem Rechner gelten, fügt man die
Zeile in der Datei /etc/inputrc
ein.
Die aktuellste Version davon gibt es auf GitHub in meinem Configs Repository: .inputrc.
Den vi Mode Nutzen
Für folgende Befehle wechselt man zuerst mit ESC
den vi
Mode:
k
Letzter Befehl in die Konsole Laden (History scrollen mitj
undk
)h
Cursor nach Links bewegenl
Cursor nach Rechts bewegenw
Ein Wort nach vorneb
Ein Wort nach hinten$
Cursor ganz nach hinten0
Cursor ganz nach vorneS
Text ab Cursor änderni
Zurück in den Einfügemodus/keyword
Sucht in der History nach dem Begriffkeyword
n
Nächstes SuchergebnisI
Text am Anfang der Zeile einfügenA
Text am Schluss der Zeile einfügen
Dies ist nur ein Auszug aus häufig genutzten Befehlen.
Links und weitere Informationen
- GNU Readline Bibliothek: http://tiswww.case.edu/php/chet/readline/rltop.html
- Readline Manpage (man 3 readline): http://linux.die.net/man/3/readline