]> Sergey Matveev's repositories - dotfiles.git/commitdiff
Consolidate vi-mode display in prompt
authorSergey Matveev <stargrave@stargrave.org>
Mon, 21 Jun 2021 08:27:57 +0000 (11:27 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Mon, 21 Jun 2021 08:27:57 +0000 (11:27 +0300)
zsh/.zshrc

index 2f04f405d7c11c5f137d809fe317200896c54a45..a3ea22949fe45abb8c3f005934d84b4534412645 100644 (file)
@@ -50,13 +50,13 @@ bindkey -M isearch "^[[B" history-incremental-pattern-search-forward
 
 # Prompt {{{
 function zle-line-init zle-keymap-select {
-    mode_vi=${${KEYMAP/vicmd/+}/(main|viins)/-}
-    [[ $timer ]] && timer_show=$(( $SECONDS - $timer ))
+    local state="%#" timer_val="?"
+    [[ ${KEYMAP} == vicmd ]] && state="+"
+    [[ $timer ]] && timer_val=$(( $SECONDS - $timer ))
     prompt="%2~ "
-    prompt+="%U${timer_show}%u|"
+    prompt+="%U${timer_val}%u|"
     prompt+="%B%?%b"
-    prompt+="${mode_vi}"
-    prompt+="%B%F{magenta}%#%f%b "
+    prompt+="%B%F{magenta}${state}%f%b "
     PS1=$prompt
     zle reset-prompt
 }