The bind command allows rebinding of editing functions. You can use the command to display or modify the key bindings for EMacs-style editors and vi-style editors. The syntax of the bind command is:
|
bind |
Display the current editing key bindings |
|
bind key=definition |
Bind key to definition |
|
bind key |
Display the current definition for key |
|
bind key= |
Remove binding of key |
|
bind -m key=definition |
Define key to be a macro with definition |
|
bind -m |
Same as bind |
where:
key is the name of a key.
definition is the definition of the macro to be bound to the key.
The following are some of the more important default key bindings for EMacs-style editors:
|
^A = beginning-of-line |
^B = backward-char |
|
^D = eot-or-delete |
^E = end-of-line |
|
^F = forward-char |
^G = abort |
|
^K = kill-to-eo |
^L = redraw |
|
^N = down-history |
^P = up-history |
|
^R = search-history |
^^ = quote |
|
^? = delete-char-backward |
^H = delete-char-backward |
|
^[b = backward-word |
^[d = delete-word-forward |
|
^[f = forward-word |
^[^H = delete-word-backward |
|
^[^[ = complete |
^[? = list-command |
The following are some of the more important default key bindings for vi-style editors:
|
a = append |
A = append at EOL |
|
c = change |
d = delete |
|
G = go to line |
h = backward character |
|
i = insert |
I = insert at BOL |
|
j = next line |
k = previous line |
|
l = forward line |
n = next match |
|
N = prev match |
p = put after |
|
P = put before |
r = repeat |
|
R = replace |
s = substitute |
|
u = undo |
x = delete character |
|
X = delete previous character |
y = yank |
|
~ = transpose case |
_ = last argument |
|
* = expand |
= = list expansion |
|
- = previous line |
+ = next line |
|
sp = forward char |
# = comment out command |
|
? = search history from beginning | |
|
/ = search history from current |
In insert mode, the following keystrokes are special:
|
^? = delete character |
^H = delete character |
|
^U = kill line |
^W = delete word |