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 } empty_line ruler 1 1/left_frame 1/left 1/left/time 1/gap