diff options
-rw-r--r-- | README.md | 40 | ||||
-rw-r--r-- | powerlevel9k.zsh-theme | 13 |
2 files changed, 34 insertions, 19 deletions
@@ -44,7 +44,8 @@ like with a normal installation and default settings: - [Styling](#styling) - [Double-Lined Prompt](#double-lined-prompt) - [Light Color Theme](#light-color-theme) - - [Further color customizations](#further-color-customizations) + - [Segment Color Customization](#segment-color-customization) + - [Special Segment Colors](#special-segment-colors) - [Troubleshooting](#troubleshooting) - [Gaps Between Segments](#gaps-between-segments) - [Meta](#meta) @@ -360,20 +361,36 @@ Light'](https://github.com/altercation/solarized) users. Check it out:  -#### Further color customizations +#### Segment Color Customization For each segment in your prompt, you can specify a foreground and background -color by setting them in your `~/.zshrc`. For example, to change the appearance -of the `time` segment, you would use: +color by setting them in your `~/.zshrc`. Use the segment names from the above +section `Segment Customization`. For example, to change the appearance of the +`time` segment, you would use: POWERLEVEL9K_TIME_FOREGROUND='red' POWERLEVEL9K_TIME_BACKGROUND='blue' -Use the segment names from the above section `Segment Customization`. Some of -the Segments have special color variables, as they change the colors according -to some internal rules. These Segments are `vcs`, `rspec_stats`, `symfony2_tests`: +Note that you can also use a colorcode value. Example: - # General VCS color segments: + POWERLEVEL9K_VCS_FOREGROUND='021' # Dark blue + +For a full list of supported colors, run the `spectrum_ls` program in your +terminal. + +#### Special Segment Colors + +Some segments have additional color options if you want to customize the look of +your prompt even further. These Segments are `context`, `vcs`, `rspec_stats`, +`symfony2_tests`: + + # Customizing `context` colors for root and non-root users + POWERLEVEL9K_CONTEXT_DEFAULT_BACKGROUND="green" + POWERLEVEL9K_CONTEXT_DEFAULT_FOREGROUND="cyan" + POWERLEVEL9K_CONTEXT_ROOT_BACKGROUND="red" + POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND="blue" + + # Advanced `vcs` color customization POWERLEVEL9K_VCS_FOREGROUND='blue' POWERLEVEL9K_VCS_DARK_FOREGROUND='black' POWERLEVEL9K_VCS_BACKGROUND='green' @@ -401,13 +418,6 @@ to some internal rules. These Segments are `vcs`, `rspec_stats`, `symfony2_tests POWERLEVEL9K_SYMFONY2_TESTS_BAD_FOREGROUND='red' POWERLEVEL9K_SYMFONY2_TESTS_BAD_BACKGROUND='white' -You could also use a colorcode value. Example: - - POWERLEVEL9K_VCS_FOREGROUND='021' # Dark blue - -For a full list of supported colors, run the `spectrum_ls` program in your -terminal. - ### Troubleshooting Here are some fixes to some common problems. diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme index a9105482..ac7d98fa 100644 --- a/powerlevel9k.zsh-theme +++ b/powerlevel9k.zsh-theme @@ -76,7 +76,7 @@ case $POWERLEVEL9K_MODE in VCS_BOOKMARK_ICON="\uE87B" # VCS_COMMIT_ICON="\uE821 " # VCS_BRANCH_ICON="\uE220" # - VCS_REMOTE_BRANCH_ICON="\uE804" # + VCS_REMOTE_BRANCH_ICON=" \uE804 " # VCS_GIT_ICON="\uE20E " # VCS_HG_ICON="\uE1C3 " # ;; @@ -132,7 +132,7 @@ case $POWERLEVEL9K_MODE in VCS_BOOKMARK_ICON="\uE87B" # VCS_COMMIT_ICON="\uE821 " # VCS_BRANCH_ICON="\uE220" # - VCS_REMOTE_BRANCH_ICON="\uE804" # + VCS_REMOTE_BRANCH_ICON=" \uE804 " # VCS_GIT_ICON="\uE20E " # VCS_HG_ICON="\uE1C3 " # ;; @@ -437,7 +437,12 @@ prompt_aws() { # Note that if $DEFAULT_USER is not set, this prompt segment will always print prompt_context() { if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then - $1_prompt_segment "$0" "$DEFAULT_COLOR" "011" "%(!.%{%F{yellow}%}.)$USER@%m" + if [[ $(print -P "%#") == '#' ]]; then + # Shell runs as root + $1_prompt_segment "$0_ROOT" "$DEFAULT_COLOR" "yellow" "$USER@%m" + else + $1_prompt_segment "$0_DEFAULT" "$DEFAULT_COLOR" "011" "$USER@%m" + fi fi } @@ -482,7 +487,7 @@ prompt_longstatus() { prompt_node_version() { local nvm_prompt=$(node -v 2>/dev/null) [[ -z "${nvm_prompt}" ]] && return - NODE_ICON=$'\u2B22 ' # ⬢ + NODE_ICON=$'\u2B22' # ⬢ $1_prompt_segment "$0" "green" "white" "${nvm_prompt:1} $NODE_ICON" } |