summaryrefslogtreecommitdiff
path: root/config/lean.zsh
diff options
context:
space:
mode:
authorromkatv <roman.perepelitsa@gmail.com>2019-07-17 13:22:29 +0300
committerromkatv <roman.perepelitsa@gmail.com>2019-07-17 13:22:29 +0300
commitafe499c9676cc6987be605c141c9ef9bd1de2577 (patch)
treee427821e4bc41b3d2794c4721fba0b25e5a8fbc9 /config/lean.zsh
parent028a02df06113f22e718789bc2251124ba3938ce (diff)
comments
Diffstat (limited to 'config/lean.zsh')
-rw-r--r--config/lean.zsh62
1 files changed, 42 insertions, 20 deletions
diff --git a/config/lean.zsh b/config/lean.zsh
index bf188766..1138fc85 100644
--- a/config/lean.zsh
+++ b/config/lean.zsh
@@ -1,3 +1,7 @@
+# Looking for a nice color? Here's a one-liner to print colormap.
+#
+# for i in {0..255}; do print -Pn "%${i}F${(l:3::0:)i}%f " ${${(M)$((i%8)):#7}:+$'\n'}; done
+
if [[ -o 'aliases' ]]; then
'builtin' 'unsetopt' 'aliases'
local p9k_lean_restore_aliases=1
@@ -10,7 +14,7 @@ fi
setopt no_unset
# The list of segments shown on the left. Fill it with the most important segments.
- typeset -ga POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(
+ typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(
# =========================[ Line #1 ]=========================
dir # current directory
vcs # git status
@@ -23,7 +27,7 @@ fi
# Right prompt on the last prompt line (where you are typing your commands) gets
# automatically hidden when the input line reaches it. Right prompt above the
# last prompt line gets hidden if it would overlap with left prompt.
- typeset -ga POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
+ typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
# =========================[ Line #1 ]=========================
status # exit code of the last command
command_execution_time # duration of the last command
@@ -43,19 +47,32 @@ fi
# time # current time
)
- # No background colors.
- typeset -g POWERLEVEL9K_BACKGROUND=
- # No segment icons.
+ # Basic style options that define the overall look of your prompt.
+ typeset -g POWERLEVEL9K_BACKGROUND= # transparent background
+ typeset -g POWERLEVEL9K_{LEFT,RIGHT}_{LEFT,RIGHT}_WHITESPACE= # no surrounding whitespace
+ typeset -g POWERLEVEL9K_RPROMPT_ON_NEWLINE=false # align the first left/right lines
+ typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SUBSEGMENT_SEPARATOR=' ' # separate segments with a space
+ typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SEGMENT_SEPARATOR= # no end-of-line symbol
+
+ # Disable segment icons by default.
+ #
+ # To set a specific icon for a segment (e.g., dir), define
+ # POWERLEVEL9K_DIR_VISUAL_IDENTIFIER_EXPANSION='⭐'.
+ #
+ # To set a specific icon for a segment in a given state (e.g., dir in state NOT_WRITABLE),
+ # define POWERLEVEL9K_DIR_NOT_WRITABLE_VISUAL_IDENTIFIER_EXPANSION='⭐'.
+ #
+ # To enable default segment icons for one segment (e.g., dir), define
+ # POWERLEVEL9K_DIR_VISUAL_IDENTIFIER_EXPANSION='${P9K_VISUAL_IDENTIFIER}'.
+ #
+ # To enable default icons for all segments, don't set POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION
+ # or set it to '${P9K_VISUAL_IDENTIFIER}'.
+ #
+ # When a segment is displaying its default icon, in addition to being able to chage it with
+ # VISUAL_IDENTIFIER_EXPANSION as described above, you can also change it with an override
+ # such as POWERLEVEL9K_LOCK_ICON='⭐'. This will change the icon in every segment that uses
+ # LOCK_ICON as default icon.
typeset -g POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION=
- # No whitespace within segments.
- typeset -g POWERLEVEL9K_{LEFT,RIGHT}_{LEFT,MIDDLE,RIGHT}_WHITESPACE=
- # No trailing space.
- typeset -g POWERLEVEL9K_LEFT_SEGMENT_END_SEPARATOR=
- # Don't push right prompt to the last prompt line.
- typeset -g POWERLEVEL9K_RPROMPT_ON_NEWLINE=false
- # Separate segments with a space.
- typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SUBSEGMENT_SEPARATOR=' '
- typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SEGMENT_SEPARATOR=
# Add an empty line before each prompt. If you set it to false, you might want to
# set POWERLEVEL9K_SHOW_RULER to true below.
@@ -72,11 +89,11 @@ fi
# Red prompt symbol if the last command failed.
typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS}_FOREGROUND=196
# Default prompt symbol.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='❯ '
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='❯'
# Prompt symbol in command vi mode.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='❮ '
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='❮'
# Prompt symbol in visual vi mode.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='Ⅴ '
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='Ⅴ'
# Enable special styling for non-writable directories. If set to false,
# POWERLEVEL9K_DIR_NOT_WRITABLE_FOREGROUND defined below won't have effect.
@@ -131,6 +148,11 @@ fi
# Enable counters for staged, unstaged, etc.
typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED,COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=-1
+ # Show status of repositories of these types. You can add svn and/or hg if you are
+ # using them. If you do, your prompt may become slow even when your current directory
+ # isn't in an svn or hg reposotiry.
+ typeset -g POWERLEVEL9K_VCS_BACKENDS=(git)
+
# These settings are used for respositories other than Git or when gitstatusd fails and
# Powerlevel10k has to fall back to using vcs_info.
typeset -g POWERLEVEL9K_VCS_CLEAN_FOREGROUND=76
@@ -152,7 +174,7 @@ fi
# Error status color.
typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=9
# Don't show status unless the last command was terminated by a signal.
- # Show the signal as INT, ABORT, KILL, etc.
+ # Show signals as "INT", "ABORT", "KILL", etc.
typeset -g POWERLEVEL9K_STATUS_ERROR_CONTENT_EXPANSION='${${P9K_CONTENT#SIG}//[!A-Z]}'
# Show execution time of the last command if takes longer than this many seconds.
@@ -175,8 +197,8 @@ fi
typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=244
# Context color when running with privileges.
typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=11
- # Don't show context unless running with privileges on via SSH.
- typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_CONTENT_EXPANSION=
+ # Don't show context unless running with privileges on in SSH.
+ typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_{CONTENT,VISUAL_IDENTIFIER}_EXPANSION=
typeset -g POWERLEVEL9K_ALWAYS_SHOW_CONTEXT=true
# Python virtual environment color.