diff --git a/.bashrc b/.bashrc index 06376d4..528d9f8 100644 --- a/.bashrc +++ b/.bashrc @@ -80,7 +80,7 @@ if [ "$color_prompt" = yes ]; then prompt_symbol=πŸ’€ fi PROMPT_COMMAND='if [[ $? != 0 && $? != 130 ]];then echo -e "⚠️\a";else echo -e "\a";fi' - PS1="$chrome_colorβ”Œβ”€β”€"'${debian_chroot:+('${path_color}'$debian_chroot'${chrome_color}')─}${VIRTUAL_ENV:+('${path_color}'$(realpath $VIRTUAL_ENV --relative-to $PWD --relative-base /home)'${chrome_color}')─}'"[${context_color}\u${chrome_color}${prompt_symbol}${context_color}\h${chrome_color}]─(${path_color}\w${chrome_color})\n${chrome_color}β””${context_color}${prompt}${color_off} " + PS1="$chrome_colorβ”Œβ”€β”€"'${debian_chroot:+('${path_color}'$debian_chroot'${chrome_color}')─}${VIRTUAL_ENV:+('${path_color}'$(realpath $VIRTUAL_ENV --relative-to $PWD --relative-base /home)'${chrome_color}')─}'"[${context_color}\u${chrome_color}${prompt_symbol}${context_color}\h${chrome_color}]─(${path_color}\w${chrome_color})\n${chrome_color}β””${context_color}${prompt}${color_off} \e[1 q" PS2="$chrome_colorβ””>$color_off " export VIRTUAL_ENV_DISABLE_PROMPT=1 diff --git a/.zshrc b/.zshrc index 9251aa9..a51ea3c 100644 --- a/.zshrc +++ b/.zshrc @@ -7,6 +7,41 @@ unsetopt beep bindkey -v # End of lines configured by zsh-newuser-install +# Configure cursor +function zle-keymap-select { + #RPS1="${${KEYMAP/vicmd/-- NORMAL --}/(main|viins)/-- INSERT --}" + #RPS2=$RPS1 + zle reset-prompt + + case $KEYMAP in + vicmd) + # vim Normal mode + echo -ne '\e[1 q' + ;; + viins) + # vim Insert mode + echo -ne '\e[3 q' + ;; + *) + # Default mode + echo -ne '\e[3 q' + ;; + esac +} +zle -N zle-keymap-select + +function zle-line-init { + # New prompt. Reset cursor to underline + echo -ne '\e[3 q' +} +zle -N zle-line-init + +function zle-line-finish { + # Prompt complete. Reset cursor to underline + echo -ne '\e[3 q' +} +zle -N zle-line-finish + # SSH completion zstyle ':completion:*:(ssh|scp|ftp|sftp|rsync):*' hosts $hosts