mirror of
https://github.com/romkatv/powerlevel10k.git
synced 2024-11-11 08:00:06 +00:00
87 lines
2.4 KiB
Text
87 lines
2.4 KiB
Text
p10k display
|
||
dir=short|long|auto
|
||
right=hide|show
|
||
empty_line=print|show|hide
|
||
ruler=print|show|hide
|
||
segment:kubecontext=show|hide
|
||
gap=show|hide
|
||
line1=show|hide
|
||
|
||
`print` controls all future prompts; it's weird to use it in POWERLEVEL9K_DISPLAY_PAST but it's not contradictory
|
||
|
||
# default values
|
||
POWERLEVEL9K_DISPLAY_NEW_TTY=()
|
||
POWERLEVEL9K_DISPLAY_CURRENT=()
|
||
POWERLEVEL9K_DISPLAY_PAST=()
|
||
POWERLEVEL9K_NEW_TTY_MAX_AGE_SECONDS=inf
|
||
|
||
# new way to show empty line
|
||
POWERLEVEL9K_DISPLAY_NEW_TTY=(empty_line=hide)
|
||
POWERLEVEL9K_DISPLAY_CURRENT=(empty_line=print)
|
||
POWERLEVEL9K_NEW_TTY_MAX_AGE_SECONDS=5
|
||
|
||
# deprecated.
|
||
POWERLEVEL9K_SHOW_RULER
|
||
POWERLEVEL9K_PROMPT_ADD_NEWLINE
|
||
|
||
if POWERLEVEL9K_PROMPT_ADD_NEWLINE is true; then
|
||
if any of the new flags are set {
|
||
print a warning and do nothing
|
||
} else {
|
||
POWERLEVEL9K_DISPLAY_NEW_TTY=(empty_line=hide)
|
||
POWERLEVEL9K_DISPLAY_CURRENT=(empty_line=print)
|
||
}
|
||
fi
|
||
|
||
if POWERLEVEL9K_SHOW_RULER is true; then
|
||
if any of the new flags are set {
|
||
print a warning and do nothing
|
||
} else {
|
||
POWERLEVEL9K_DISPLAY_CURRENT=(ruler=show)
|
||
}
|
||
fi
|
||
|
||
POWERLEVEL9K_DISPLAY_CURRENT=(ruler=show segment:kubecontext=hide segment:time=hide)
|
||
POWERLEVEL9K_DISPLAY_PAST=(ruler=hide segment:time=show)
|
||
POWERLEVEL9K_DISPLAY_NEW_TTY=(ruler=hide)
|
||
POWERLEVEL9K_NEW_TTY_MAX_AGE_SECONDS=5
|
||
POWERLEVEL9K_TIME_UPDATE_ON_COMMAND=true
|
||
|
||
# $BUFFER current command line
|
||
# $P9K_COMMAND the first word in $BUFFER after alias expansion
|
||
function p10k-on-buffer-change() {
|
||
case ${P9K_COMMAND:t} in
|
||
kubectl) p10k display segment:kubecontext=show;;
|
||
az) p10k display segment:azure=show;;
|
||
terraform) p10k display segment:azure=show segment:kubecontext=show;;
|
||
*) p10k display segment:azure=hide segment:kubecontext=hide;;
|
||
esac
|
||
}
|
||
|
||
# $P9K_PROMPT_TYPE instant|regular
|
||
# $P9K_TTY_TYPE new|old
|
||
function p10k-on-pre-prompt() {
|
||
p10k display segment:kubecontext=hide segment:azure=hide
|
||
p10k display line1=show right=show segment:time=hide
|
||
if [[ $P9K_TTY_TYPE == new ]]; then
|
||
p10k display empty_line=hide
|
||
else
|
||
p10k display empty_line=show
|
||
fi
|
||
}
|
||
|
||
function p10k-on-post-prompt() {
|
||
p10k display line1=hide right=hide segment:time=show
|
||
}
|
||
|
||
TODO: hiding gap kills right prompt; this is bad; implement it like ruler, with 3 values in _p9k_t?
|
||
TODO: add 1/right_frame
|
||
TODO: 2/left should kill the trailing space.
|
||
|
||
empty_line
|
||
ruler
|
||
1
|
||
1/gap
|
||
1/left
|
||
1/right
|
||
1/right/time
|