diff --git a/README.md b/README.md index 662a6cc3..7e302ab1 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,7 @@ this theme focus on three primary goals: - [Special Segment Colors](#special-segment-colors) - [Troubleshooting](#troubleshooting) - [Gaps Between Segments](#gaps-between-segments) + - [Segment Colors are Wrong](#segment-colors-are-wrong) - [Meta](#meta) - [Kudos](#kudos) - [Developing](#developing) @@ -276,10 +277,17 @@ to a certain length: #### The 'time' segment By default the time is show in 'H:M:S' format. If you want to change it, -just set another format in your `~/.zshrc`: +just set another format in your `~/.zshrc`. As an example, this is a reversed +time format: # Reversed time format - POWERLEVEL9K_TIME_FORMAT='%D{%S:%M:%H}' + POWERLEVEL9K_TIME_FORMAT='%D{%S:%M:%H}' + +If you are using an "Awesome Powerline Font", you can add a time symbol to this +segment, as well: + + # Output time, date, and a symbol from the "Awesome Powerline Font" set + POWERLEVEL9K_TIME_FORMAT="%D{%H:%M:%S \uE868 %d.%m.%y}" #### Unit Test Ratios @@ -436,6 +444,15 @@ Thankfully, this is easy to fix. This happens if you have successfully installed Powerline fonts, but did not make a Powerline font the default font in your terminal emulator (e.g., 'terminator', 'gnome-terminal', 'konsole', etc.,). +#### Segment Colors are Wrong + +If the color display within your terminal seems off, it's possible you are using +a reduced color set. You can check this by invoking `echotc Co` in your +terminal, which should yield `256`. If you see something different, try setting +`xterm-256color` in your `~/.zshrc`: + + TERM=xterm-256color + ### Meta #### Kudos diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme index 55fbb017..60e115e9 100644 --- a/powerlevel9k.zsh-theme +++ b/powerlevel9k.zsh-theme @@ -26,7 +26,7 @@ # export DEFAULT_USER= # # Customize the format of the time segment. Example of reverse format: -# POWERLEVEL9K_TIME_FORMAT='%D{%S:%M:%H}' +# POWERLEVEL9K_TIME_FORMAT='%D{%S:%M:%H}' # # Show the hash/changeset string in the `vcs` segment: # POWERLEVEL9K_SHOW_CHANGESET=true @@ -46,12 +46,30 @@ # OS detection, default to Linux case $(uname) in - FreeBSD) OS=FreeBSD ;; - DragonFly) OS=FreeBSD ;; - OpenBSD) OS=OpenBSD ;; - Darwin) OS=Darwin ;; - SunOS) OS=SunOS ;; - *) OS=Linux ;; + FreeBSD) + OS=FreeBSD + OS_ICON=$'\U1F608' # ๐Ÿ˜ˆ + ;; + DragonFly) + OS=FreeBSD + OS_ICON=$'\U1F608' # ๐Ÿ˜ˆ + ;; + OpenBSD) + OS=OpenBSD + OS_ICON=$'\U1F608' # ๐Ÿ˜ˆ + ;; + Darwin) + OS=Darwin + OS_ICON=$'\UF8FF' # ๏ฃฟ + ;; + SunOS) + OS=SunOS + OS_ICON=$'\U1F31E' # ๐ŸŒž + ;; + *) + OS=Linux + OS_ICON=$'\U1F427' # ๐Ÿง + ;; esac # The `CURRENT_BG` variable is used to remember what the last BG color used was @@ -69,112 +87,112 @@ case $POWERLEVEL9K_MODE in # See https://github.com/gabrielelana/awesome-terminal-fonts/tree/patching-strategy/patched LEFT_SEGMENT_SEPARATOR='' RIGHT_SEGMENT_SEPARATOR='' - ROOT_ICON="\uE801" # ๎  - RUBY_ICON="\uE847" # ๎ก‡ - AWS_ICON="\uE895" # ๎ข• - BACKGROUND_JOBS_ICON="\uE82F " # ๎ ฏ - TEST_ICON="\uE891" # ๎ข‘ - OK_ICON="\u2713" # โœ“ - FAIL_ICON="\u2718" # โœ˜ + ROOT_ICON="\UE801" # ๎  + RUBY_ICON="\UE847" # ๎ก‡ + AWS_ICON="\UE895" # ๎ข• + BACKGROUND_JOBS_ICON="\UE82F " # ๎ ฏ + TEST_ICON="\UE891" # ๎ข‘ + OK_ICON="\U2713" # โœ“ + FAIL_ICON="\U2718" # โœ˜ SYMFONY_ICON="SF" - VCS_UNTRACKED_ICON="\uE16C" # ๎…ฌ - VCS_UNSTAGED_ICON="\uE17C" # ๎…ผ - VCS_STAGED_ICON="\uE168" # ๎…จ - VCS_STASH_ICON="\uE133 " # ๎„ณ - #VCS_INCOMING_CHANGES="\uE1EB " # ๎‡ซ - #VCS_INCOMING_CHANGES="\uE80D " # ๎  - VCS_INCOMING_CHANGES="\uE131 " # ๎„ฑ - #VCS_OUTGOING_CHANGES="\uE1EC " # ๎‡ฌ - #VCS_OUTGOING_CHANGES="\uE80E " # ๎ Ž - VCS_OUTGOING_CHANGES="\uE132 " # ๎„ฒ - VCS_TAG_ICON="\uE817 " # ๎ — - VCS_BOOKMARK_ICON="\uE87B" # ๎กป - VCS_COMMIT_ICON="\uE821 " # ๎ ก - VCS_BRANCH_ICON="\uE220" # ๎ˆ  - VCS_REMOTE_BRANCH_ICON=" \uE804 " # ๎ „ - VCS_GIT_ICON="\uE20E " # ๎ˆŽ - VCS_HG_ICON="\uE1C3 " # ๎‡ƒ + VCS_UNTRACKED_ICON="\UE16C" # ๎…ฌ + VCS_UNSTAGED_ICON="\UE17C" # ๎…ผ + VCS_STAGED_ICON="\UE168" # ๎…จ + VCS_STASH_ICON="\UE133 " # ๎„ณ + #VCS_INCOMING_CHANGES="\UE1EB " # ๎‡ซ + #VCS_INCOMING_CHANGES="\UE80D " # ๎  + VCS_INCOMING_CHANGES="\UE131 " # ๎„ฑ + #VCS_OUTGOING_CHANGES="\UE1EC " # ๎‡ฌ + #VCS_OUTGOING_CHANGES="\UE80E " # ๎ Ž + VCS_OUTGOING_CHANGES="\UE132 " # ๎„ฒ + VCS_TAG_ICON="\UE817 " # ๎ — + VCS_BOOKMARK_ICON="\UE87B" # ๎กป + VCS_COMMIT_ICON="\UE821 " # ๎ ก + VCS_BRANCH_ICON="\UE220" # ๎ˆ  + VCS_REMOTE_BRANCH_ICON=" \UE804 " # ๎ „ + VCS_GIT_ICON="\UE20E " # ๎ˆŽ + VCS_HG_ICON="\UE1C3 " # ๎‡ƒ ;; 'compatible') - LEFT_SEGMENT_SEPARATOR="\u2B80" # โฎ€ - RIGHT_SEGMENT_SEPARATOR="\u2B82" # โฎ‚ - ROOT_ICON="\u26A1" # โšก + LEFT_SEGMENT_SEPARATOR="\U2B80" # โฎ€ + RIGHT_SEGMENT_SEPARATOR="\U2B82" # โฎ‚ + ROOT_ICON="\U26A1" # โšก RUBY_ICON='' AWS_ICON="AWS:" - BACKGROUND_JOBS_ICON="\u2699" # โš™ + BACKGROUND_JOBS_ICON="\U2699" # โš™ TEST_ICON='' - OK_ICON="\u2713" # โœ“ - FAIL_ICON="\u2718" # โœ˜ + OK_ICON="\U2713" # โœ“ + FAIL_ICON="\U2718" # โœ˜ SYMFONY_ICON="SF" VCS_UNTRACKED_ICON='?' - VCS_UNSTAGED_ICON="\u25CF" # โ— - VCS_STAGED_ICON="\u271A" # โœš - VCS_STASH_ICON="\u235F" # โŸ - VCS_INCOMING_CHANGES="\u2193" # โ†“ - VCS_OUTGOING_CHANGES="\u2191" # โ†‘ + VCS_UNSTAGED_ICON="\U25CF" # โ— + VCS_STAGED_ICON="\U271A" # โœš + VCS_STASH_ICON="\U235F" # โŸ + VCS_INCOMING_CHANGES="\U2193" # โ†“ + VCS_OUTGOING_CHANGES="\U2191" # โ†‘ VCS_TAG_ICON='' - VCS_BOOKMARK_ICON="\u263F" # โ˜ฟ + VCS_BOOKMARK_ICON="\U263F" # โ˜ฟ VCS_COMMIT_ICON='' VCS_BRANCH_ICON='@' - VCS_REMOTE_BRANCH_ICON="\u2192" # โ†’ + VCS_REMOTE_BRANCH_ICON="\U2192" # โ†’ VCS_GIT_ICON='Git' VCS_HG_ICON='HG' ;; 'awesome-patched') # Awesome-Patched Font required! # See https://github.com/gabrielelana/awesome-terminal-fonts/tree/patching-strategy/patched - LEFT_SEGMENT_SEPARATOR="\uE0B0" # ๎‚ฐ - RIGHT_SEGMENT_SEPARATOR="\uE0B2" # ๎‚ฒ - ROOT_ICON="\u26A1" # โšก - RUBY_ICON="\uE847" # ๎ก‡ - AWS_ICON="\uE895" # ๎ข• - BACKGROUND_JOBS_ICON="\uE82F " # ๎ ฏ - TEST_ICON="\uE891" # ๎ข‘ - OK_ICON="\u2713" # โœ“ - FAIL_ICON="\u2718" # โœ˜ + LEFT_SEGMENT_SEPARATOR="\UE0B0" # ๎‚ฐ + RIGHT_SEGMENT_SEPARATOR="\UE0B2" # ๎‚ฒ + ROOT_ICON="\U26A1" # โšก + RUBY_ICON="\UE847" # ๎ก‡ + AWS_ICON="\UE895" # ๎ข• + BACKGROUND_JOBS_ICON="\UE82F " # ๎ ฏ + TEST_ICON="\UE891" # ๎ข‘ + OK_ICON="\U2713" # โœ“ + FAIL_ICON="\U2718" # โœ˜ SYMFONY_ICON="SF" - VCS_UNTRACKED_ICON="\uE16C" # ๎…ฌ - VCS_UNSTAGED_ICON="\uE17C" # ๎…ผ - VCS_STAGED_ICON="\uE168" # ๎…จ - VCS_STASH_ICON="\uE133 " # ๎„ณ - #VCS_INCOMING_CHANGES="\uE1EB " # ๎‡ซ - #VCS_INCOMING_CHANGES="\uE80D " # ๎  - VCS_INCOMING_CHANGES="\uE131 " # ๎„ฑ - #VCS_OUTGOING_CHANGES="\uE1EC " # ๎‡ฌ - #VCS_OUTGOING_CHANGES="\uE80E " # ๎ Ž - VCS_OUTGOING_CHANGES="\uE132 " # ๎„ฒ - VCS_TAG_ICON="\uE817 " # ๎ — - VCS_BOOKMARK_ICON="\uE87B" # ๎กป - VCS_COMMIT_ICON="\uE821 " # ๎ ก - VCS_BRANCH_ICON="\uE220" # ๎ˆ  - VCS_REMOTE_BRANCH_ICON=" \uE804 " # ๎ „ - VCS_GIT_ICON="\uE20E " # ๎ˆŽ - VCS_HG_ICON="\uE1C3 " # ๎‡ƒ + VCS_UNTRACKED_ICON="\UE16C" # ๎…ฌ + VCS_UNSTAGED_ICON="\UE17C" # ๎…ผ + VCS_STAGED_ICON="\UE168" # ๎…จ + VCS_STASH_ICON="\UE133 " # ๎„ณ + #VCS_INCOMING_CHANGES="\UE1EB " # ๎‡ซ + #VCS_INCOMING_CHANGES="\UE80D " # ๎  + VCS_INCOMING_CHANGES="\UE131 " # ๎„ฑ + #VCS_OUTGOING_CHANGES="\UE1EC " # ๎‡ฌ + #VCS_OUTGOING_CHANGES="\UE80E " # ๎ Ž + VCS_OUTGOING_CHANGES="\UE132 " # ๎„ฒ + VCS_TAG_ICON="\UE817 " # ๎ — + VCS_BOOKMARK_ICON="\UE87B" # ๎กป + VCS_COMMIT_ICON="\UE821 " # ๎ ก + VCS_BRANCH_ICON="\UE220" # ๎ˆ  + VCS_REMOTE_BRANCH_ICON=" \UE804 " # ๎ „ + VCS_GIT_ICON="\UE20E " # ๎ˆŽ + VCS_HG_ICON="\UE1C3 " # ๎‡ƒ ;; *) # Powerline-Patched Font required! # See https://github.com/Lokaltog/powerline-fonts - LEFT_SEGMENT_SEPARATOR="\uE0B0" # ๎‚ฐ - RIGHT_SEGMENT_SEPARATOR="\uE0B2" # ๎‚ฒ - ROOT_ICON="\u26A1" # โšก + LEFT_SEGMENT_SEPARATOR="\UE0B0" # ๎‚ฐ + RIGHT_SEGMENT_SEPARATOR="\UE0B2" # ๎‚ฒ + ROOT_ICON="\U26A1" # โšก RUBY_ICON='' AWS_ICON="AWS:" - BACKGROUND_JOBS_ICON="\u2699" # โš™ + BACKGROUND_JOBS_ICON="\U2699" # โš™ TEST_ICON='' - OK_ICON="\u2713" # โœ“ - FAIL_ICON="\u2718" # โœ˜ + OK_ICON="\U2713" # โœ“ + FAIL_ICON="\U2718" # โœ˜ SYMFONY_ICON="SF" VCS_UNTRACKED_ICON='?' - VCS_UNSTAGED_ICON="\u25CF" # โ— - VCS_STAGED_ICON="\u271A" # โœš - VCS_STASH_ICON="\u235F" # โŸ - VCS_INCOMING_CHANGES="\u2193" # โ†“ - VCS_OUTGOING_CHANGES="\u2191" # โ†‘ + VCS_UNSTAGED_ICON="\U25CF" # โ— + VCS_STAGED_ICON="\U271A" # โœš + VCS_STASH_ICON="\U235F" # โŸ + VCS_INCOMING_CHANGES="\U2193" # โ†“ + VCS_OUTGOING_CHANGES="\U2191" # โ†‘ VCS_TAG_ICON='' - VCS_BOOKMARK_ICON="\u263F" # โ˜ฟ + VCS_BOOKMARK_ICON="\U263F" # โ˜ฟ VCS_COMMIT_ICON='' - VCS_BRANCH_ICON="\uE0A0 " # ๎‚  - VCS_REMOTE_BRANCH_ICON="\u2192" # โ†’ + VCS_BRANCH_ICON="\UE0A0 " # ๎‚  + VCS_REMOTE_BRANCH_ICON="\U2192" # โ†’ VCS_GIT_ICON="" VCS_HG_ICON="" ;; @@ -232,8 +250,8 @@ zstyle ':vcs_info:*' enable git hg zstyle ':vcs_info:*' check-for-changes true VCS_DEFAULT_FORMAT="$VCS_CHANGESET_PREFIX%F{$VCS_FOREGROUND_COLOR}%b%c%u%m%f" -zstyle ':vcs_info:git:*' formats "%F{$VCS_FOREGROUND_COLOR}$VCS_GIT_ICON%f$VCS_DEFAULT_FORMAT" -zstyle ':vcs_info:hg:*' formats "%F{$VCS_FOREGROUND_COLOR}$VCS_HG_ICON%f$VCS_DEFAULT_FORMAT" +zstyle ':vcs_info:git:*' formats "%F{$VCS_FOREGROUND_COLOR}$VCS_GIT_ICON%f$VCS_DEFAULT_FORMAT" +zstyle ':vcs_info:hg:*' formats "%F{$VCS_FOREGROUND_COLOR}$VCS_HG_ICON%f$VCS_DEFAULT_FORMAT" zstyle ':vcs_info:*' actionformats " %b %F{red}| %a%f" @@ -268,7 +286,7 @@ fi # The latter three can be omitted, left_prompt_segment() { # Overwrite given background-color by user defined variable for this segment. - # We get as first Parameter the function name, which called this function. + # We get as first Parameter the function name, which called this function. # From the given function name, we strip the "prompt_"-prefix and uppercase it. # This is, prefixed with "POWERLEVEL9K_" and suffixed with either "_BACKGROUND" # of "_FOREGROUND", our variable name. So each new Segment should automatically @@ -442,7 +460,7 @@ CURRENT_BG='NONE' # AWS Profile prompt_aws() { local aws_profile="$AWS_DEFAULT_PROFILE" - if [[ -n "$aws_profile" ]]; + if [[ -n "$aws_profile" ]]; then $1_prompt_segment "$0" red white "$AWS_ICON $aws_profile" fi @@ -502,22 +520,14 @@ 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" } # print a little OS icon prompt_os_icon() { - if [[ "$OS" == "Darwin" ]]; then - LOGO=$'\uF8FF' # ๏ฃฟ - elif [[ "$OS" == 'Linux' ]]; then - LOGO=$'\u1F427' # ๐Ÿง - elif [[ "$OS" == 'FreeBSD' ]]; then - LOGO=$'\u1F608' # ๐Ÿ˜ˆ - fi - - $1_prompt_segment "$0" "008" "241" "$LOGO" + $1_prompt_segment "$0" "008" "241" "$OS_ICON" } # rbenv information @@ -673,7 +683,6 @@ $POWERLEVEL9K_MULTILINE_SECOND_PROMPT_PREFIX" RPROMPT_SUFFIX='' fi RPROMPT=$RPROMPT_PREFIX"%{%f%b%k%}"'$(build_right_prompt)'"%{$reset_color%}"$RPROMPT_SUFFIX - } powerlevel9k_init "$@"