New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Powerline9k theme causes slow command execution in Babun (Cygwin) on Windows 10 #314

Closed
bender-the-greatest opened this Issue Sep 9, 2016 · 4 comments

Comments

Projects
None yet
3 participants
@bender-the-greatest

bender-the-greatest commented Sep 9, 2016

When using the Powerlevel9k theme in Babun, commands take anywhere from 1-3 seconds for the carriage return to process (I might call it a short hang). For example, consider the following:

$ ls

After hitting RET to process the command, it will hang for the short time described above before listing the contents of the directory. And additionally, once the command completes, there is another hang before the prompt comes back for further command input. In case this is confusing, here's a shorter version:

  1. Type command to execute.
  2. Hit return, experience a short hang (usually 1-3 seconds).
  3. Command executes normally and completes.
  4. Experience another short hang similar to step 2.
  5. Prompt for further command input displays as normal.

I don't have this problem when using other themes, though unfortunately this is my favorite zsh theme lol. This might not seem like a big deal but this can add up to six seconds of execution time per command which gets annoying after a while, esp. when working with several short lived commands (e.g. ls, mkdir, rm, pwd, etc).

@bhilburn

This comment has been minimized.

Show comment
Hide comment
@bhilburn

bhilburn Sep 22, 2016

Owner

@metalseargolid - I just tagged a new release, v0.5.0, that cleans up some rendering. Can you update your checkout and give it a shot?

Owner

bhilburn commented Sep 22, 2016

@metalseargolid - I just tagged a new release, v0.5.0, that cleans up some rendering. Can you update your checkout and give it a shot?

@bender-the-greatest

This comment has been minimized.

Show comment
Hide comment
@bender-the-greatest

bender-the-greatest Oct 4, 2016

Just checked it out. It's more usable now but there is still a pause after the command execution. The delay before executing the command is gone though :)

bender-the-greatest commented Oct 4, 2016

Just checked it out. It's more usable now but there is still a pause after the command execution. The delay before executing the command is gone though :)

@bhilburn

This comment has been minimized.

Show comment
Hide comment
@bhilburn

bhilburn Oct 5, 2016

Owner

Awesome! As I'm not a Cygwin user, I'm afraid I'm not sure how to continue to improve this. I'll close this out unless you have further suggestions!

Owner

bhilburn commented Oct 5, 2016

Awesome! As I'm not a Cygwin user, I'm afraid I'm not sure how to continue to improve this. I'll close this out unless you have further suggestions!

@primercuervo

This comment has been minimized.

Show comment
Hide comment
@primercuervo

primercuervo Jul 13, 2018

Not sure if it's worth reopening, but I'm facing this right now on cygwin (not using it by choice). Running zsh with PowerLevel is unusably slow (about 4 seconds). Im running the tag v0.6.5

commit d031b3e (HEAD -> master, tag: v0.6.5, origin/next, origin/master, origin/HEAD)
Author: Dominik Ritter dritter03@googlemail.com
Date: Mon Jul 9 21:30:28 2018 +0200

Fix kubernetes segment

I ran it with verbose symbols and I see that with every command a considerable large amount of queries is run even with few segments:

    $ zsh -xv
    $ ls

gives the following:


+omz_termsupport_preexec:1> emulate -L zsh
+omz_termsupport_preexec:2> setopt extended_glob
+omz_termsupport_preexec:4> [[ '' == true ]]
+omz_termsupport_preexec:9> local CMD=ls
+omz_termsupport_preexec:10> local LINE='ls --color=tty > large.txt'
+omz_termsupport_preexec:12> title '$CMD' '%100>...>$LINE%<<'
+title:1> emulate -L zsh
+title:2> setopt prompt_subst
+title:4> [[ '' == *term* ]]
+title:8> : '%100>...>$LINE%<<'
+title:10> case xterm-256color (cygwin | xterm*)
+title:12> print -Pn '\e]2;%100\>...\>\$LINE%\<\<\a'
+title:13> print -Pn '\e]1;\$CMD\a'
+powerlevel9k_preexec:1> _P9K_TIMER_START=1531472296.8957684040
+zsh:2> ls '--color=tty'
+omz_termsupport_precmd:1> emulate -L zsh
+omz_termsupport_precmd:3> [[ '' == true ]]
+omz_termsupport_precmd:7> title '%15<..<%~%<<' '%n@%m: %~'
+title:1> emulate -L zsh
+title:2> setopt prompt_subst
+title:4> [[ '' == *term* ]]
+title:8> : '%n@%m: %~'
+title:10> case xterm-256color (cygwin | xterm*)
+title:12> print -Pn '\e]2;%n@%m:\ %~\a'
+title:13> print -Pn '\e]1;%15\<..\<%~%\<\<\a'
+powerlevel9k_prepare_prompts:1> local RETVAL RPROMPT_PREFIX RPROMPT_SUFFIX
+powerlevel9k_prepare_prompts:2> RETVAL=0
+powerlevel9k_prepare_prompts:3> RETVALS=( 0 )
+powerlevel9k_prepare_prompts:5> _P9K_COMMAND_DURATION=0.11414551734924316
+powerlevel9k_prepare_prompts:8> _P9K_TIMER_START=0x7FFFFFFF
+powerlevel9k_prepare_prompts:10> [[ '' == true ]]
+powerlevel9k_prepare_prompts:27> PROMPT='%f%b%k$(build_left_prompt)'
+powerlevel9k_prepare_prompts:28> RPROMPT_PREFIX=''
+powerlevel9k_prepare_prompts:29> RPROMPT_SUFFIX=''
+powerlevel9k_prepare_prompts:32> [[ '' != true ]]
+powerlevel9k_prepare_prompts:33> RPROMPT='%f%b%k$(build_right_prompt)%{$reset_color%}'
+powerlevel9k_prepare_prompts:36> local NEWLINE=$'\n'
+powerlevel9k_prepare_prompts:39> [[ false == true ]]
+powerlevel9k_prepare_prompts:46> [[ '' == Yes ]]
+zsh:3> build_left_prompt
+build_left_prompt:1> local index=1
+build_left_prompt:2> local element
+build_left_prompt:3> element=dir
+build_left_prompt:5> element=dir
+build_left_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_left_prompt:12> prompt_dir left 1
+prompt_dir:2> local current_path=/cygdrive/c/Users/Z642832
+prompt_dir:4> [[ '' != true ]]
+prompt_dir:4> current_path='~'
+prompt_dir:6> local paths directory test_dir test_dir_length trunc_path threshhold
+prompt_dir:8> ((  1 > 1  ))
+prompt_dir:8> paths=( )
+prompt_dir:10> [[ -n '' || '' == truncate_with_folder_marker || '' == truncate_to_last ]]
+prompt_dir:165> local path_opt='~'
+prompt_dir:167> typeset -AH dir_states
+prompt_dir:168> dir_states=( DEFAULT FOLDER_ICON HOME HOME_ICON HOME_SUBFOLDER HOME_SUB_ICON NOT_WRITABLE LOCK_ICON ETC ETC_ICON )
+prompt_dir:175> print -P '%~'
+prompt_dir:175> local state_path='~'
+prompt_dir:176> local current_state=DEFAULT
+prompt_dir:177> [[ '~' == /etc* ]]
+prompt_dir:179> [[ '' == true ]]
+prompt_dir:181> [[ '~' == \~ ]]
+prompt_dir:182> current_state=HOME
+prompt_dir:188> local bld_on bld_off dir_state_foreground dir_state_user_foreground
+prompt_dir:190> [[ false == true ]]
+prompt_dir:194> bld_on=''
+prompt_dir:195> bld_off=''
+prompt_dir:198> local dir_state_user_foreground=POWERLEVEL9K_DIR_HOME_FOREGROUND
+prompt_dir:199> local dir_state_foreground=''
+prompt_dir:200> [[ -z '' ]]
+prompt_dir:200> dir_state_foreground=black
+prompt_dir:202> local dir_name base_name
+prompt_dir:204> dir_name='~'
+prompt_dir:205> base_name='~'
+prompt_dir:208> [[ -n '' ]]
+prompt_dir:222> [[ '~' == / || '~' == \~ ]]
+prompt_dir:223> current_path='~'
+prompt_dir:235> [[ '' == true ]]
+prompt_dir:240> [[ -n '' ]]
+prompt_dir:247> [[ / != / ]]
+prompt_dir:251> [[ '~' != \~ ]]
+prompt_dir:256> left_prompt_segment prompt_dir_HOME 1 blue black '~' HOME_ICON
+left_prompt_segment:1> local current_index=1
+left_prompt_segment:3> local joined
+left_prompt_segment:4> segmentShouldBeJoined 1 1 dir
+segmentShouldBeJoined:1> local current_index=1
+segmentShouldBeJoined:2> local last_segment_index=1
+segmentShouldBeJoined:4> local -a elements
+segmentShouldBeJoined:5> elements=( dir )
+segmentShouldBeJoined:7> local current_segment=dir
+segmentShouldBeJoined:8> local joined=false
+segmentShouldBeJoined:9> [[ dir == _joined ]]
+segmentShouldBeJoined:36> [[ false == true ]]
+segmentShouldBeJoined:39> return 1
+left_prompt_segment:4> joined=false
+left_prompt_segment:7> local BACKGROUND_USER_VARIABLE=POWERLEVEL9K_DIR_HOME_BACKGROUND
+left_prompt_segment:8> local BG_COLOR_MODIFIER=''
+left_prompt_segment:9> [[ -n '' ]]
+left_prompt_segment:12> local FOREGROUND_USER_VARIABLE=POWERLEVEL9K_DIR_HOME_FOREGROUND
+left_prompt_segment:13> local FG_COLOR_MODIFIER=''
+left_prompt_segment:14> [[ -n '' ]]
+left_prompt_segment:16> local bg fg
+left_prompt_segment:17> [[ -n blue ]]
+left_prompt_segment:17> bg=+left_prompt_segment:17> backgroundColor blue
+backgroundColor:1> [[ -z blue ]]
+backgroundColor:4> getColor blue
+getColor:2> [[ blue = <-> ]]
+getColor:8> local named='%K{blue}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{blue}'
+getColor:12> printf %q $'\C-[[44m'
+getColor:12> local quoted='$'\''\033'\''\[44m'
+getColor:13> [[ '$'\''\033'\''\[44m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n blue
+backgroundColor:4> echo -n '%K{blue}'
+left_prompt_segment:17> bg='%K{blue}'
+left_prompt_segment:18> [[ -n black ]]
+left_prompt_segment:18> fg=+left_prompt_segment:18> foregroundColor black
+foregroundColor:1> [[ -z black ]]
+foregroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+foregroundColor:4> echo -n '%F{black}'
+left_prompt_segment:18> fg='%F{black}'
+left_prompt_segment:20> [[ NONE != NONE ]]
+left_prompt_segment:26> isSameColor NONE blue
+isSameColor:1> [[ NONE == NONE ]]
+isSameColor:2> return 1
+left_prompt_segment:39> echo -n '%K{blue} '
+left_prompt_segment:42> local visual_identifier
+left_prompt_segment:43> [[ -n HOME_ICON ]]
+left_prompt_segment:44> visual_identifier=+left_prompt_segment:44> print_icon HOME_ICON
+print_icon:1> local icon_name=HOME_ICON
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_HOME_ICON
+print_icon:3> defined POWERLEVEL9K_HOME_ICON
+defined:1> local varname=POWERLEVEL9K_HOME_ICON
+defined:3> typeset -p POWERLEVEL9K_HOME_ICON
+print_icon:6> echo -n ''
+left_prompt_segment:44> visual_identifier=''
+left_prompt_segment:45> [[ -n '' ]]
+left_prompt_segment:58> echo -n ''
+left_prompt_segment:60> [[ -n '~' ]]
+left_prompt_segment:60> echo -n '%F{black}~'
+left_prompt_segment:61> echo -n ' '
+left_prompt_segment:63> CURRENT_BG=blue
+left_prompt_segment:64> last_left_element_index=1
+build_left_prompt:15> index=2
+build_left_prompt:18> left_prompt_end
+left_prompt_end:1> [[ -n blue ]]
+left_prompt_end:2> print_icon LEFT_SEGMENT_SEPARATOR
+print_icon:1> local icon_name=LEFT_SEGMENT_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+print_icon:6> echo -n 
+left_prompt_end:2> echo -n '%k%F{blue}'
+left_prompt_end:6> print_icon LEFT_SEGMENT_END_SEPARATOR
+print_icon:1> local icon_name=LEFT_SEGMENT_END_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+print_icon:6> echo -n ' '
+left_prompt_end:6> echo -n '%f '
+left_prompt_end:7> CURRENT_BG=''
+zsh:3> build_right_prompt
+build_right_prompt:1> local index=1
+build_right_prompt:2> local element
+build_right_prompt:3> element=status
+build_right_prompt:5> element=status
+build_right_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_right_prompt:12> prompt_status right 1
+prompt_status:1> local ec_text
+prompt_status:2> local ec_sum
+prompt_status:3> local ec
+prompt_status:5> [[ true == true ]]
+prompt_status:6> ((  1 > 1  ))
+prompt_status:10> ec_text=+prompt_status:10> exit_code_or_status ''
+exit_code_or_status:1> local ec=''
+exit_code_or_status:2> [[ false = true ]]
+exit_code_or_status:4> ((  ec <= 128  ))
+exit_code_or_status:5> echo ''
+prompt_status:10> ec_text=''
+prompt_status:11> ec_sum=''
+prompt_status:25> ((  ec_sum > 0  ))
+prompt_status:31> [[ true == true ]]
+prompt_status:31> [[ true == true ]]
+prompt_status:32> right_prompt_segment prompt_status_OK 1 black green '' OK_ICON
+right_prompt_segment:1> local current_index=1
+right_prompt_segment:4> local joined
+right_prompt_segment:5> segmentShouldBeJoined 1 1 'status command_execution_time ram'
+segmentShouldBeJoined:1> local current_index=1
+segmentShouldBeJoined:2> local last_segment_index=1
+segmentShouldBeJoined:4> local -a elements
+segmentShouldBeJoined:5> elements=( status command_execution_time ram )
+segmentShouldBeJoined:7> local current_segment=status
+segmentShouldBeJoined:8> local joined=false
+segmentShouldBeJoined:9> [[ status == _joined ]]
+segmentShouldBeJoined:36> [[ false == true ]]
+segmentShouldBeJoined:39> return 1
+right_prompt_segment:5> joined=false
+right_prompt_segment:8> local BACKGROUND_USER_VARIABLE=POWERLEVEL9K_STATUS_OK_BACKGROUND
+right_prompt_segment:9> local BG_COLOR_MODIFIER=''
+right_prompt_segment:10> [[ -n '' ]]
+right_prompt_segment:13> local FOREGROUND_USER_VARIABLE=POWERLEVEL9K_STATUS_OK_FOREGROUND
+right_prompt_segment:14> local FG_COLOR_MODIFIER=''
+right_prompt_segment:15> [[ -n '' ]]
+right_prompt_segment:17> local bg fg
+right_prompt_segment:18> [[ -n black ]]
+right_prompt_segment:18> bg=+right_prompt_segment:18> backgroundColor black
+backgroundColor:1> [[ -z black ]]
+backgroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+backgroundColor:4> echo -n '%K{black}'
+right_prompt_segment:18> bg='%K{black}'
+right_prompt_segment:19> [[ -n green ]]
+right_prompt_segment:19> fg=+right_prompt_segment:19> foregroundColor green
+foregroundColor:1> [[ -z green ]]
+foregroundColor:4> getColor green
+getColor:2> [[ green = <-> ]]
+getColor:8> local named='%K{green}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{green}'
+getColor:12> printf %q $'\C-[[42m'
+getColor:12> local quoted='$'\''\033'\''\[42m'
+getColor:13> [[ '$'\''\033'\''\[42m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n green
+foregroundColor:4> echo -n '%F{green}'
+right_prompt_segment:19> fg='%F{green}'
+right_prompt_segment:23> [[ NONE != NONE ]]
+right_prompt_segment:28> [[ false == false ]]
+right_prompt_segment:29> isSameColor NONE black
+isSameColor:1> [[ NONE == NONE ]]
+isSameColor:2> return 1
+right_prompt_segment:39> foregroundColor black
+foregroundColor:1> [[ -z black ]]
+foregroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+foregroundColor:4> echo -n '%F{black}'
+right_prompt_segment:39> print_icon RIGHT_SEGMENT_SEPARATOR
+print_icon:1> local icon_name=RIGHT_SEGMENT_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:6> echo -n 
+right_prompt_segment:39> echo -n '%F{black}%f'
+right_prompt_segment:43> local visual_identifier
+right_prompt_segment:44> [[ -n OK_ICON ]]
+right_prompt_segment:45> visual_identifier=+right_prompt_segment:45> print_icon OK_ICON
+print_icon:1> local icon_name=OK_ICON
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_OK_ICON
+print_icon:3> defined POWERLEVEL9K_OK_ICON
+defined:1> local varname=POWERLEVEL9K_OK_ICON
+defined:3> typeset -p POWERLEVEL9K_OK_ICON
+print_icon:6> echo -n ✔
+right_prompt_segment:45> visual_identifier=✔
+right_prompt_segment:46> [[ -n ✔ ]]
+right_prompt_segment:50> [[ -n '' ]]
+right_prompt_segment:52> local visual_identifier_color_variable=POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+right_prompt_segment:53> set_default POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR green
+set_default:1> local varname=POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+set_default:2> local default_value=green
+set_default:4> defined POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+defined:1> local varname=POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+defined:3> typeset -p POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+set_default:4> typeset -g 'POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR=green'
+right_prompt_segment:54> visual_identifier='%F{green%}✔%f'
+right_prompt_segment:58> echo -n '%K{black}%F{green}'
+right_prompt_segment:61> [[ false == false ]]
+right_prompt_segment:61> echo -n ' '
+right_prompt_segment:64> [[ -n '' ]]
+right_prompt_segment:66> echo -n '%F{green%}✔%f'
+right_prompt_segment:68> CURRENT_RIGHT_BG=black
+right_prompt_segment:69> last_right_element_index=1
+build_right_prompt:15> index=2
+build_right_prompt:3> element=command_execution_time
+build_right_prompt:5> element=command_execution_time
+build_right_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_right_prompt:12> prompt_command_execution_time right 2
+prompt_command_execution_time:1> set_default POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD 3
+set_default:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+set_default:2> local default_value=3
+set_default:4> defined POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+defined:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+defined:3> typeset -p POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+set_default:4> typeset -g 'POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=3'
+prompt_command_execution_time:2> set_default POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION 2
+set_default:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+set_default:2> local default_value=2
+set_default:4> defined POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+defined:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+defined:3> typeset -p POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+set_default:4> typeset -g 'POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=2'
+prompt_command_execution_time:9> local humanReadableDuration
+prompt_command_execution_time:10> ((  _P9K_COMMAND_DURATION > 3600  ))
+prompt_command_execution_time:12> ((  _P9K_COMMAND_DURATION > 60  ))
+prompt_command_execution_time:17> [[ 2 == 0 ]]
+prompt_command_execution_time:22> typeset -F 2 humanReadableDuration
+prompt_command_execution_time:24> humanReadableDuration=0.11414551734924316
+prompt_command_execution_time:27> ((  _P9K_COMMAND_DURATION >= POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD  ))
+build_right_prompt:15> index=3
+build_right_prompt:3> element=ram
+build_right_prompt:5> element=ram
+build_right_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_right_prompt:12> prompt_ram right 3
+prompt_ram:1> local base=''
+prompt_ram:2> local ramfree=0
+prompt_ram:3> [[ Windows == OSX ]]
+prompt_ram:11> [[ Windows == BSD ]]
+prompt_ram:14> ramfree=+prompt_ram:14> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' -o -E 'MemAvailable:\s+[0-9]+' /proc/meminfo
+prompt_ram:14> ramfree=+prompt_ram:14> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' -o '[0-9]*'
+prompt_ram:14> ramfree=''
+prompt_ram:15> base=K
+prompt_ram:19> printSizeHumanReadable '' K
+printSizeHumanReadable:1> typeset -F 2 size
+printSizeHumanReadable:2> size=+0.00001
+printSizeHumanReadable:3> local extension
+printSizeHumanReadable:4> extension=( B K M G T P E Z Y )
+printSizeHumanReadable:5> local index=1
+printSizeHumanReadable:8> [[ -n K ]]
+printSizeHumanReadable:9> local idx
+printSizeHumanReadable:10> idx=B
+printSizeHumanReadable:11> [[ K == B ]]
+printSizeHumanReadable:14> index=2
+printSizeHumanReadable:10> idx=K
+printSizeHumanReadable:11> [[ K == K ]]
+printSizeHumanReadable:12> break
+printSizeHumanReadable:18> ((  (size / 1024) > 0.1  ))
+printSizeHumanReadable:23> echo 0.00K
+prompt_ram:19> right_prompt_segment prompt_ram 3 yellow black 0.00K RAM_ICON
+right_prompt_segment:1> local current_index=3
+right_prompt_segment:4> local joined
+right_prompt_segment:5> segmentShouldBeJoined 3 1 'status command_execution_time ram'
+segmentShouldBeJoined:1> local current_index=3
+segmentShouldBeJoined:2> local last_segment_index=1
+segmentShouldBeJoined:4> local -a elements
+segmentShouldBeJoined:5> elements=( status command_execution_time ram )
+segmentShouldBeJoined:7> local current_segment=ram
+segmentShouldBeJoined:8> local joined=false
+segmentShouldBeJoined:9> [[ ram == _joined ]]
+segmentShouldBeJoined:36> [[ false == true ]]
+segmentShouldBeJoined:39> return 1
+right_prompt_segment:5> joined=false
+right_prompt_segment:8> local BACKGROUND_USER_VARIABLE=POWERLEVEL9K_RAM_BACKGROUND
+right_prompt_segment:9> local BG_COLOR_MODIFIER=''
+right_prompt_segment:10> [[ -n '' ]]
+right_prompt_segment:13> local FOREGROUND_USER_VARIABLE=POWERLEVEL9K_RAM_FOREGROUND
+right_prompt_segment:14> local FG_COLOR_MODIFIER=''
+right_prompt_segment:15> [[ -n '' ]]
+right_prompt_segment:17> local bg fg
+right_prompt_segment:18> [[ -n yellow ]]
+right_prompt_segment:18> bg=+right_prompt_segment:18> backgroundColor yellow
+backgroundColor:1> [[ -z yellow ]]
+backgroundColor:4> getColor yellow
+getColor:2> [[ yellow = <-> ]]
+getColor:8> local named='%K{yellow}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{yellow}'
+getColor:12> printf %q $'\C-[[43m'
+getColor:12> local quoted='$'\''\033'\''\[43m'
+getColor:13> [[ '$'\''\033'\''\[43m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n yellow
+backgroundColor:4> echo -n '%K{yellow}'
+right_prompt_segment:18> bg='%K{yellow}'
+right_prompt_segment:19> [[ -n black ]]
+right_prompt_segment:19> fg=+right_prompt_segment:19> foregroundColor black
+foregroundColor:1> [[ -z black ]]
+foregroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+foregroundColor:4> echo -n '%F{black}'
+right_prompt_segment:19> fg='%F{black}'
+right_prompt_segment:23> [[ black != NONE ]]
+right_prompt_segment:25> echo -n ' %f'
+right_prompt_segment:28> [[ false == false ]]
+right_prompt_segment:29> isSameColor black yellow
+isSameColor:1> [[ black == NONE || yellow == NONE ]]
+isSameColor:5> getColorCode black
+getColorCode:2> [[ black = <-> ]]
+getColorCode:12> typeset -A codes
+getColorCode:15> codes[black]=000
+getColorCode:16> codes[maroon]=001
+getColorCode:17> codes[green]=002
+getColorCode:18> codes[olive]=003
+getColorCode:19> codes[navy]=004
+getColorCode:20> codes[purple]=005
+getColorCode:21> codes[teal]=006
+getColorCode:22> codes[silver]=007
+getColorCode:23> codes[grey]=008
+getColorCode:24> codes[red]=009
+getColorCode:25> codes[lime]=010
+getColorCode:26> codes[yellow]=011
+getColorCode:27> codes[blue]=012
+getColorCode:28> codes[fuchsia]=013
+getColorCode:29> codes[aqua]=014
+getColorCode:30> codes[white]=015
+getColorCode:31> codes[grey0]=016
+getColorCode:32> codes[navyblue]=017
+getColorCode:33> codes[darkblue]=018
+getColorCode:34> codes[blue3]=019
+getColorCode:35> codes[blue3]=020
+getColorCode:36> codes[blue1]=021
+getColorCode:37> codes[darkgreen]=022
+getColorCode:38> codes[deepskyblue4]=023
+getColorCode:39> codes[deepskyblue4]=024
+getColorCode:40> codes[deepskyblue4]=025
+getColorCode:41> codes[dodgerblue3]=026
+getColorCode:42> codes[dodgerblue2]=027
+getColorCode:43> codes[green4]=028
+getColorCode:44> codes[springgreen4]=029
+getColorCode:45> codes[turquoise4]=030
+getColorCode:46> codes[deepskyblue3]=031
+getColorCode:47> codes[deepskyblue3]=032
+getColorCode:48> codes[dodgerblue1]=033
+getColorCode:49> codes[green3]=034
+getColorCode:50> codes[springgreen3]=035
+getColorCode:51> codes[darkcyan]=036
+getColorCode:52> codes[lightseagreen]=037
+getColorCode:53> codes[deepskyblue2]=038
+getColorCode:54> codes[deepskyblue1]=039
+getColorCode:55> codes[green3]=040
+getColorCode:56> codes[springgreen3]=041
+getColorCode:57> codes[springgreen2]=042
+getColorCode:58> codes[cyan3]=043
+getColorCode:59> codes[darkturquoise]=044
+getColorCode:60> codes[turquoise2]=045
+getColorCode:61> codes[green1]=046
+getColorCode:62> codes[springgreen2]=047
+getColorCode:63> codes[springgreen1]=048
+getColorCode:64> codes[mediumspringgreen]=049
+getColorCode:65> codes[cyan2]=050
+getColorCode:66> codes[cyan1]=051
+getColorCode:67> codes[darkred]=052
+getColorCode:68> codes[deeppink4]=053
+getColorCode:69> codes[purple4]=054
+getColorCode:70> codes[purple4]=055
+getColorCode:71> codes[purple3]=056
+getColorCode:72> codes[blueviolet]=057
+getColorCode:73> codes[orange4]=058
+getColorCode:74> codes[grey37]=059
+getColorCode:75> codes[mediumpurple4]=060
+getColorCode:76> codes[slateblue3]=061
+getColorCode:77> codes[slateblue3]=062
+getColorCode:78> codes[royalblue1]=063
+getColorCode:79> codes[chartreuse4]=064
+getColorCode:80> codes[darkseagreen4]=065
+getColorCode:81> codes[paleturquoise4]=066
+getColorCode:82> codes[steelblue]=067
+getColorCode:83> codes[steelblue3]=068
+getColorCode:84> codes[cornflowerblue]=069
+getColorCode:85> codes[chartreuse3]=070
+getColorCode:86> codes[darkseagreen4]=071
+getColorCode:87> codes[cadetblue]=072
+getColorCode:88> codes[cadetblue]=073
+getColorCode:89> codes[skyblue3]=074
+getColorCode:90> codes[steelblue1]=075
+getColorCode:91> codes[chartreuse3]=076
+getColorCode:92> codes[palegreen3]=077
+getColorCode:93> codes[seagreen3]=078
+getColorCode:94> codes[aquamarine3]=079
+getColorCode:95> codes[mediumturquoise]=080
+getColorCode:96> codes[steelblue1]=081
+getColorCode:97> codes[chartreuse2]=082
+getColorCode:98> codes[seagreen2]=083
+getColorCode:99> codes[seagreen1]=084
+getColorCode:100> codes[seagreen1]=085
+getColorCode:101> codes[aquamarine1]=086
+getColorCode:102> codes[darkslategray2]=087
+getColorCode:103> codes[darkred]=088
+getColorCode:104> codes[deeppink4]=089
+getColorCode:105> codes[darkmagenta]=090
+getColorCode:106> codes[darkmagenta]=091
+getColorCode:107> codes[darkviolet]=092
+getColorCode:108> codes[purple]=093
+getColorCode:109> codes[orange4]=094
+getColorCode:110> codes[lightpink4]=095
+getColorCode:111> codes[plum4]=096
+getColorCode:112> codes[mediumpurple3]=097
+getColorCode:113> codes[mediumpurple3]=098
+getColorCode:114> codes[slateblue1]=099
+getColorCode:115> codes[yellow4]=100
+getColorCode:116> codes[wheat4]=101
+getColorCode:117> codes[grey53]=102
+getColorCode:118> codes[lightslategrey]=103
+getColorCode:119> codes[mediumpurple]=104
+getColorCode:120> codes[lightslateblue]=105
+getColorCode:121> codes[yellow4]=106
+getColorCode:122> codes[darkolivegreen3]=107
+getColorCode:123> codes[darkseagreen]=108
+getColorCode:124> codes[lightskyblue3]=109
+getColorCode:125> codes[lightskyblue3]=110
+getColorCode:126> codes[skyblue2]=111
+getColorCode:127> codes[chartreuse2]=112
+getColorCode:128> codes[darkolivegreen3]=113
+getColorCode:129> codes[palegreen3]=114
+getColorCode:130> codes[darkseagreen3]=115
+getColorCode:131> codes[darkslategray3]=116
+getColorCode:132> codes[skyblue1]=117
+getColorCode:133> codes[chartreuse1]=118
+getColorCode:134> codes[lightgreen]=119
+getColorCode:135> codes[lightgreen]=120
+getColorCode:136> codes[palegreen1]=121
+getColorCode:137> codes[aquamarine1]=122
+getColorCode:138> codes[darkslategray1]=123
+getColorCode:139> codes[red3]=124
+getColorCode:140> codes[deeppink4]=125
+getColorCode:141> codes[mediumvioletred]=126
+getColorCode:142> codes[magenta3]=127
+getColorCode:143> codes[darkviolet]=128
+getColorCode:144> codes[purple]=129
+getColorCode:145> codes[darkorange3]=130
+getColorCode:146> codes[indianred]=131
+getColorCode:147> codes[hotpink3]=132
+getColorCode:148> codes[mediumorchid3]=133
+getColorCode:149> codes[mediumorchid]=134
+getColorCode:150> codes[mediumpurple2]=135
+getColorCode:151> codes[darkgoldenrod]=136
+getColorCode:152> codes[lightsalmon3]=137
+getColorCode:153> codes[rosybrown]=138
+getColorCode:154> codes[grey63]=139
+getColorCode:155> codes[mediumpurple2]=140
+getColorCode:156> codes[mediumpurple1]=141
+getColorCode:157> codes[gold3]=142
+getColorCode:158> codes[darkkhaki]=143
+getColorCode:159> codes[navajowhite3]=144
+getColorCode:160> codes[grey69]=145
+getColorCode:161> codes[lightsteelblue3]=146
+getColorCode:162> codes[lightsteelblue]=147
+getColorCode:163> codes[yellow3]=148
+getColorCode:164> codes[darkolivegreen3]=149
+getColorCode:165> codes[darkseagreen3]=150
+getColorCode:166> codes[darkseagreen2]=151
+getColorCode:167> codes[lightcyan3]=152
+getColorCode:168> codes[lightskyblue1]=153
+getColorCode:169> codes[greenyellow]=154
+getColorCode:170> codes[darkolivegreen2]=155
+getColorCode:171> codes[palegreen1]=156
+getColorCode:172> codes[darkseagreen2]=157
+getColorCode:173> codes[darkseagreen1]=158
+getColorCode:174> codes[paleturquoise1]=159
+getColorCode:175> codes[red3]=160
+getColorCode:176> codes[deeppink3]=161
+getColorCode:177> codes[deeppink3]=162
+getColorCode:178> codes[magenta3]=163
+getColorCode:179> codes[magenta3]=164
+getColorCode:180> codes[magenta2]=165
+getColorCode:181> codes[darkorange3]=166
+getColorCode:182> codes[indianred]=167
+getColorCode:183> codes[hotpink3]=168
+getColorCode:184> codes[hotpink2]=169
+getColorCode:185> codes[orchid]=170
+getColorCode:186> codes[mediumorchid1]=171
+getColorCode:187> codes[orange3]=172
+getColorCode:188> codes[lightsalmon3]=173
+getColorCode:189> codes[lightpink3]=174
+getColorCode:190> codes[pink3]=175
+getColorCode:191> codes[plum3]=176
+getColorCode:192> codes[violet]=177
+getColorCode:193> codes[gold3]=178
+getColorCode:194> codes[lightgoldenrod3]=179
+getColorCode:195> codes[tan]=180
+getColorCode:196> codes[mistyrose3]=181
+getColorCode:197> codes[thistle3]=182
+getColorCode:198> codes[plum2]=183
+getColorCode:199> codes[yellow3]=184
+getColorCode:200> codes[khaki3]=185
+getColorCode:201> codes[lightgoldenrod2]=186
+getColorCode:202> codes[lightyellow3]=187
+getColorCode:203> codes[grey84]=188
+getColorCode:204> codes[lightsteelblue1]=189
+getColorCode:205> codes[yellow2]=190
+getColorCode:206> codes[darkolivegreen1]=191
+getColorCode:207> codes[darkolivegreen1]=192
+getColorCode:208> codes[darkseagreen1]=193
+getColorCode:209> codes[honeydew2]=194
+getColorCode:210> codes[lightcyan1]=195
+getColorCode:211> codes[red1]=196
+getColorCode:212> codes[deeppink2]=197
+getColorCode:213> codes[deeppink1]=198
+getColorCode:214> codes[deeppink1]=199
+getColorCode:215> codes[magenta2]=200
+getColorCode:216> codes[magenta1]=201
+getColorCode:217> codes[orangered1]=202
+getColorCode:218> codes[indianred1]=203
+getColorCode:219> codes[indianred1]=204
+getColorCode:220> codes[hotpink]=205
+getColorCode:221> codes[hotpink]=206
+getColorCode:222> codes[mediumorchid1]=207
+getColorCode:223> codes[darkorange]=208
+getColorCode:224> codes[salmon1]=209
+getColorCode:225> codes[lightcoral]=210
+getColorCode:226> codes[palevioletred1]=211
+getColorCode:227> codes[orchid2]=212
+getColorCode:228> codes[orchid1]=213
+getColorCode:229> codes[orange1]=214
+getColorCode:230> codes[sandybrown]=215
+getColorCode:231> codes[lightsalmon1]=216
+getColorCode:232> codes[lightpink1]=217
+getColorCode:233> codes[pink1]=218
+getColorCode:234> codes[plum1]=219
+getColorCode:235> codes[gold1]=220
+getColorCode:236> codes[lightgoldenrod2]=221
+getColorCode:237> codes[lightgoldenrod2]=222
+getColorCode:238> codes[navajowhite1]=223
+getColorCode:239> codes[mistyrose1]=224
+getColorCode:240> codes[thistle1]=225
+getColorCode:241> codes[yellow1]=226
+getColorCode:242> codes[lightgoldenrod1]=227
+getColorCode:243> codes[khaki1]=228
+getColorCode:244> codes[wheat1]=229
+getColorCode:245> codes[cornsilk1]=230
+getColorCode:246> codes[grey100]=231
+getColorCode:247> codes[grey3]=232
+getColorCode:248> codes[grey7]=233
+getColorCode:249> codes[grey11]=234
+getColorCode:250> codes[grey15]=235
+getColorCode:251> codes[grey19]=236
+getColorCode:252> codes[grey23]=237
+getColorCode:253> codes[grey27]=238
+getColorCode:254> codes[grey30]=239
+getColorCode:255> codes[grey35]=240
+getColorCode:256> codes[grey39]=241
+getColorCode:257> codes[grey42]=242
+getColorCode:258> codes[grey46]=243
+getColorCode:259> codes[grey50]=244
+getColorCode:260> codes[grey54]=245
+getColorCode:261> codes[grey58]=246
+getColorCode:262> codes[grey62]=247
+getColorCode:263> codes[grey66]=248
+getColorCode:264> codes[grey70]=249
+getColorCode:265> codes[grey74]=250
+getColorCode:266> codes[grey78]=251
+getColorCode:267> codes[grey82]=252
+getColorCode:268> codes[grey85]=253
+getColorCode:269> codes[grey89]=254
+getColorCode:270> codes[grey93]=255
+getColorCode:273> [[ black == foreground ]]
+getColorCode:278> [[ black == background ]]
+getColorCode:286> 1=black
+getColorCode:288> 1=black
+getColorCode:290> 1=black
+getColorCode:291> echo -n 000
+isSameColor:5> local color1=000
+isSameColor:6> getColorCode yellow
+getColorCode:2> [[ yellow = <-> ]]
+getColorCode:12> typeset -A codes
+getColorCode:15> codes[black]=000
+getColorCode:16> codes[maroon]=001
+getColorCode:17> codes[green]=002
+getColorCode:18> codes[olive]=003
+getColorCode:19> codes[navy]=004
+getColorCode:20> codes[purple]=005
+getColorCode:21> codes[teal]=006
+getColorCode:22> codes[silver]=007
+getColorCode:23> codes[grey]=008
+getColorCode:24> codes[red]=009
+getColorCode:25> codes[lime]=010
+getColorCode:26> codes[yellow]=011
+getColorCode:27> codes[blue]=012
+getColorCode:28> codes[fuchsia]=013
+getColorCode:29> codes[aqua]=014
+getColorCode:30> codes[white]=015
+getColorCode:31> codes[grey0]=016
+getColorCode:32> codes[navyblue]=017
+getColorCode:33> codes[darkblue]=018
+getColorCode:34> codes[blue3]=019
+getColorCode:35> codes[blue3]=020
+getColorCode:36> codes[blue1]=021
+getColorCode:37> codes[darkgreen]=022
+getColorCode:38> codes[deepskyblue4]=023
+getColorCode:39> codes[deepskyblue4]=024
+getColorCode:40> codes[deepskyblue4]=025
+getColorCode:41> codes[dodgerblue3]=026
+getColorCode:42> codes[dodgerblue2]=027
+getColorCode:43> codes[green4]=028
+getColorCode:44> codes[springgreen4]=029
+getColorCode:45> codes[turquoise4]=030
+getColorCode:46> codes[deepskyblue3]=031
+getColorCode:47> codes[deepskyblue3]=032
+getColorCode:48> codes[dodgerblue1]=033
+getColorCode:49> codes[green3]=034
+getColorCode:50> codes[springgreen3]=035
+getColorCode:51> codes[darkcyan]=036
+getColorCode:52> codes[lightseagreen]=037
+getColorCode:53> codes[deepskyblue2]=038
+getColorCode:54> codes[deepskyblue1]=039
+getColorCode:55> codes[green3]=040
+getColorCode:56> codes[springgreen3]=041
+getColorCode:57> codes[springgreen2]=042
+getColorCode:58> codes[cyan3]=043
+getColorCode:59> codes[darkturquoise]=044
+getColorCode:60> codes[turquoise2]=045
+getColorCode:61> codes[green1]=046
+getColorCode:62> codes[springgreen2]=047
+getColorCode:63> codes[springgreen1]=048
+getColorCode:64> codes[mediumspringgreen]=049
+getColorCode:65> codes[cyan2]=050
+getColorCode:66> codes[cyan1]=051
+getColorCode:67> codes[darkred]=052
+getColorCode:68> codes[deeppink4]=053
+getColorCode:69> codes[purple4]=054
+getColorCode:70> codes[purple4]=055
+getColorCode:71> codes[purple3]=056
+getColorCode:72> codes[blueviolet]=057
+getColorCode:73> codes[orange4]=058
+getColorCode:74> codes[grey37]=059
+getColorCode:75> codes[mediumpurple4]=060
+getColorCode:76> codes[slateblue3]=061
+getColorCode:77> codes[slateblue3]=062
+getColorCode:78> codes[royalblue1]=063
+getColorCode:79> codes[chartreuse4]=064
+getColorCode:80> codes[darkseagreen4]=065
+getColorCode:81> codes[paleturquoise4]=066
+getColorCode:82> codes[steelblue]=067
+getColorCode:83> codes[steelblue3]=068
+getColorCode:84> codes[cornflowerblue]=069
+getColorCode:85> codes[chartreuse3]=070
+getColorCode:86> codes[darkseagreen4]=071
+getColorCode:87> codes[cadetblue]=072
+getColorCode:88> codes[cadetblue]=073
+getColorCode:89> codes[skyblue3]=074
+getColorCode:90> codes[steelblue1]=075
+getColorCode:91> codes[chartreuse3]=076
+getColorCode:92> codes[palegreen3]=077
+getColorCode:93> codes[seagreen3]=078
+getColorCode:94> codes[aquamarine3]=079
+getColorCode:95> codes[mediumturquoise]=080
+getColorCode:96> codes[steelblue1]=081
+getColorCode:97> codes[chartreuse2]=082
+getColorCode:98> codes[seagreen2]=083
+getColorCode:99> codes[seagreen1]=084
+getColorCode:100> codes[seagreen1]=085
+getColorCode:101> codes[aquamarine1]=086
+getColorCode:102> codes[darkslategray2]=087
+getColorCode:103> codes[darkred]=088
+getColorCode:104> codes[deeppink4]=089
+getColorCode:105> codes[darkmagenta]=090
+getColorCode:106> codes[darkmagenta]=091
+getColorCode:107> codes[darkviolet]=092
+getColorCode:108> codes[purple]=093
+getColorCode:109> codes[orange4]=094
+getColorCode:110> codes[lightpink4]=095
+getColorCode:111> codes[plum4]=096
+getColorCode:112> codes[mediumpurple3]=097
+getColorCode:113> codes[mediumpurple3]=098
+getColorCode:114> codes[slateblue1]=099
+getColorCode:115> codes[yellow4]=100
+getColorCode:116> codes[wheat4]=101
+getColorCode:117> codes[grey53]=102
+getColorCode:118> codes[lightslategrey]=103
+getColorCode:119> codes[mediumpurple]=104
+getColorCode:120> codes[lightslateblue]=105
+getColorCode:121> codes[yellow4]=106
+getColorCode:122> codes[darkolivegreen3]=107
+getColorCode:123> codes[darkseagreen]=108
+getColorCode:124> codes[lightskyblue3]=109
+getColorCode:125> codes[lightskyblue3]=110
+getColorCode:126> codes[skyblue2]=111
+getColorCode:127> codes[chartreuse2]=112
+getColorCode:128> codes[darkolivegreen3]=113
+getColorCode:129> codes[palegreen3]=114
+getColorCode:130> codes[darkseagreen3]=115
+getColorCode:131> codes[darkslategray3]=116
+getColorCode:132> codes[skyblue1]=117
+getColorCode:133> codes[chartreuse1]=118
+getColorCode:134> codes[lightgreen]=119
+getColorCode:135> codes[lightgreen]=120
+getColorCode:136> codes[palegreen1]=121
+getColorCode:137> codes[aquamarine1]=122
+getColorCode:138> codes[darkslategray1]=123
+getColorCode:139> codes[red3]=124
+getColorCode:140> codes[deeppink4]=125
+getColorCode:141> codes[mediumvioletred]=126
+getColorCode:142> codes[magenta3]=127
+getColorCode:143> codes[darkviolet]=128
+getColorCode:144> codes[purple]=129
+getColorCode:145> codes[darkorange3]=130
+getColorCode:146> codes[indianred]=131
+getColorCode:147> codes[hotpink3]=132
+getColorCode:148> codes[mediumorchid3]=133
+getColorCode:149> codes[mediumorchid]=134
+getColorCode:150> codes[mediumpurple2]=135
+getColorCode:151> codes[darkgoldenrod]=136
+getColorCode:152> codes[lightsalmon3]=137
+getColorCode:153> codes[rosybrown]=138
+getColorCode:154> codes[grey63]=139
+getColorCode:155> codes[mediumpurple2]=140
+getColorCode:156> codes[mediumpurple1]=141
+getColorCode:157> codes[gold3]=142
+getColorCode:158> codes[darkkhaki]=143
+getColorCode:159> codes[navajowhite3]=144
+getColorCode:160> codes[grey69]=145
+getColorCode:161> codes[lightsteelblue3]=146
+getColorCode:162> codes[lightsteelblue]=147
+getColorCode:163> codes[yellow3]=148
+getColorCode:164> codes[darkolivegreen3]=149
+getColorCode:165> codes[darkseagreen3]=150
+getColorCode:166> codes[darkseagreen2]=151
+getColorCode:167> codes[lightcyan3]=152
+getColorCode:168> codes[lightskyblue1]=153
+getColorCode:169> codes[greenyellow]=154
+getColorCode:170> codes[darkolivegreen2]=155
+getColorCode:171> codes[palegreen1]=156
+getColorCode:172> codes[darkseagreen2]=157
+getColorCode:173> codes[darkseagreen1]=158
+getColorCode:174> codes[paleturquoise1]=159
+getColorCode:175> codes[red3]=160
+getColorCode:176> codes[deeppink3]=161
+getColorCode:177> codes[deeppink3]=162
+getColorCode:178> codes[magenta3]=163
+getColorCode:179> codes[magenta3]=164
+getColorCode:180> codes[magenta2]=165
+getColorCode:181> codes[darkorange3]=166
+getColorCode:182> codes[indianred]=167
+getColorCode:183> codes[hotpink3]=168
+getColorCode:184> codes[hotpink2]=169
+getColorCode:185> codes[orchid]=170
+getColorCode:186> codes[mediumorchid1]=171
+getColorCode:187> codes[orange3]=172
+getColorCode:188> codes[lightsalmon3]=173
+getColorCode:189> codes[lightpink3]=174
+getColorCode:190> codes[pink3]=175
+getColorCode:191> codes[plum3]=176
+getColorCode:192> codes[violet]=177
+getColorCode:193> codes[gold3]=178
+getColorCode:194> codes[lightgoldenrod3]=179
+getColorCode:195> codes[tan]=180
+getColorCode:196> codes[mistyrose3]=181
+getColorCode:197> codes[thistle3]=182
+getColorCode:198> codes[plum2]=183
+getColorCode:199> codes[yellow3]=184
+getColorCode:200> codes[khaki3]=185
+getColorCode:201> codes[lightgoldenrod2]=186
+getColorCode:202> codes[lightyellow3]=187
+getColorCode:203> codes[grey84]=188
+getColorCode:204> codes[lightsteelblue1]=189
+getColorCode:205> codes[yellow2]=190
+getColorCode:206> codes[darkolivegreen1]=191
+getColorCode:207> codes[darkolivegreen1]=192
+getColorCode:208> codes[darkseagreen1]=193
+getColorCode:209> codes[honeydew2]=194
+getColorCode:210> codes[lightcyan1]=195
+getColorCode:211> codes[red1]=196
+getColorCode:212> codes[deeppink2]=197
+getColorCode:213> codes[deeppink1]=198
+getColorCode:214> codes[deeppink1]=199
+getColorCode:215> codes[magenta2]=200
+getColorCode:216> codes[magenta1]=201
+getColorCode:217> codes[orangered1]=202
+getColorCode:218> codes[indianred1]=203
+getColorCode:219> codes[indianred1]=204
+getColorCode:220> codes[hotpink]=205
+getColorCode:221> codes[hotpink]=206
+getColorCode:222> codes[mediumorchid1]=207
+getColorCode:223> codes[darkorange]=208
+getColorCode:224> codes[salmon1]=209
+getColorCode:225> codes[lightcoral]=210
+getColorCode:226> codes[palevioletred1]=211
+getColorCode:227> codes[orchid2]=212
+getColorCode:228> codes[orchid1]=213
+getColorCode:229> codes[orange1]=214
+getColorCode:230> codes[sandybrown]=215
+getColorCode:231> codes[lightsalmon1]=216
+getColorCode:232> codes[lightpink1]=217
+getColorCode:233> codes[pink1]=218
+getColorCode:234> codes[plum1]=219
+getColorCode:235> codes[gold1]=220
+getColorCode:236> codes[lightgoldenrod2]=221
+getColorCode:237> codes[lightgoldenrod2]=222
+getColorCode:238> codes[navajowhite1]=223
+getColorCode:239> codes[mistyrose1]=224
+getColorCode:240> codes[thistle1]=225
+getColorCode:241> codes[yellow1]=226
+getColorCode:242> codes[lightgoldenrod1]=227
+getColorCode:243> codes[khaki1]=228
+getColorCode:244> codes[wheat1]=229
+getColorCode:245> codes[cornsilk1]=230
+getColorCode:246> codes[grey100]=231
+getColorCode:247> codes[grey3]=232
+getColorCode:248> codes[grey7]=233
+getColorCode:249> codes[grey11]=234
+getColorCode:250> codes[grey15]=235
+getColorCode:251> codes[grey19]=236
+getColorCode:252> codes[grey23]=237
+getColorCode:253> codes[grey27]=238
+getColorCode:254> codes[grey30]=239
+getColorCode:255> codes[grey35]=240
+getColorCode:256> codes[grey39]=241
+getColorCode:257> codes[grey42]=242
+getColorCode:258> codes[grey46]=243
+getColorCode:259> codes[grey50]=244
+getColorCode:260> codes[grey54]=245
+getColorCode:261> codes[grey58]=246
+getColorCode:262> codes[grey62]=247
+getColorCode:263> codes[grey66]=248
+getColorCode:264> codes[grey70]=249
+getColorCode:265> codes[grey74]=250
+getColorCode:266> codes[grey78]=251
+getColorCode:267> codes[grey82]=252
+getColorCode:268> codes[grey85]=253
+getColorCode:269> codes[grey89]=254
+getColorCode:270> codes[grey93]=255
+getColorCode:273> [[ yellow == foreground ]]
+getColorCode:278> [[ yellow == background ]]
+getColorCode:286> 1=yellow
+getColorCode:288> 1=yellow
+getColorCode:290> 1=yellow
+getColorCode:291> echo -n 011
+isSameColor:6> local color2=011
+isSameColor:8> return 1
+right_prompt_segment:39> foregroundColor yellow
+foregroundColor:1> [[ -z yellow ]]
+foregroundColor:4> getColor yellow
+getColor:2> [[ yellow = <-> ]]
+getColor:8> local named='%K{yellow}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{yellow}'
+getColor:12> printf %q $'\C-[[43m'
+getColor:12> local quoted='$'\''\033'\''\[43m'
+getColor:13> [[ '$'\''\033'\''\[43m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n yellow
+foregroundColor:4> echo -n '%F{yellow}'
+right_prompt_segment:39> print_icon RIGHT_SEGMENT_SEPARATOR
+print_icon:1> local icon_name=RIGHT_SEGMENT_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:6> echo -n 
+right_prompt_segment:39> echo -n '%F{yellow}%f'
+right_prompt_segment:43> local visual_identifier
+right_prompt_segment:44> [[ -n RAM_ICON ]]
+right_prompt_segment:45> visual_identifier=+right_prompt_segment:45> print_icon RAM_ICON
+print_icon:1> local icon_name=RAM_ICON
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_RAM_ICON
+print_icon:3> defined POWERLEVEL9K_RAM_ICON
+defined:1> local varname=POWERLEVEL9K_RAM_ICON
+defined:3> typeset -p POWERLEVEL9K_RAM_ICON
+print_icon:6> echo -n RAM
+right_prompt_segment:45> visual_identifier=RAM
+right_prompt_segment:46> [[ -n RAM ]]
+right_prompt_segment:50> [[ -n 0.00K ]]
+right_prompt_segment:50> visual_identifier=' RAM'
+right_prompt_segment:52> local visual_identifier_color_variable=POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+right_prompt_segment:53> set_default POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR black
+set_default:1> local varname=POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+set_default:2> local default_value=black
+set_default:4> defined POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+defined:1> local varname=POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+defined:3> typeset -p POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+set_default:4> typeset -g 'POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR=black'
+right_prompt_segment:54> visual_identifier='%F{black%} RAM%f'
+right_prompt_segment:58> echo -n '%K{yellow}%F{black}'
+right_prompt_segment:61> [[ false == false ]]
+right_prompt_segment:61> echo -n ' '
+right_prompt_segment:64> [[ -n 0.00K ]]
+right_prompt_segment:64> echo -n 0.00K
+right_prompt_segment:66> echo -n '%F{black%} RAM%f'
+right_prompt_segment:68> CURRENT_RIGHT_BG=yellow
+right_prompt_segment:69> last_right_element_index=3
+build_right_prompt:15> index=4
+build_right_prompt:19> echo -n %E

Using any other random ZSH theme yields to a shorter verbose and, consequently, faster response. (not enough nearly as fast as what I'd get in a Linux machine,, as it is still longer than one second, but one can notice the difference) .

My .zshrc is as follows (posting only the uncommented lines):

export ZSH=/cygdrive/c/Users/{user]/.oh-my-zsh
ZSH_THEME="powerlevel9k/powerlevel9k"

plugins=(
  git
)
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir) 
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status command_execution_time ram)
source $ZSH/oh-my-zsh.sh

primercuervo commented Jul 13, 2018

Not sure if it's worth reopening, but I'm facing this right now on cygwin (not using it by choice). Running zsh with PowerLevel is unusably slow (about 4 seconds). Im running the tag v0.6.5

commit d031b3e (HEAD -> master, tag: v0.6.5, origin/next, origin/master, origin/HEAD)
Author: Dominik Ritter dritter03@googlemail.com
Date: Mon Jul 9 21:30:28 2018 +0200

Fix kubernetes segment

I ran it with verbose symbols and I see that with every command a considerable large amount of queries is run even with few segments:

    $ zsh -xv
    $ ls

gives the following:


+omz_termsupport_preexec:1> emulate -L zsh
+omz_termsupport_preexec:2> setopt extended_glob
+omz_termsupport_preexec:4> [[ '' == true ]]
+omz_termsupport_preexec:9> local CMD=ls
+omz_termsupport_preexec:10> local LINE='ls --color=tty > large.txt'
+omz_termsupport_preexec:12> title '$CMD' '%100>...>$LINE%<<'
+title:1> emulate -L zsh
+title:2> setopt prompt_subst
+title:4> [[ '' == *term* ]]
+title:8> : '%100>...>$LINE%<<'
+title:10> case xterm-256color (cygwin | xterm*)
+title:12> print -Pn '\e]2;%100\>...\>\$LINE%\<\<\a'
+title:13> print -Pn '\e]1;\$CMD\a'
+powerlevel9k_preexec:1> _P9K_TIMER_START=1531472296.8957684040
+zsh:2> ls '--color=tty'
+omz_termsupport_precmd:1> emulate -L zsh
+omz_termsupport_precmd:3> [[ '' == true ]]
+omz_termsupport_precmd:7> title '%15<..<%~%<<' '%n@%m: %~'
+title:1> emulate -L zsh
+title:2> setopt prompt_subst
+title:4> [[ '' == *term* ]]
+title:8> : '%n@%m: %~'
+title:10> case xterm-256color (cygwin | xterm*)
+title:12> print -Pn '\e]2;%n@%m:\ %~\a'
+title:13> print -Pn '\e]1;%15\<..\<%~%\<\<\a'
+powerlevel9k_prepare_prompts:1> local RETVAL RPROMPT_PREFIX RPROMPT_SUFFIX
+powerlevel9k_prepare_prompts:2> RETVAL=0
+powerlevel9k_prepare_prompts:3> RETVALS=( 0 )
+powerlevel9k_prepare_prompts:5> _P9K_COMMAND_DURATION=0.11414551734924316
+powerlevel9k_prepare_prompts:8> _P9K_TIMER_START=0x7FFFFFFF
+powerlevel9k_prepare_prompts:10> [[ '' == true ]]
+powerlevel9k_prepare_prompts:27> PROMPT='%f%b%k$(build_left_prompt)'
+powerlevel9k_prepare_prompts:28> RPROMPT_PREFIX=''
+powerlevel9k_prepare_prompts:29> RPROMPT_SUFFIX=''
+powerlevel9k_prepare_prompts:32> [[ '' != true ]]
+powerlevel9k_prepare_prompts:33> RPROMPT='%f%b%k$(build_right_prompt)%{$reset_color%}'
+powerlevel9k_prepare_prompts:36> local NEWLINE=$'\n'
+powerlevel9k_prepare_prompts:39> [[ false == true ]]
+powerlevel9k_prepare_prompts:46> [[ '' == Yes ]]
+zsh:3> build_left_prompt
+build_left_prompt:1> local index=1
+build_left_prompt:2> local element
+build_left_prompt:3> element=dir
+build_left_prompt:5> element=dir
+build_left_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_left_prompt:12> prompt_dir left 1
+prompt_dir:2> local current_path=/cygdrive/c/Users/Z642832
+prompt_dir:4> [[ '' != true ]]
+prompt_dir:4> current_path='~'
+prompt_dir:6> local paths directory test_dir test_dir_length trunc_path threshhold
+prompt_dir:8> ((  1 > 1  ))
+prompt_dir:8> paths=( )
+prompt_dir:10> [[ -n '' || '' == truncate_with_folder_marker || '' == truncate_to_last ]]
+prompt_dir:165> local path_opt='~'
+prompt_dir:167> typeset -AH dir_states
+prompt_dir:168> dir_states=( DEFAULT FOLDER_ICON HOME HOME_ICON HOME_SUBFOLDER HOME_SUB_ICON NOT_WRITABLE LOCK_ICON ETC ETC_ICON )
+prompt_dir:175> print -P '%~'
+prompt_dir:175> local state_path='~'
+prompt_dir:176> local current_state=DEFAULT
+prompt_dir:177> [[ '~' == /etc* ]]
+prompt_dir:179> [[ '' == true ]]
+prompt_dir:181> [[ '~' == \~ ]]
+prompt_dir:182> current_state=HOME
+prompt_dir:188> local bld_on bld_off dir_state_foreground dir_state_user_foreground
+prompt_dir:190> [[ false == true ]]
+prompt_dir:194> bld_on=''
+prompt_dir:195> bld_off=''
+prompt_dir:198> local dir_state_user_foreground=POWERLEVEL9K_DIR_HOME_FOREGROUND
+prompt_dir:199> local dir_state_foreground=''
+prompt_dir:200> [[ -z '' ]]
+prompt_dir:200> dir_state_foreground=black
+prompt_dir:202> local dir_name base_name
+prompt_dir:204> dir_name='~'
+prompt_dir:205> base_name='~'
+prompt_dir:208> [[ -n '' ]]
+prompt_dir:222> [[ '~' == / || '~' == \~ ]]
+prompt_dir:223> current_path='~'
+prompt_dir:235> [[ '' == true ]]
+prompt_dir:240> [[ -n '' ]]
+prompt_dir:247> [[ / != / ]]
+prompt_dir:251> [[ '~' != \~ ]]
+prompt_dir:256> left_prompt_segment prompt_dir_HOME 1 blue black '~' HOME_ICON
+left_prompt_segment:1> local current_index=1
+left_prompt_segment:3> local joined
+left_prompt_segment:4> segmentShouldBeJoined 1 1 dir
+segmentShouldBeJoined:1> local current_index=1
+segmentShouldBeJoined:2> local last_segment_index=1
+segmentShouldBeJoined:4> local -a elements
+segmentShouldBeJoined:5> elements=( dir )
+segmentShouldBeJoined:7> local current_segment=dir
+segmentShouldBeJoined:8> local joined=false
+segmentShouldBeJoined:9> [[ dir == _joined ]]
+segmentShouldBeJoined:36> [[ false == true ]]
+segmentShouldBeJoined:39> return 1
+left_prompt_segment:4> joined=false
+left_prompt_segment:7> local BACKGROUND_USER_VARIABLE=POWERLEVEL9K_DIR_HOME_BACKGROUND
+left_prompt_segment:8> local BG_COLOR_MODIFIER=''
+left_prompt_segment:9> [[ -n '' ]]
+left_prompt_segment:12> local FOREGROUND_USER_VARIABLE=POWERLEVEL9K_DIR_HOME_FOREGROUND
+left_prompt_segment:13> local FG_COLOR_MODIFIER=''
+left_prompt_segment:14> [[ -n '' ]]
+left_prompt_segment:16> local bg fg
+left_prompt_segment:17> [[ -n blue ]]
+left_prompt_segment:17> bg=+left_prompt_segment:17> backgroundColor blue
+backgroundColor:1> [[ -z blue ]]
+backgroundColor:4> getColor blue
+getColor:2> [[ blue = <-> ]]
+getColor:8> local named='%K{blue}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{blue}'
+getColor:12> printf %q $'\C-[[44m'
+getColor:12> local quoted='$'\''\033'\''\[44m'
+getColor:13> [[ '$'\''\033'\''\[44m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n blue
+backgroundColor:4> echo -n '%K{blue}'
+left_prompt_segment:17> bg='%K{blue}'
+left_prompt_segment:18> [[ -n black ]]
+left_prompt_segment:18> fg=+left_prompt_segment:18> foregroundColor black
+foregroundColor:1> [[ -z black ]]
+foregroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+foregroundColor:4> echo -n '%F{black}'
+left_prompt_segment:18> fg='%F{black}'
+left_prompt_segment:20> [[ NONE != NONE ]]
+left_prompt_segment:26> isSameColor NONE blue
+isSameColor:1> [[ NONE == NONE ]]
+isSameColor:2> return 1
+left_prompt_segment:39> echo -n '%K{blue} '
+left_prompt_segment:42> local visual_identifier
+left_prompt_segment:43> [[ -n HOME_ICON ]]
+left_prompt_segment:44> visual_identifier=+left_prompt_segment:44> print_icon HOME_ICON
+print_icon:1> local icon_name=HOME_ICON
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_HOME_ICON
+print_icon:3> defined POWERLEVEL9K_HOME_ICON
+defined:1> local varname=POWERLEVEL9K_HOME_ICON
+defined:3> typeset -p POWERLEVEL9K_HOME_ICON
+print_icon:6> echo -n ''
+left_prompt_segment:44> visual_identifier=''
+left_prompt_segment:45> [[ -n '' ]]
+left_prompt_segment:58> echo -n ''
+left_prompt_segment:60> [[ -n '~' ]]
+left_prompt_segment:60> echo -n '%F{black}~'
+left_prompt_segment:61> echo -n ' '
+left_prompt_segment:63> CURRENT_BG=blue
+left_prompt_segment:64> last_left_element_index=1
+build_left_prompt:15> index=2
+build_left_prompt:18> left_prompt_end
+left_prompt_end:1> [[ -n blue ]]
+left_prompt_end:2> print_icon LEFT_SEGMENT_SEPARATOR
+print_icon:1> local icon_name=LEFT_SEGMENT_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR
+print_icon:6> echo -n 
+left_prompt_end:2> echo -n '%k%F{blue}'
+left_prompt_end:6> print_icon LEFT_SEGMENT_END_SEPARATOR
+print_icon:1> local icon_name=LEFT_SEGMENT_END_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR
+print_icon:6> echo -n ' '
+left_prompt_end:6> echo -n '%f '
+left_prompt_end:7> CURRENT_BG=''
+zsh:3> build_right_prompt
+build_right_prompt:1> local index=1
+build_right_prompt:2> local element
+build_right_prompt:3> element=status
+build_right_prompt:5> element=status
+build_right_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_right_prompt:12> prompt_status right 1
+prompt_status:1> local ec_text
+prompt_status:2> local ec_sum
+prompt_status:3> local ec
+prompt_status:5> [[ true == true ]]
+prompt_status:6> ((  1 > 1  ))
+prompt_status:10> ec_text=+prompt_status:10> exit_code_or_status ''
+exit_code_or_status:1> local ec=''
+exit_code_or_status:2> [[ false = true ]]
+exit_code_or_status:4> ((  ec <= 128  ))
+exit_code_or_status:5> echo ''
+prompt_status:10> ec_text=''
+prompt_status:11> ec_sum=''
+prompt_status:25> ((  ec_sum > 0  ))
+prompt_status:31> [[ true == true ]]
+prompt_status:31> [[ true == true ]]
+prompt_status:32> right_prompt_segment prompt_status_OK 1 black green '' OK_ICON
+right_prompt_segment:1> local current_index=1
+right_prompt_segment:4> local joined
+right_prompt_segment:5> segmentShouldBeJoined 1 1 'status command_execution_time ram'
+segmentShouldBeJoined:1> local current_index=1
+segmentShouldBeJoined:2> local last_segment_index=1
+segmentShouldBeJoined:4> local -a elements
+segmentShouldBeJoined:5> elements=( status command_execution_time ram )
+segmentShouldBeJoined:7> local current_segment=status
+segmentShouldBeJoined:8> local joined=false
+segmentShouldBeJoined:9> [[ status == _joined ]]
+segmentShouldBeJoined:36> [[ false == true ]]
+segmentShouldBeJoined:39> return 1
+right_prompt_segment:5> joined=false
+right_prompt_segment:8> local BACKGROUND_USER_VARIABLE=POWERLEVEL9K_STATUS_OK_BACKGROUND
+right_prompt_segment:9> local BG_COLOR_MODIFIER=''
+right_prompt_segment:10> [[ -n '' ]]
+right_prompt_segment:13> local FOREGROUND_USER_VARIABLE=POWERLEVEL9K_STATUS_OK_FOREGROUND
+right_prompt_segment:14> local FG_COLOR_MODIFIER=''
+right_prompt_segment:15> [[ -n '' ]]
+right_prompt_segment:17> local bg fg
+right_prompt_segment:18> [[ -n black ]]
+right_prompt_segment:18> bg=+right_prompt_segment:18> backgroundColor black
+backgroundColor:1> [[ -z black ]]
+backgroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+backgroundColor:4> echo -n '%K{black}'
+right_prompt_segment:18> bg='%K{black}'
+right_prompt_segment:19> [[ -n green ]]
+right_prompt_segment:19> fg=+right_prompt_segment:19> foregroundColor green
+foregroundColor:1> [[ -z green ]]
+foregroundColor:4> getColor green
+getColor:2> [[ green = <-> ]]
+getColor:8> local named='%K{green}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{green}'
+getColor:12> printf %q $'\C-[[42m'
+getColor:12> local quoted='$'\''\033'\''\[42m'
+getColor:13> [[ '$'\''\033'\''\[42m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n green
+foregroundColor:4> echo -n '%F{green}'
+right_prompt_segment:19> fg='%F{green}'
+right_prompt_segment:23> [[ NONE != NONE ]]
+right_prompt_segment:28> [[ false == false ]]
+right_prompt_segment:29> isSameColor NONE black
+isSameColor:1> [[ NONE == NONE ]]
+isSameColor:2> return 1
+right_prompt_segment:39> foregroundColor black
+foregroundColor:1> [[ -z black ]]
+foregroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+foregroundColor:4> echo -n '%F{black}'
+right_prompt_segment:39> print_icon RIGHT_SEGMENT_SEPARATOR
+print_icon:1> local icon_name=RIGHT_SEGMENT_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:6> echo -n 
+right_prompt_segment:39> echo -n '%F{black}%f'
+right_prompt_segment:43> local visual_identifier
+right_prompt_segment:44> [[ -n OK_ICON ]]
+right_prompt_segment:45> visual_identifier=+right_prompt_segment:45> print_icon OK_ICON
+print_icon:1> local icon_name=OK_ICON
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_OK_ICON
+print_icon:3> defined POWERLEVEL9K_OK_ICON
+defined:1> local varname=POWERLEVEL9K_OK_ICON
+defined:3> typeset -p POWERLEVEL9K_OK_ICON
+print_icon:6> echo -n ✔
+right_prompt_segment:45> visual_identifier=✔
+right_prompt_segment:46> [[ -n ✔ ]]
+right_prompt_segment:50> [[ -n '' ]]
+right_prompt_segment:52> local visual_identifier_color_variable=POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+right_prompt_segment:53> set_default POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR green
+set_default:1> local varname=POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+set_default:2> local default_value=green
+set_default:4> defined POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+defined:1> local varname=POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+defined:3> typeset -p POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR
+set_default:4> typeset -g 'POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_COLOR=green'
+right_prompt_segment:54> visual_identifier='%F{green%}✔%f'
+right_prompt_segment:58> echo -n '%K{black}%F{green}'
+right_prompt_segment:61> [[ false == false ]]
+right_prompt_segment:61> echo -n ' '
+right_prompt_segment:64> [[ -n '' ]]
+right_prompt_segment:66> echo -n '%F{green%}✔%f'
+right_prompt_segment:68> CURRENT_RIGHT_BG=black
+right_prompt_segment:69> last_right_element_index=1
+build_right_prompt:15> index=2
+build_right_prompt:3> element=command_execution_time
+build_right_prompt:5> element=command_execution_time
+build_right_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_right_prompt:12> prompt_command_execution_time right 2
+prompt_command_execution_time:1> set_default POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD 3
+set_default:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+set_default:2> local default_value=3
+set_default:4> defined POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+defined:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+defined:3> typeset -p POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD
+set_default:4> typeset -g 'POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=3'
+prompt_command_execution_time:2> set_default POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION 2
+set_default:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+set_default:2> local default_value=2
+set_default:4> defined POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+defined:1> local varname=POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+defined:3> typeset -p POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION
+set_default:4> typeset -g 'POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=2'
+prompt_command_execution_time:9> local humanReadableDuration
+prompt_command_execution_time:10> ((  _P9K_COMMAND_DURATION > 3600  ))
+prompt_command_execution_time:12> ((  _P9K_COMMAND_DURATION > 60  ))
+prompt_command_execution_time:17> [[ 2 == 0 ]]
+prompt_command_execution_time:22> typeset -F 2 humanReadableDuration
+prompt_command_execution_time:24> humanReadableDuration=0.11414551734924316
+prompt_command_execution_time:27> ((  _P9K_COMMAND_DURATION >= POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD  ))
+build_right_prompt:15> index=3
+build_right_prompt:3> element=ram
+build_right_prompt:5> element=ram
+build_right_prompt:9> [[ $element[0,7] -regex-match "custom_" ]]
+build_right_prompt:12> prompt_ram right 3
+prompt_ram:1> local base=''
+prompt_ram:2> local ramfree=0
+prompt_ram:3> [[ Windows == OSX ]]
+prompt_ram:11> [[ Windows == BSD ]]
+prompt_ram:14> ramfree=+prompt_ram:14> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' -o -E 'MemAvailable:\s+[0-9]+' /proc/meminfo
+prompt_ram:14> ramfree=+prompt_ram:14> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' -o '[0-9]*'
+prompt_ram:14> ramfree=''
+prompt_ram:15> base=K
+prompt_ram:19> printSizeHumanReadable '' K
+printSizeHumanReadable:1> typeset -F 2 size
+printSizeHumanReadable:2> size=+0.00001
+printSizeHumanReadable:3> local extension
+printSizeHumanReadable:4> extension=( B K M G T P E Z Y )
+printSizeHumanReadable:5> local index=1
+printSizeHumanReadable:8> [[ -n K ]]
+printSizeHumanReadable:9> local idx
+printSizeHumanReadable:10> idx=B
+printSizeHumanReadable:11> [[ K == B ]]
+printSizeHumanReadable:14> index=2
+printSizeHumanReadable:10> idx=K
+printSizeHumanReadable:11> [[ K == K ]]
+printSizeHumanReadable:12> break
+printSizeHumanReadable:18> ((  (size / 1024) > 0.1  ))
+printSizeHumanReadable:23> echo 0.00K
+prompt_ram:19> right_prompt_segment prompt_ram 3 yellow black 0.00K RAM_ICON
+right_prompt_segment:1> local current_index=3
+right_prompt_segment:4> local joined
+right_prompt_segment:5> segmentShouldBeJoined 3 1 'status command_execution_time ram'
+segmentShouldBeJoined:1> local current_index=3
+segmentShouldBeJoined:2> local last_segment_index=1
+segmentShouldBeJoined:4> local -a elements
+segmentShouldBeJoined:5> elements=( status command_execution_time ram )
+segmentShouldBeJoined:7> local current_segment=ram
+segmentShouldBeJoined:8> local joined=false
+segmentShouldBeJoined:9> [[ ram == _joined ]]
+segmentShouldBeJoined:36> [[ false == true ]]
+segmentShouldBeJoined:39> return 1
+right_prompt_segment:5> joined=false
+right_prompt_segment:8> local BACKGROUND_USER_VARIABLE=POWERLEVEL9K_RAM_BACKGROUND
+right_prompt_segment:9> local BG_COLOR_MODIFIER=''
+right_prompt_segment:10> [[ -n '' ]]
+right_prompt_segment:13> local FOREGROUND_USER_VARIABLE=POWERLEVEL9K_RAM_FOREGROUND
+right_prompt_segment:14> local FG_COLOR_MODIFIER=''
+right_prompt_segment:15> [[ -n '' ]]
+right_prompt_segment:17> local bg fg
+right_prompt_segment:18> [[ -n yellow ]]
+right_prompt_segment:18> bg=+right_prompt_segment:18> backgroundColor yellow
+backgroundColor:1> [[ -z yellow ]]
+backgroundColor:4> getColor yellow
+getColor:2> [[ yellow = <-> ]]
+getColor:8> local named='%K{yellow}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{yellow}'
+getColor:12> printf %q $'\C-[[43m'
+getColor:12> local quoted='$'\''\033'\''\[43m'
+getColor:13> [[ '$'\''\033'\''\[43m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n yellow
+backgroundColor:4> echo -n '%K{yellow}'
+right_prompt_segment:18> bg='%K{yellow}'
+right_prompt_segment:19> [[ -n black ]]
+right_prompt_segment:19> fg=+right_prompt_segment:19> foregroundColor black
+foregroundColor:1> [[ -z black ]]
+foregroundColor:4> getColor black
+getColor:2> [[ black = <-> ]]
+getColor:8> local named='%K{black}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{black}'
+getColor:12> printf %q $'\C-[[40m'
+getColor:12> local quoted='$'\''\033'\''\[40m'
+getColor:13> [[ '$'\''\033'\''\[40m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n black
+foregroundColor:4> echo -n '%F{black}'
+right_prompt_segment:19> fg='%F{black}'
+right_prompt_segment:23> [[ black != NONE ]]
+right_prompt_segment:25> echo -n ' %f'
+right_prompt_segment:28> [[ false == false ]]
+right_prompt_segment:29> isSameColor black yellow
+isSameColor:1> [[ black == NONE || yellow == NONE ]]
+isSameColor:5> getColorCode black
+getColorCode:2> [[ black = <-> ]]
+getColorCode:12> typeset -A codes
+getColorCode:15> codes[black]=000
+getColorCode:16> codes[maroon]=001
+getColorCode:17> codes[green]=002
+getColorCode:18> codes[olive]=003
+getColorCode:19> codes[navy]=004
+getColorCode:20> codes[purple]=005
+getColorCode:21> codes[teal]=006
+getColorCode:22> codes[silver]=007
+getColorCode:23> codes[grey]=008
+getColorCode:24> codes[red]=009
+getColorCode:25> codes[lime]=010
+getColorCode:26> codes[yellow]=011
+getColorCode:27> codes[blue]=012
+getColorCode:28> codes[fuchsia]=013
+getColorCode:29> codes[aqua]=014
+getColorCode:30> codes[white]=015
+getColorCode:31> codes[grey0]=016
+getColorCode:32> codes[navyblue]=017
+getColorCode:33> codes[darkblue]=018
+getColorCode:34> codes[blue3]=019
+getColorCode:35> codes[blue3]=020
+getColorCode:36> codes[blue1]=021
+getColorCode:37> codes[darkgreen]=022
+getColorCode:38> codes[deepskyblue4]=023
+getColorCode:39> codes[deepskyblue4]=024
+getColorCode:40> codes[deepskyblue4]=025
+getColorCode:41> codes[dodgerblue3]=026
+getColorCode:42> codes[dodgerblue2]=027
+getColorCode:43> codes[green4]=028
+getColorCode:44> codes[springgreen4]=029
+getColorCode:45> codes[turquoise4]=030
+getColorCode:46> codes[deepskyblue3]=031
+getColorCode:47> codes[deepskyblue3]=032
+getColorCode:48> codes[dodgerblue1]=033
+getColorCode:49> codes[green3]=034
+getColorCode:50> codes[springgreen3]=035
+getColorCode:51> codes[darkcyan]=036
+getColorCode:52> codes[lightseagreen]=037
+getColorCode:53> codes[deepskyblue2]=038
+getColorCode:54> codes[deepskyblue1]=039
+getColorCode:55> codes[green3]=040
+getColorCode:56> codes[springgreen3]=041
+getColorCode:57> codes[springgreen2]=042
+getColorCode:58> codes[cyan3]=043
+getColorCode:59> codes[darkturquoise]=044
+getColorCode:60> codes[turquoise2]=045
+getColorCode:61> codes[green1]=046
+getColorCode:62> codes[springgreen2]=047
+getColorCode:63> codes[springgreen1]=048
+getColorCode:64> codes[mediumspringgreen]=049
+getColorCode:65> codes[cyan2]=050
+getColorCode:66> codes[cyan1]=051
+getColorCode:67> codes[darkred]=052
+getColorCode:68> codes[deeppink4]=053
+getColorCode:69> codes[purple4]=054
+getColorCode:70> codes[purple4]=055
+getColorCode:71> codes[purple3]=056
+getColorCode:72> codes[blueviolet]=057
+getColorCode:73> codes[orange4]=058
+getColorCode:74> codes[grey37]=059
+getColorCode:75> codes[mediumpurple4]=060
+getColorCode:76> codes[slateblue3]=061
+getColorCode:77> codes[slateblue3]=062
+getColorCode:78> codes[royalblue1]=063
+getColorCode:79> codes[chartreuse4]=064
+getColorCode:80> codes[darkseagreen4]=065
+getColorCode:81> codes[paleturquoise4]=066
+getColorCode:82> codes[steelblue]=067
+getColorCode:83> codes[steelblue3]=068
+getColorCode:84> codes[cornflowerblue]=069
+getColorCode:85> codes[chartreuse3]=070
+getColorCode:86> codes[darkseagreen4]=071
+getColorCode:87> codes[cadetblue]=072
+getColorCode:88> codes[cadetblue]=073
+getColorCode:89> codes[skyblue3]=074
+getColorCode:90> codes[steelblue1]=075
+getColorCode:91> codes[chartreuse3]=076
+getColorCode:92> codes[palegreen3]=077
+getColorCode:93> codes[seagreen3]=078
+getColorCode:94> codes[aquamarine3]=079
+getColorCode:95> codes[mediumturquoise]=080
+getColorCode:96> codes[steelblue1]=081
+getColorCode:97> codes[chartreuse2]=082
+getColorCode:98> codes[seagreen2]=083
+getColorCode:99> codes[seagreen1]=084
+getColorCode:100> codes[seagreen1]=085
+getColorCode:101> codes[aquamarine1]=086
+getColorCode:102> codes[darkslategray2]=087
+getColorCode:103> codes[darkred]=088
+getColorCode:104> codes[deeppink4]=089
+getColorCode:105> codes[darkmagenta]=090
+getColorCode:106> codes[darkmagenta]=091
+getColorCode:107> codes[darkviolet]=092
+getColorCode:108> codes[purple]=093
+getColorCode:109> codes[orange4]=094
+getColorCode:110> codes[lightpink4]=095
+getColorCode:111> codes[plum4]=096
+getColorCode:112> codes[mediumpurple3]=097
+getColorCode:113> codes[mediumpurple3]=098
+getColorCode:114> codes[slateblue1]=099
+getColorCode:115> codes[yellow4]=100
+getColorCode:116> codes[wheat4]=101
+getColorCode:117> codes[grey53]=102
+getColorCode:118> codes[lightslategrey]=103
+getColorCode:119> codes[mediumpurple]=104
+getColorCode:120> codes[lightslateblue]=105
+getColorCode:121> codes[yellow4]=106
+getColorCode:122> codes[darkolivegreen3]=107
+getColorCode:123> codes[darkseagreen]=108
+getColorCode:124> codes[lightskyblue3]=109
+getColorCode:125> codes[lightskyblue3]=110
+getColorCode:126> codes[skyblue2]=111
+getColorCode:127> codes[chartreuse2]=112
+getColorCode:128> codes[darkolivegreen3]=113
+getColorCode:129> codes[palegreen3]=114
+getColorCode:130> codes[darkseagreen3]=115
+getColorCode:131> codes[darkslategray3]=116
+getColorCode:132> codes[skyblue1]=117
+getColorCode:133> codes[chartreuse1]=118
+getColorCode:134> codes[lightgreen]=119
+getColorCode:135> codes[lightgreen]=120
+getColorCode:136> codes[palegreen1]=121
+getColorCode:137> codes[aquamarine1]=122
+getColorCode:138> codes[darkslategray1]=123
+getColorCode:139> codes[red3]=124
+getColorCode:140> codes[deeppink4]=125
+getColorCode:141> codes[mediumvioletred]=126
+getColorCode:142> codes[magenta3]=127
+getColorCode:143> codes[darkviolet]=128
+getColorCode:144> codes[purple]=129
+getColorCode:145> codes[darkorange3]=130
+getColorCode:146> codes[indianred]=131
+getColorCode:147> codes[hotpink3]=132
+getColorCode:148> codes[mediumorchid3]=133
+getColorCode:149> codes[mediumorchid]=134
+getColorCode:150> codes[mediumpurple2]=135
+getColorCode:151> codes[darkgoldenrod]=136
+getColorCode:152> codes[lightsalmon3]=137
+getColorCode:153> codes[rosybrown]=138
+getColorCode:154> codes[grey63]=139
+getColorCode:155> codes[mediumpurple2]=140
+getColorCode:156> codes[mediumpurple1]=141
+getColorCode:157> codes[gold3]=142
+getColorCode:158> codes[darkkhaki]=143
+getColorCode:159> codes[navajowhite3]=144
+getColorCode:160> codes[grey69]=145
+getColorCode:161> codes[lightsteelblue3]=146
+getColorCode:162> codes[lightsteelblue]=147
+getColorCode:163> codes[yellow3]=148
+getColorCode:164> codes[darkolivegreen3]=149
+getColorCode:165> codes[darkseagreen3]=150
+getColorCode:166> codes[darkseagreen2]=151
+getColorCode:167> codes[lightcyan3]=152
+getColorCode:168> codes[lightskyblue1]=153
+getColorCode:169> codes[greenyellow]=154
+getColorCode:170> codes[darkolivegreen2]=155
+getColorCode:171> codes[palegreen1]=156
+getColorCode:172> codes[darkseagreen2]=157
+getColorCode:173> codes[darkseagreen1]=158
+getColorCode:174> codes[paleturquoise1]=159
+getColorCode:175> codes[red3]=160
+getColorCode:176> codes[deeppink3]=161
+getColorCode:177> codes[deeppink3]=162
+getColorCode:178> codes[magenta3]=163
+getColorCode:179> codes[magenta3]=164
+getColorCode:180> codes[magenta2]=165
+getColorCode:181> codes[darkorange3]=166
+getColorCode:182> codes[indianred]=167
+getColorCode:183> codes[hotpink3]=168
+getColorCode:184> codes[hotpink2]=169
+getColorCode:185> codes[orchid]=170
+getColorCode:186> codes[mediumorchid1]=171
+getColorCode:187> codes[orange3]=172
+getColorCode:188> codes[lightsalmon3]=173
+getColorCode:189> codes[lightpink3]=174
+getColorCode:190> codes[pink3]=175
+getColorCode:191> codes[plum3]=176
+getColorCode:192> codes[violet]=177
+getColorCode:193> codes[gold3]=178
+getColorCode:194> codes[lightgoldenrod3]=179
+getColorCode:195> codes[tan]=180
+getColorCode:196> codes[mistyrose3]=181
+getColorCode:197> codes[thistle3]=182
+getColorCode:198> codes[plum2]=183
+getColorCode:199> codes[yellow3]=184
+getColorCode:200> codes[khaki3]=185
+getColorCode:201> codes[lightgoldenrod2]=186
+getColorCode:202> codes[lightyellow3]=187
+getColorCode:203> codes[grey84]=188
+getColorCode:204> codes[lightsteelblue1]=189
+getColorCode:205> codes[yellow2]=190
+getColorCode:206> codes[darkolivegreen1]=191
+getColorCode:207> codes[darkolivegreen1]=192
+getColorCode:208> codes[darkseagreen1]=193
+getColorCode:209> codes[honeydew2]=194
+getColorCode:210> codes[lightcyan1]=195
+getColorCode:211> codes[red1]=196
+getColorCode:212> codes[deeppink2]=197
+getColorCode:213> codes[deeppink1]=198
+getColorCode:214> codes[deeppink1]=199
+getColorCode:215> codes[magenta2]=200
+getColorCode:216> codes[magenta1]=201
+getColorCode:217> codes[orangered1]=202
+getColorCode:218> codes[indianred1]=203
+getColorCode:219> codes[indianred1]=204
+getColorCode:220> codes[hotpink]=205
+getColorCode:221> codes[hotpink]=206
+getColorCode:222> codes[mediumorchid1]=207
+getColorCode:223> codes[darkorange]=208
+getColorCode:224> codes[salmon1]=209
+getColorCode:225> codes[lightcoral]=210
+getColorCode:226> codes[palevioletred1]=211
+getColorCode:227> codes[orchid2]=212
+getColorCode:228> codes[orchid1]=213
+getColorCode:229> codes[orange1]=214
+getColorCode:230> codes[sandybrown]=215
+getColorCode:231> codes[lightsalmon1]=216
+getColorCode:232> codes[lightpink1]=217
+getColorCode:233> codes[pink1]=218
+getColorCode:234> codes[plum1]=219
+getColorCode:235> codes[gold1]=220
+getColorCode:236> codes[lightgoldenrod2]=221
+getColorCode:237> codes[lightgoldenrod2]=222
+getColorCode:238> codes[navajowhite1]=223
+getColorCode:239> codes[mistyrose1]=224
+getColorCode:240> codes[thistle1]=225
+getColorCode:241> codes[yellow1]=226
+getColorCode:242> codes[lightgoldenrod1]=227
+getColorCode:243> codes[khaki1]=228
+getColorCode:244> codes[wheat1]=229
+getColorCode:245> codes[cornsilk1]=230
+getColorCode:246> codes[grey100]=231
+getColorCode:247> codes[grey3]=232
+getColorCode:248> codes[grey7]=233
+getColorCode:249> codes[grey11]=234
+getColorCode:250> codes[grey15]=235
+getColorCode:251> codes[grey19]=236
+getColorCode:252> codes[grey23]=237
+getColorCode:253> codes[grey27]=238
+getColorCode:254> codes[grey30]=239
+getColorCode:255> codes[grey35]=240
+getColorCode:256> codes[grey39]=241
+getColorCode:257> codes[grey42]=242
+getColorCode:258> codes[grey46]=243
+getColorCode:259> codes[grey50]=244
+getColorCode:260> codes[grey54]=245
+getColorCode:261> codes[grey58]=246
+getColorCode:262> codes[grey62]=247
+getColorCode:263> codes[grey66]=248
+getColorCode:264> codes[grey70]=249
+getColorCode:265> codes[grey74]=250
+getColorCode:266> codes[grey78]=251
+getColorCode:267> codes[grey82]=252
+getColorCode:268> codes[grey85]=253
+getColorCode:269> codes[grey89]=254
+getColorCode:270> codes[grey93]=255
+getColorCode:273> [[ black == foreground ]]
+getColorCode:278> [[ black == background ]]
+getColorCode:286> 1=black
+getColorCode:288> 1=black
+getColorCode:290> 1=black
+getColorCode:291> echo -n 000
+isSameColor:5> local color1=000
+isSameColor:6> getColorCode yellow
+getColorCode:2> [[ yellow = <-> ]]
+getColorCode:12> typeset -A codes
+getColorCode:15> codes[black]=000
+getColorCode:16> codes[maroon]=001
+getColorCode:17> codes[green]=002
+getColorCode:18> codes[olive]=003
+getColorCode:19> codes[navy]=004
+getColorCode:20> codes[purple]=005
+getColorCode:21> codes[teal]=006
+getColorCode:22> codes[silver]=007
+getColorCode:23> codes[grey]=008
+getColorCode:24> codes[red]=009
+getColorCode:25> codes[lime]=010
+getColorCode:26> codes[yellow]=011
+getColorCode:27> codes[blue]=012
+getColorCode:28> codes[fuchsia]=013
+getColorCode:29> codes[aqua]=014
+getColorCode:30> codes[white]=015
+getColorCode:31> codes[grey0]=016
+getColorCode:32> codes[navyblue]=017
+getColorCode:33> codes[darkblue]=018
+getColorCode:34> codes[blue3]=019
+getColorCode:35> codes[blue3]=020
+getColorCode:36> codes[blue1]=021
+getColorCode:37> codes[darkgreen]=022
+getColorCode:38> codes[deepskyblue4]=023
+getColorCode:39> codes[deepskyblue4]=024
+getColorCode:40> codes[deepskyblue4]=025
+getColorCode:41> codes[dodgerblue3]=026
+getColorCode:42> codes[dodgerblue2]=027
+getColorCode:43> codes[green4]=028
+getColorCode:44> codes[springgreen4]=029
+getColorCode:45> codes[turquoise4]=030
+getColorCode:46> codes[deepskyblue3]=031
+getColorCode:47> codes[deepskyblue3]=032
+getColorCode:48> codes[dodgerblue1]=033
+getColorCode:49> codes[green3]=034
+getColorCode:50> codes[springgreen3]=035
+getColorCode:51> codes[darkcyan]=036
+getColorCode:52> codes[lightseagreen]=037
+getColorCode:53> codes[deepskyblue2]=038
+getColorCode:54> codes[deepskyblue1]=039
+getColorCode:55> codes[green3]=040
+getColorCode:56> codes[springgreen3]=041
+getColorCode:57> codes[springgreen2]=042
+getColorCode:58> codes[cyan3]=043
+getColorCode:59> codes[darkturquoise]=044
+getColorCode:60> codes[turquoise2]=045
+getColorCode:61> codes[green1]=046
+getColorCode:62> codes[springgreen2]=047
+getColorCode:63> codes[springgreen1]=048
+getColorCode:64> codes[mediumspringgreen]=049
+getColorCode:65> codes[cyan2]=050
+getColorCode:66> codes[cyan1]=051
+getColorCode:67> codes[darkred]=052
+getColorCode:68> codes[deeppink4]=053
+getColorCode:69> codes[purple4]=054
+getColorCode:70> codes[purple4]=055
+getColorCode:71> codes[purple3]=056
+getColorCode:72> codes[blueviolet]=057
+getColorCode:73> codes[orange4]=058
+getColorCode:74> codes[grey37]=059
+getColorCode:75> codes[mediumpurple4]=060
+getColorCode:76> codes[slateblue3]=061
+getColorCode:77> codes[slateblue3]=062
+getColorCode:78> codes[royalblue1]=063
+getColorCode:79> codes[chartreuse4]=064
+getColorCode:80> codes[darkseagreen4]=065
+getColorCode:81> codes[paleturquoise4]=066
+getColorCode:82> codes[steelblue]=067
+getColorCode:83> codes[steelblue3]=068
+getColorCode:84> codes[cornflowerblue]=069
+getColorCode:85> codes[chartreuse3]=070
+getColorCode:86> codes[darkseagreen4]=071
+getColorCode:87> codes[cadetblue]=072
+getColorCode:88> codes[cadetblue]=073
+getColorCode:89> codes[skyblue3]=074
+getColorCode:90> codes[steelblue1]=075
+getColorCode:91> codes[chartreuse3]=076
+getColorCode:92> codes[palegreen3]=077
+getColorCode:93> codes[seagreen3]=078
+getColorCode:94> codes[aquamarine3]=079
+getColorCode:95> codes[mediumturquoise]=080
+getColorCode:96> codes[steelblue1]=081
+getColorCode:97> codes[chartreuse2]=082
+getColorCode:98> codes[seagreen2]=083
+getColorCode:99> codes[seagreen1]=084
+getColorCode:100> codes[seagreen1]=085
+getColorCode:101> codes[aquamarine1]=086
+getColorCode:102> codes[darkslategray2]=087
+getColorCode:103> codes[darkred]=088
+getColorCode:104> codes[deeppink4]=089
+getColorCode:105> codes[darkmagenta]=090
+getColorCode:106> codes[darkmagenta]=091
+getColorCode:107> codes[darkviolet]=092
+getColorCode:108> codes[purple]=093
+getColorCode:109> codes[orange4]=094
+getColorCode:110> codes[lightpink4]=095
+getColorCode:111> codes[plum4]=096
+getColorCode:112> codes[mediumpurple3]=097
+getColorCode:113> codes[mediumpurple3]=098
+getColorCode:114> codes[slateblue1]=099
+getColorCode:115> codes[yellow4]=100
+getColorCode:116> codes[wheat4]=101
+getColorCode:117> codes[grey53]=102
+getColorCode:118> codes[lightslategrey]=103
+getColorCode:119> codes[mediumpurple]=104
+getColorCode:120> codes[lightslateblue]=105
+getColorCode:121> codes[yellow4]=106
+getColorCode:122> codes[darkolivegreen3]=107
+getColorCode:123> codes[darkseagreen]=108
+getColorCode:124> codes[lightskyblue3]=109
+getColorCode:125> codes[lightskyblue3]=110
+getColorCode:126> codes[skyblue2]=111
+getColorCode:127> codes[chartreuse2]=112
+getColorCode:128> codes[darkolivegreen3]=113
+getColorCode:129> codes[palegreen3]=114
+getColorCode:130> codes[darkseagreen3]=115
+getColorCode:131> codes[darkslategray3]=116
+getColorCode:132> codes[skyblue1]=117
+getColorCode:133> codes[chartreuse1]=118
+getColorCode:134> codes[lightgreen]=119
+getColorCode:135> codes[lightgreen]=120
+getColorCode:136> codes[palegreen1]=121
+getColorCode:137> codes[aquamarine1]=122
+getColorCode:138> codes[darkslategray1]=123
+getColorCode:139> codes[red3]=124
+getColorCode:140> codes[deeppink4]=125
+getColorCode:141> codes[mediumvioletred]=126
+getColorCode:142> codes[magenta3]=127
+getColorCode:143> codes[darkviolet]=128
+getColorCode:144> codes[purple]=129
+getColorCode:145> codes[darkorange3]=130
+getColorCode:146> codes[indianred]=131
+getColorCode:147> codes[hotpink3]=132
+getColorCode:148> codes[mediumorchid3]=133
+getColorCode:149> codes[mediumorchid]=134
+getColorCode:150> codes[mediumpurple2]=135
+getColorCode:151> codes[darkgoldenrod]=136
+getColorCode:152> codes[lightsalmon3]=137
+getColorCode:153> codes[rosybrown]=138
+getColorCode:154> codes[grey63]=139
+getColorCode:155> codes[mediumpurple2]=140
+getColorCode:156> codes[mediumpurple1]=141
+getColorCode:157> codes[gold3]=142
+getColorCode:158> codes[darkkhaki]=143
+getColorCode:159> codes[navajowhite3]=144
+getColorCode:160> codes[grey69]=145
+getColorCode:161> codes[lightsteelblue3]=146
+getColorCode:162> codes[lightsteelblue]=147
+getColorCode:163> codes[yellow3]=148
+getColorCode:164> codes[darkolivegreen3]=149
+getColorCode:165> codes[darkseagreen3]=150
+getColorCode:166> codes[darkseagreen2]=151
+getColorCode:167> codes[lightcyan3]=152
+getColorCode:168> codes[lightskyblue1]=153
+getColorCode:169> codes[greenyellow]=154
+getColorCode:170> codes[darkolivegreen2]=155
+getColorCode:171> codes[palegreen1]=156
+getColorCode:172> codes[darkseagreen2]=157
+getColorCode:173> codes[darkseagreen1]=158
+getColorCode:174> codes[paleturquoise1]=159
+getColorCode:175> codes[red3]=160
+getColorCode:176> codes[deeppink3]=161
+getColorCode:177> codes[deeppink3]=162
+getColorCode:178> codes[magenta3]=163
+getColorCode:179> codes[magenta3]=164
+getColorCode:180> codes[magenta2]=165
+getColorCode:181> codes[darkorange3]=166
+getColorCode:182> codes[indianred]=167
+getColorCode:183> codes[hotpink3]=168
+getColorCode:184> codes[hotpink2]=169
+getColorCode:185> codes[orchid]=170
+getColorCode:186> codes[mediumorchid1]=171
+getColorCode:187> codes[orange3]=172
+getColorCode:188> codes[lightsalmon3]=173
+getColorCode:189> codes[lightpink3]=174
+getColorCode:190> codes[pink3]=175
+getColorCode:191> codes[plum3]=176
+getColorCode:192> codes[violet]=177
+getColorCode:193> codes[gold3]=178
+getColorCode:194> codes[lightgoldenrod3]=179
+getColorCode:195> codes[tan]=180
+getColorCode:196> codes[mistyrose3]=181
+getColorCode:197> codes[thistle3]=182
+getColorCode:198> codes[plum2]=183
+getColorCode:199> codes[yellow3]=184
+getColorCode:200> codes[khaki3]=185
+getColorCode:201> codes[lightgoldenrod2]=186
+getColorCode:202> codes[lightyellow3]=187
+getColorCode:203> codes[grey84]=188
+getColorCode:204> codes[lightsteelblue1]=189
+getColorCode:205> codes[yellow2]=190
+getColorCode:206> codes[darkolivegreen1]=191
+getColorCode:207> codes[darkolivegreen1]=192
+getColorCode:208> codes[darkseagreen1]=193
+getColorCode:209> codes[honeydew2]=194
+getColorCode:210> codes[lightcyan1]=195
+getColorCode:211> codes[red1]=196
+getColorCode:212> codes[deeppink2]=197
+getColorCode:213> codes[deeppink1]=198
+getColorCode:214> codes[deeppink1]=199
+getColorCode:215> codes[magenta2]=200
+getColorCode:216> codes[magenta1]=201
+getColorCode:217> codes[orangered1]=202
+getColorCode:218> codes[indianred1]=203
+getColorCode:219> codes[indianred1]=204
+getColorCode:220> codes[hotpink]=205
+getColorCode:221> codes[hotpink]=206
+getColorCode:222> codes[mediumorchid1]=207
+getColorCode:223> codes[darkorange]=208
+getColorCode:224> codes[salmon1]=209
+getColorCode:225> codes[lightcoral]=210
+getColorCode:226> codes[palevioletred1]=211
+getColorCode:227> codes[orchid2]=212
+getColorCode:228> codes[orchid1]=213
+getColorCode:229> codes[orange1]=214
+getColorCode:230> codes[sandybrown]=215
+getColorCode:231> codes[lightsalmon1]=216
+getColorCode:232> codes[lightpink1]=217
+getColorCode:233> codes[pink1]=218
+getColorCode:234> codes[plum1]=219
+getColorCode:235> codes[gold1]=220
+getColorCode:236> codes[lightgoldenrod2]=221
+getColorCode:237> codes[lightgoldenrod2]=222
+getColorCode:238> codes[navajowhite1]=223
+getColorCode:239> codes[mistyrose1]=224
+getColorCode:240> codes[thistle1]=225
+getColorCode:241> codes[yellow1]=226
+getColorCode:242> codes[lightgoldenrod1]=227
+getColorCode:243> codes[khaki1]=228
+getColorCode:244> codes[wheat1]=229
+getColorCode:245> codes[cornsilk1]=230
+getColorCode:246> codes[grey100]=231
+getColorCode:247> codes[grey3]=232
+getColorCode:248> codes[grey7]=233
+getColorCode:249> codes[grey11]=234
+getColorCode:250> codes[grey15]=235
+getColorCode:251> codes[grey19]=236
+getColorCode:252> codes[grey23]=237
+getColorCode:253> codes[grey27]=238
+getColorCode:254> codes[grey30]=239
+getColorCode:255> codes[grey35]=240
+getColorCode:256> codes[grey39]=241
+getColorCode:257> codes[grey42]=242
+getColorCode:258> codes[grey46]=243
+getColorCode:259> codes[grey50]=244
+getColorCode:260> codes[grey54]=245
+getColorCode:261> codes[grey58]=246
+getColorCode:262> codes[grey62]=247
+getColorCode:263> codes[grey66]=248
+getColorCode:264> codes[grey70]=249
+getColorCode:265> codes[grey74]=250
+getColorCode:266> codes[grey78]=251
+getColorCode:267> codes[grey82]=252
+getColorCode:268> codes[grey85]=253
+getColorCode:269> codes[grey89]=254
+getColorCode:270> codes[grey93]=255
+getColorCode:273> [[ yellow == foreground ]]
+getColorCode:278> [[ yellow == background ]]
+getColorCode:286> 1=yellow
+getColorCode:288> 1=yellow
+getColorCode:290> 1=yellow
+getColorCode:291> echo -n 011
+isSameColor:6> local color2=011
+isSameColor:8> return 1
+right_prompt_segment:39> foregroundColor yellow
+foregroundColor:1> [[ -z yellow ]]
+foregroundColor:4> getColor yellow
+getColor:2> [[ yellow = <-> ]]
+getColor:8> local named='%K{yellow}'
+getColor:10> local default='$'\''\033'\''\[49m'
+getColor:12> print -P '%K{yellow}'
+getColor:12> printf %q $'\C-[[43m'
+getColor:12> local quoted='$'\''\033'\''\[43m'
+getColor:13> [[ '$'\''\033'\''\[43m' = \$'\\033'\\\[49m ]]
+getColor:18> echo -n yellow
+foregroundColor:4> echo -n '%F{yellow}'
+right_prompt_segment:39> print_icon RIGHT_SEGMENT_SEPARATOR
+print_icon:1> local icon_name=RIGHT_SEGMENT_SEPARATOR
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:3> defined POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:1> local varname=POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+defined:3> typeset -p POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR
+print_icon:6> echo -n 
+right_prompt_segment:39> echo -n '%F{yellow}%f'
+right_prompt_segment:43> local visual_identifier
+right_prompt_segment:44> [[ -n RAM_ICON ]]
+right_prompt_segment:45> visual_identifier=+right_prompt_segment:45> print_icon RAM_ICON
+print_icon:1> local icon_name=RAM_ICON
+print_icon:2> local ICON_USER_VARIABLE=POWERLEVEL9K_RAM_ICON
+print_icon:3> defined POWERLEVEL9K_RAM_ICON
+defined:1> local varname=POWERLEVEL9K_RAM_ICON
+defined:3> typeset -p POWERLEVEL9K_RAM_ICON
+print_icon:6> echo -n RAM
+right_prompt_segment:45> visual_identifier=RAM
+right_prompt_segment:46> [[ -n RAM ]]
+right_prompt_segment:50> [[ -n 0.00K ]]
+right_prompt_segment:50> visual_identifier=' RAM'
+right_prompt_segment:52> local visual_identifier_color_variable=POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+right_prompt_segment:53> set_default POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR black
+set_default:1> local varname=POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+set_default:2> local default_value=black
+set_default:4> defined POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+defined:1> local varname=POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+defined:3> typeset -p POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR
+set_default:4> typeset -g 'POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_COLOR=black'
+right_prompt_segment:54> visual_identifier='%F{black%} RAM%f'
+right_prompt_segment:58> echo -n '%K{yellow}%F{black}'
+right_prompt_segment:61> [[ false == false ]]
+right_prompt_segment:61> echo -n ' '
+right_prompt_segment:64> [[ -n 0.00K ]]
+right_prompt_segment:64> echo -n 0.00K
+right_prompt_segment:66> echo -n '%F{black%} RAM%f'
+right_prompt_segment:68> CURRENT_RIGHT_BG=yellow
+right_prompt_segment:69> last_right_element_index=3
+build_right_prompt:15> index=4
+build_right_prompt:19> echo -n %E

Using any other random ZSH theme yields to a shorter verbose and, consequently, faster response. (not enough nearly as fast as what I'd get in a Linux machine,, as it is still longer than one second, but one can notice the difference) .

My .zshrc is as follows (posting only the uncommented lines):

export ZSH=/cygdrive/c/Users/{user]/.oh-my-zsh
ZSH_THEME="powerlevel9k/powerlevel9k"

plugins=(
  git
)
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir) 
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status command_execution_time ram)
source $ZSH/oh-my-zsh.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment