Skip to content

Commit

Permalink
vi-mode: reset KEYMAP on accept-line (#7818)
Browse files Browse the repository at this point in the history
Fixes #7797
  • Loading branch information
mcornella committed May 19, 2019
1 parent 5aa6246 commit 5f7666e
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion plugins/vi-mode/vi-mode.plugin.zsh
Expand Up @@ -8,13 +8,24 @@ function zle-keymap-select() {
}

zle -N zle-keymap-select
zle -N edit-command-line

function vi-accept-line() {
VI_KEYMAP=main
zle accept-line
}

zle -N vi-accept-line


bindkey -v

# use custom accept-line widget to update $VI_KEYMAP
bindkey -M vicmd '^J' vi-accept-line
bindkey -M vicmd '^M' vi-accept-line

# allow v to edit the command line (standard behaviour)
autoload -Uz edit-command-line
zle -N edit-command-line
bindkey -M vicmd 'v' edit-command-line

# allow ctrl-p, ctrl-n for navigate history (standard behaviour)
Expand Down

0 comments on commit 5f7666e

Please sign in to comment.