]> git.rmz.io Git - dotfiles.git/commitdiff
zsh: don't reset prompt all the time
authorSamir Benmendil <me@rmz.io>
Wed, 19 Aug 2015 11:38:12 +0000 (12:38 +0100)
committerSamir Benmendil <me@rmz.io>
Wed, 19 Aug 2015 11:38:12 +0000 (12:38 +0100)
zsh/lib/prompt.zsh

index 3fc1c242758929cad8afc61f46eec3877ec8f751..683fab499979d002a7e06f6b9b71b4a429e7deee 100644 (file)
@@ -14,7 +14,8 @@ precmd() {
 vi_prompt_info() {
   local vicmd="$fg_bold[green]❰$reset_color%1G"
   local viins="$fg_bold[blue]❱$reset_color%1G"
-  printf '%s' "%{${${KEYMAP/vicmd/$vicmd}/(main|viins)/$viins}%}"
+  local map=${KEYMAP:-viins}
+  printf '%s' "%{${${map/vicmd/$vicmd}/(main|viins)/$viins}%}"
 }
 
 function zle-line-init zle-line-finish zle-keymap-select {
@@ -22,8 +23,8 @@ function zle-line-init zle-line-finish zle-keymap-select {
   zle -R
 }
 
-zle -N zle-line-init
-zle -N zle-line-finish
+zle -N zle-line-init
+zle -N zle-line-finish
 zle -N zle-keymap-select
 
 # reset zle on resize