summaryrefslogblamecommitdiff
path: root/dynamic.txt
blob: 4807ddf6593497477fd0c0d5dffb30b6bc225201 (plain) (tree)
1
2
3
4
5
6
7
8






                                
                 








































                                                                                                                 

                                                               
                                  



















                                                                         

                                     

                                                      
 
 
                                                                                                   

                                            







            
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
}

${_p9k__'$_p9k_line_index'r-'$right'}

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