Browse Source

fix(vi-mode): fix cursor change on visual mode (#11586)

Fixes #11586
Marc Cornellà 2 years ago
parent
commit
f7d903f3a3
1 changed files with 7 additions and 0 deletions
  1. 7 0
      plugins/vi-mode/vi-mode.plugin.zsh

+ 7 - 0
plugins/vi-mode/vi-mode.plugin.zsh

@@ -43,6 +43,13 @@ function _vi-mode-set-cursor-shape-for-keymap() {
   printf $'\e[%d q' "${_shape}"
 }
 
+function _visual-mode {
+  typeset -g VI_KEYMAP=visual
+  _vi-mode-set-cursor-shape-for-keymap "$VI_KEYMAP"
+  zle .visual-mode
+}
+zle -N visual-mode _visual-mode
+
 function _vi-mode-should-reset-prompt() {
   # If $VI_MODE_RESET_PROMPT_ON_MODE_CHANGE is unset (default), dynamically
   # check whether we're using the prompt to display vi-mode info