mirror of
https://github.com/frebib/dotfiles.git
synced 2024-06-14 12:57:23 +00:00
zsh: Print normal
in RPROMPT in Vim mode
Change the cursor to an `_` too, to make it abundantly clear that the mode has changed. Hopefully this stops me screwing up and accidentally entering vim mode without realising. Signed-off-by: Joe Groocock <me@frebib.net>
This commit is contained in:
parent
7be83b7b70
commit
895d0ff0aa
@ -4,6 +4,16 @@ _fishy_collapsed_wd() {
|
|||||||
pwd | sed -E 's|^'$HOME'|~|;s|(.*)/|\1%|;s|((^\|/)\.?[^/%]{1})[^/%]*|\1|g;s|(.*)%|\1/|'
|
pwd | sed -E 's|^'$HOME'|~|;s|(.*)/|\1%|;s|((^\|/)\.?[^/%]{1})[^/%]*|\1|g;s|(.*)%|\1/|'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function zle-line-init zle-keymap-select {
|
||||||
|
case $KEYMAP in
|
||||||
|
vicmd) printf '\e[3 q';; # block cursor
|
||||||
|
*) printf '\e[2 q';; # less visible cursor
|
||||||
|
esac
|
||||||
|
zle reset-prompt
|
||||||
|
}
|
||||||
|
zle -N zle-line-init
|
||||||
|
zle -N zle-keymap-select
|
||||||
|
|
||||||
# Required for dynamic prompt
|
# Required for dynamic prompt
|
||||||
setopt prompt_subst
|
setopt prompt_subst
|
||||||
|
|
||||||
@ -11,4 +21,8 @@ local user_color='green'; [ $UID -eq 0 ] && user_color='red'
|
|||||||
PROMPT="%n@%m %F{$user_color}\$(_fishy_collapsed_wd)%f%(!.#.>) "
|
PROMPT="%n@%m %F{$user_color}\$(_fishy_collapsed_wd)%f%(!.#.>) "
|
||||||
PROMPT2='%F{red}\ %f'
|
PROMPT2='%F{red}\ %f'
|
||||||
|
|
||||||
RPROMPT='%F{red}%(?.. %?)%f'
|
RPROMPT='%F{cyan}${${KEYMAP/vicmd/ normal}/(main|viins)/}%f%(?.. %F{red}%?%f)'
|
||||||
|
|
||||||
|
# Disable trailing space
|
||||||
|
# https://superuser.com/questions/655607/removing-the-useless-space-at-the-end-of-the-right-prompt-of-zsh-rprompt
|
||||||
|
ZLE_RPROMPT_INDENT=0
|
||||||
|
Loading…
Reference in New Issue
Block a user