|
|
@ -12,8 +12,11 @@ fi |
|
|
|
|
|
|
|
|
|
|
|
# The default styles. |
|
|
|
# The default styles. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Indicator to notify of vi insert mode. |
|
|
|
|
|
|
|
zstyle ':omz:prompt:vi' insert '>>>' |
|
|
|
|
|
|
|
|
|
|
|
# Indicator to notify of vi command mode. |
|
|
|
# Indicator to notify of vi command mode. |
|
|
|
zstyle ':omz:prompt' vicmd '<<<' |
|
|
|
zstyle ':omz:prompt:vi' command '<<<' |
|
|
|
|
|
|
|
|
|
|
|
# Indicator to notify of generating completion. |
|
|
|
# Indicator to notify of generating completion. |
|
|
|
zstyle ':omz:completion' indicator '...' |
|
|
|
zstyle ':omz:completion' indicator '...' |
|
|
@ -61,39 +64,19 @@ keyinfo=( |
|
|
|
'BackTab' "$terminfo[kcbt]" |
|
|
|
'BackTab' "$terminfo[kcbt]" |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
# Restores RPROMPT when exiting vicmd. |
|
|
|
# Displays the current vi mode. |
|
|
|
function vi-restore-rprompt() { |
|
|
|
function zle-line-init zle-line-finish zle-keymap-select { |
|
|
|
if (( $+RPROMPT_CACHED )); then |
|
|
|
if [[ "$KEYMAP" == 'vicmd' ]]; then |
|
|
|
RPROMPT="$RPROMPT_CACHED" |
|
|
|
zstyle -s ':omz:prompt:vi' command 'vi_prompt_info' |
|
|
|
unset RPROMPT_CACHED |
|
|
|
else |
|
|
|
zle reset-prompt |
|
|
|
zstyle -s ':omz:prompt:vi' insert 'vi_prompt_info' |
|
|
|
return 0 |
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
return 1 |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
add-zsh-trap INT vi-restore-rprompt |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Displays the current vi mode (command). |
|
|
|
|
|
|
|
function zle-keymap-select() { |
|
|
|
|
|
|
|
if ! vi-restore-rprompt && [[ "$KEYMAP" == 'vicmd' ]]; then |
|
|
|
|
|
|
|
RPROMPT_CACHED="$RPROMPT" |
|
|
|
|
|
|
|
zstyle -s ':omz:prompt' vicmd RPROMPT |
|
|
|
|
|
|
|
zle reset-prompt |
|
|
|
|
|
|
|
fi |
|
|
|
fi |
|
|
|
} |
|
|
|
zle reset-prompt |
|
|
|
zle -N zle-keymap-select |
|
|
|
zle -R |
|
|
|
|
|
|
|
|
|
|
|
# Resets the prompt after exiting edit-command-line. |
|
|
|
|
|
|
|
function zle-line-init() { |
|
|
|
|
|
|
|
vi-restore-rprompt |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
zle -N zle-line-init |
|
|
|
zle -N zle-line-init |
|
|
|
|
|
|
|
|
|
|
|
# Resets the prompt after the line has been accepted. |
|
|
|
|
|
|
|
function zle-line-finish() { |
|
|
|
|
|
|
|
vi-restore-rprompt |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
zle -N zle-line-finish |
|
|
|
zle -N zle-line-finish |
|
|
|
|
|
|
|
zle -N zle-keymap-select |
|
|
|
|
|
|
|
|
|
|
|
# Expands .... to ../.. |
|
|
|
# Expands .... to ../.. |
|
|
|
function expand-dot-to-parent-directory-path() { |
|
|
|
function expand-dot-to-parent-directory-path() { |
|
|
|