zsh: use vi mode with cursor shape matching mode

This commit is contained in:
Fernando Schauenburg 2021-08-09 19:21:03 +02:00
parent 590c5f4f8b
commit 483163dbbc

View file

@ -16,3 +16,18 @@ HISTFILE="${XDG_CACHE_HOME:-$HOME/.cache}/zsh/history"
HISTSIZE=1000000
SAVEHIST=1000000
# Use vi mode for line editing.
bindkey -v
# Use beam cursor on each new prompt
precmd() { echo -ne '\e[5 q'; }
# Switch cursor shape depending on editing mode.
zle-keymap-select() {
case $KEYMAP in
vicmd) echo -ne '\e[1 q';; # block cursor for command mode
viins|main) echo -ne '\e[5 q';; # beam cursor for insert mode
esac
}
zle -N zle-keymap-select