My zsh configuration
git clone https://github.com/m-col/zshrc
Files | Refs | Readme

Commit e33aace9ab20a9dc4b41bca22299901ff55ca265
Parent: 07e479ea7d43b15857eb64acb813bf28ad976534
Author: mcol <mcol@posteo.net>
Date: 2019-02-09 11:34:58 +0000
Committer: mcol <mcol@posteo.net>
Committed: 2019-02-09 11:34:58 +0000

fixed ban theme right prompt to not show random triangles

themes/ban.zsh-theme Modified

@@ -10,9 +10,11 @@
 # prompt segment shape: arrow or square
 if $is_ssh
 then
-    SEGMENT_SEPARATOR=$'\ue0b0'
+    SEGMENT_SEPARATOR_L=$'\ue0b0'
+    SEGMENT_SEPARATOR_R=$''
 else
-    SEGMENT_SEPARATOR=$''
+    SEGMENT_SEPARATOR_L=$''
+    SEGMENT_SEPARATOR_R=$''
 fi
 }
 
@@ -122,11 +124,12 @@
 
 
 ##### vi mode
-VIM_PROMPT="--INSERT--"
-export KEYTIMEOUT=1
+#VIM_PROMPT="--INSERT--"
+export KEYTIMEOUT=1	# reduce delay to 0.1s
 bindkey -v
 prompt_vi(){
-    prompt_segment default white $VIM_PROMPT
+    # only add to prompt if not empty
+    [[ -n $VIM_PROMPT ]] && prompt_segment default white $VIM_PROMPT
 }
 zle-line-init() { zle -K viins; }
 zle -N zle-line-init
@@ -135,6 +138,7 @@
 ## Main left prompt
 build_prompt() {
     RETVAL=$?
+    local SEGMENT_SEPARATOR=$SEGMENT_SEPARATOR_L
     prompt_context
     prompt_dir
     prompt_mes
@@ -143,6 +147,7 @@
 
 build_rprompt() {
     RETVAL=$?
+    local SEGMENT_SEPARATOR=$SEGMENT_SEPARATOR_R
     prompt_virtualenv
     prompt_vi
     prompt_git
@@ -154,18 +159,18 @@
 
 # redraw prompt on mode changes
 zle-keymap-select() {
-if [ $KEYMAP = vicmd ]; then
-    printf "\033[2 q" # block cursor
-    VIM_PROMPT="-- NORMAL --"
-else
-    printf "\033[4 q" # underline. Change 4 to 6 for vertical line
-    VIM_PROMPT=""
-fi
+    if [ $KEYMAP = vicmd ]; then
+	printf "\033[2 q" # block cursor
+	VIM_PROMPT="-- NORMAL --"
+    else
+	printf "\033[4 q" # underline. Change 4 to 6 for vertical line
+	VIM_PROMPT=""
+    fi
 
-PROMPT='%{%f%b%k%}$(build_prompt) '
-RPROMPT='%{%f%b%k%}$(build_rprompt)'
-zle reset-prompt
-zle -R
+    PROMPT='%{%f%b%k%}$(build_prompt) '
+    RPROMPT='%{%f%b%k%}$(build_rprompt)'
+    zle reset-prompt
+    zle -R
 }
 zle -N zle-keymap-select