summaryrefslogtreecommitdiff
path: root/plugins/vi-mode
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2019-05-08 20:40:36 +0200
committerGitHub <noreply@github.com>2019-05-08 20:40:36 +0200
commit0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534 (patch)
tree946d9f8b758ebdd63da96152ca56b154c99068da /plugins/vi-mode
parentafb028763cf40fc339e49011b2cba124dc108fcb (diff)
parentebc700be9b2fa7ae770a644093a5c46a8e323726 (diff)
downloadzsh-0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534.tar.gz
zsh-0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534.tar.bz2
zsh-0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534.zip
Merge branch 'master' into master
Diffstat (limited to 'plugins/vi-mode')
-rw-r--r--plugins/vi-mode/vi-mode.plugin.zsh13
1 files changed, 6 insertions, 7 deletions
diff --git a/plugins/vi-mode/vi-mode.plugin.zsh b/plugins/vi-mode/vi-mode.plugin.zsh
index 82a2f3040..a82e41439 100644
--- a/plugins/vi-mode/vi-mode.plugin.zsh
+++ b/plugins/vi-mode/vi-mode.plugin.zsh
@@ -1,14 +1,12 @@
# Updates editor information when the keymap changes.
function zle-keymap-select() {
+ # update keymap variable for the prompt
+ VI_KEYMAP=$KEYMAP
+
zle reset-prompt
zle -R
}
-# Ensure that the prompt is redrawn when the terminal size changes.
-TRAPWINCH() {
- zle && zle -R
-}
-
zle -N zle-keymap-select
zle -N edit-command-line
@@ -28,8 +26,9 @@ bindkey '^?' backward-delete-char
bindkey '^h' backward-delete-char
bindkey '^w' backward-kill-word
-# allow ctrl-r to perform backward search in history
+# allow ctrl-r and ctrl-s to search the history
bindkey '^r' history-incremental-search-backward
+bindkey '^s' history-incremental-search-forward
# allow ctrl-a and ctrl-e to move to beginning/end of line
bindkey '^a' beginning-of-line
@@ -41,7 +40,7 @@ if [[ "$MODE_INDICATOR" == "" ]]; then
fi
function vi_mode_prompt_info() {
- echo "${${KEYMAP/vicmd/$MODE_INDICATOR}/(main|viins)/}"
+ echo "${${VI_KEYMAP/vicmd/$MODE_INDICATOR}/(main|viins)/}"
}
# define right prompt, if it wasn't defined by a theme