-
-
Notifications
You must be signed in to change notification settings - Fork 84
Vi (Vim) editing mode
Koichi Murase edited this page Sep 17, 2017
·
31 revisions
Vim/vim editing mode will be enabled by one of the following settings.
$if Bash
# Option #1
set editing-mode vi
$endif
if [[ $- == *i* ]]; then # in interactive session
# Option #2
set -o vi
# Option #3
# Or, the following setting can also enable the vi/vim mode.
bind 'set editing-mode vi'
# Option #4
# After the load of the ble.sh, the following setting also enables the vi/vim mode.
# This setting overwrites all the other settings presented so far.
bleopt default_keymap=vi
fi
The default mapping of SP
is magic-space
which performs history expansion before inserting a space. If you want to have just a space without history expansion, please add the following settings.
ble-bind -m vi_insert -f 'SP' 'self-insert'
The default mapping of C-k
is vi-insert/@norepeat kill-forward-line
. If you want to input digraphs with <C-k>{char1}{char2}
, please add the following settings:
ble-bind -m vi_insert -f 'C-k' 'vi-insert/insert-digraph'
The default mapping of C-o
is vi-insert/single-command-mode
. If you want to execute the command and load the next history entry with C-o
, please add the following settings:
ble-bind -m vi_insert -f 'C-o' 'vi-insert/@norepeat accept-and-next'
Or you may like C-@
, instead of C-o
, bound to accept-and-next
:
ble-bind -m vi_insert -f 'C-@' 'vi-insert/@norepeat accept-and-next'