Enable nvim-style cursors in zsh by mode

Update bashrc to enforce cursor style
This commit is contained in:
Daniel McKnight 2025-06-05 22:38:04 -07:00
parent 862488f597
commit 3d90957006
2 changed files with 36 additions and 1 deletions

View file

@ -80,7 +80,7 @@ if [ "$color_prompt" = yes ]; then
prompt_symbol=💀 prompt_symbol=💀
fi fi
PROMPT_COMMAND='if [[ $? != 0 && $? != 130 ]];then echo -e "⚠️\a";else echo -e "\a";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 " PS2="$chrome_color└>$color_off "
export VIRTUAL_ENV_DISABLE_PROMPT=1 export VIRTUAL_ENV_DISABLE_PROMPT=1

35
.zshrc
View file

@ -7,6 +7,41 @@ unsetopt beep
bindkey -v bindkey -v
# End of lines configured by zsh-newuser-install # 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 # SSH completion
zstyle ':completion:*:(ssh|scp|ftp|sftp|rsync):*' hosts $hosts zstyle ':completion:*:(ssh|scp|ftp|sftp|rsync):*' hosts $hosts