summaryrefslogtreecommitdiff
path: root/plugins/vi-mode/vi-mode.plugin.zsh
diff options
context:
space:
mode:
authorMichael Hauser-Raspe <michael.hauser-raspe@cantab.net>2014-03-14 10:14:47 +0000
committerMichael Hauser-Raspe <michael.hauser-raspe@cantab.net>2014-03-14 10:14:47 +0000
commit9e90bf0f23ff4343954e6533ccceace883cc16dd (patch)
tree1cbcfea8df39d7b6161ee85ffdc28aa220c9ec04 /plugins/vi-mode/vi-mode.plugin.zsh
parentee21fe94473404b58cbaea5b2c279f7a07c34ce1 (diff)
downloadzsh-9e90bf0f23ff4343954e6533ccceace883cc16dd.tar.gz
zsh-9e90bf0f23ff4343954e6533ccceace883cc16dd.tar.bz2
zsh-9e90bf0f23ff4343954e6533ccceace883cc16dd.zip
Added v as a keybinding to edit-command-line
taken from [here](http://www.zsh.org/mla/users/2008/msg01013.html) We want pressing v in command mode to take us to an editor (defined by the $VISUAL or $EDITOR variable or vi) to edit the current contents of the command line which (I believe) is a standard feature of bash vi-mode or other readline prompts (see [here](http://www.catonmat.net/download/bash-vi-editing-mode-cheat-sheet.pdf) and [here](http://www.catonmat.net/blog/bash-vi-editing-mode-cheat-sheet/) for source).
Diffstat (limited to 'plugins/vi-mode/vi-mode.plugin.zsh')
-rw-r--r--plugins/vi-mode/vi-mode.plugin.zsh6
1 files changed, 6 insertions, 0 deletions
diff --git a/plugins/vi-mode/vi-mode.plugin.zsh b/plugins/vi-mode/vi-mode.plugin.zsh
index a06100472..3ed32b3fb 100644
--- a/plugins/vi-mode/vi-mode.plugin.zsh
+++ b/plugins/vi-mode/vi-mode.plugin.zsh
@@ -17,9 +17,15 @@ function zle-keymap-select zle-line-init zle-line-finish {
zle -N zle-line-init
zle -N zle-line-finish
zle -N zle-keymap-select
+zle -N edit-command-line
+
bindkey -v
+# allow v to edit the command line (standard behaviour)
+autoload -Uz edit-command-line
+bindkey -M vicmd 'v' edit-command-line
+
# if mode indicator wasn't setup by theme, define default
if [[ "$MODE_INDICATOR" == "" ]]; then
MODE_INDICATOR="%{$fg_bold[red]%}<%{$fg[red]%}<<%{$reset_color%}"