From 42706adf0bb5cdb56285b1c7049a7a2db8286fcc Mon Sep 17 00:00:00 2001 From: Ismo Vuorinen Date: Tue, 8 Aug 2023 12:28:21 +0300 Subject: [PATCH] feat(zsh): now using romkatv/powerlevel10k theme --- .github/screenshots/tmux-astronvim-130x40.png | Bin 0 -> 157302 bytes .../screenshots/tmux-powerlevel10k-130x20.png | Bin 0 -> 42936 bytes .ignore | 5 + .markdownlintignore | 5 - Brewfile | 2 - README.md | 18 +- base/bashrc | 20 +- base/p10k.zsh | 1713 +++++++++++++++++ base/zshrc | 42 +- config/functions | 3 + config/starship.toml | 37 - local/bin/dfm | 1 - 12 files changed, 1768 insertions(+), 78 deletions(-) create mode 100644 .github/screenshots/tmux-astronvim-130x40.png create mode 100644 .github/screenshots/tmux-powerlevel10k-130x20.png create mode 100644 .ignore delete mode 100644 .markdownlintignore create mode 100644 base/p10k.zsh delete mode 100644 config/starship.toml diff --git a/.github/screenshots/tmux-astronvim-130x40.png b/.github/screenshots/tmux-astronvim-130x40.png new file mode 100644 index 0000000000000000000000000000000000000000..2300b3a986b77aadafeb8104c3fc8a1a96114c61 GIT binary patch literal 157302 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 z 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 Z%Qb_nMjK9M&i#Fny{*%~UY_(y{0~YlaNYm_ literal 0 HcmV?d00001 diff --git a/.ignore b/.ignore new file mode 100644 index 0000000..ca7ec27 --- /dev/null +++ b/.ignore @@ -0,0 +1,5 @@ +config/cheat/cheatsheets/community/** +config/tmux/** +config/nvim/** +tools/** + diff --git a/.markdownlintignore b/.markdownlintignore deleted file mode 100644 index 19bc3ac..0000000 --- a/.markdownlintignore +++ /dev/null @@ -1,5 +0,0 @@ -config/cheat/cheatsheets/community/ -config/tmux/ -config/nvim/ -tools/ - diff --git a/Brewfile b/Brewfile index d653887..e8b71fa 100644 --- a/Brewfile +++ b/Brewfile @@ -240,8 +240,6 @@ brew "rust" brew "shellcheck" # Autoformat shell script source code brew "shfmt" -# Cross-shell prompt for astronauts -brew "starship" # Version control system designed to be a better CVS brew "subversion" # Feature-rich console based todo list manager diff --git a/README.md b/README.md index 9f8b1e0..e1cd5d3 100644 --- a/README.md +++ b/README.md @@ -23,13 +23,13 @@ fork or download the repo as a zip and go from there with your own configs. ## The looks -## tmux with starship, the default view +## tmux with powerlevel10k, the default view -![screenshot of tmux with starship](./.github/screenshots/tmux-starship.png) +![screenshot of tmux with powerlevel10k](./.github/screenshots/tmux-powerlevel10k-130x20.png) ## tmux + nvim (astronvim) editing this repository -![screenshot of tmux showing nvim](.github/screenshots/tmux-nvim-astronvim.png) +![screenshot of tmux showing nvim](.github/screenshots/tmux-astronvim-130x40.png) ## Interesting files and locations @@ -61,12 +61,12 @@ The folder structure follows [XDG Base Directory Specification][xdg] where possi ### XDG Variables -| Env | Default | -|--------------------|----------------------| -| `$XDG_BIN_HOME` | `$HOME/.local/bin` | -| `$XDG_CONFIG_HOME` | `$HOME/.config` | -| `$XDG_DATA_HOME` | `$HOME/.local/share` | -| `$XDG_STATE_HOME` | `$HOME/.local/state` | +| Env | Default | Short description | +|--------------------|----------------------|------------------------------------------------| +| `$XDG_BIN_HOME` | `$HOME/.local/bin` | Local binaries | +| `$XDG_CONFIG_HOME` | `$HOME/.config` | User-specific configs | +| `$XDG_DATA_HOME` | `$HOME/.local/share` | User-specific data files | +| `$XDG_STATE_HOME` | `$HOME/.local/state` | App state that should persist between restarts | - `$XDG_BIN_HOME` defines directory that contains local binaries. - `$XDG_DATA_HOME` defines the base directory relative to which user-specific data diff --git a/base/bashrc b/base/bashrc index 6e3fe94..b80c571 100644 --- a/base/bashrc +++ b/base/bashrc @@ -1,8 +1,10 @@ -# Fig pre block. Keep at the top of this file. -[[ -f "$HOME/.fig/shell/bashrc.pre.bash" ]] && builtin source "$HOME/.fig/shell/bashrc.pre.bash" # this is my bashrc config. there are many like it, but this one is mine. # shellcheck shell=bash +# Fig pre block. Keep at the top of this file. +[[ -f "$HOME/.fig/shell/bashrc.pre.bash" ]] \ + && builtin source "$HOME/.fig/shell/bashrc.pre.bash" + # Defaults export DOTFILES="$HOME/.dotfiles" @@ -11,10 +13,10 @@ function x-load-configs() { # Load the shell dotfiles, and then some: for file in $DOTFILES/config/{exports,alias,functions}; do - [ -r "$file" ] && [ -f "$file" ] && source "$file" - [ -r "$file-secret" ] && [ -f "$file-secret" ] && source "$file-secret" - [ -r "$file-$HOSTNAME" ] && [ -f "$file-$HOSTNAME" ] && source "$file-$HOSTNAME" - [ -r "$file-$HOSTNAME-secret" ] && [ -f "$file-$HOSTNAME-secret" ] && source "$file-$HOSTNAME-secret" + [ -r "$file" ] && source "$file" + [ -r "$file-secret" ] && source "$file-secret" + [ -r "$file-$HOSTNAME" ] && source "$file-$HOSTNAME" + [ -r "$file-$HOSTNAME-secret" ] && source "$file-$HOSTNAME-secret" done } x-load-configs @@ -22,7 +24,9 @@ x-load-configs # Import ssh keys in keychain ssh-add -A 2>/dev/null; -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}"/fzf/fzf.bash ] && source "${XDG_CONFIG_HOME:-$HOME/.config}"/fzf/fzf.bash +[ -f "${DOTFILES}/config/fzf/fzf.bash" ] \ + && source "${DOTFILES}/config/fzf/fzf.bash" # Fig post block. Keep at the bottom of this file. -[[ -f "$HOME/.fig/shell/bashrc.post.bash" ]] && builtin source "$HOME/.fig/shell/bashrc.post.bash" +[[ -f "$HOME/.fig/shell/bashrc.post.bash" ]] \ + && builtin source "$HOME/.fig/shell/bashrc.post.bash" diff --git a/base/p10k.zsh b/base/p10k.zsh new file mode 100644 index 0000000..de5cbdb --- /dev/null +++ b/base/p10k.zsh @@ -0,0 +1,1713 @@ +# Generated by Powerlevel10k configuration wizard on 2023-08-08 at 11:32 EEST. +# Based on romkatv/powerlevel10k/config/p10k-lean.zsh, checksum 45810. +# Wizard options: nerdfont-v3 + powerline, small icons, unicode, lean, 2 lines, +# disconnected, no frame, compact, many icons, concise, transient_prompt, +# instant_prompt=verbose. +# Type `p10k configure` to generate another config. +# +# Config for Powerlevel10k with lean prompt style. Type `p10k configure` to generate +# your own config based on it. +# +# Tip: Looking for a nice color? Here's a one-liner to print colormap. +# +# for i in {0..255}; do print -Pn "%K{$i} %k%F{$i}${(l:3::0:)i}%f " ${${(M)$((i%6)):#3}:+$'\n'}; done + +# Temporarily change options. +'builtin' 'local' '-a' 'p10k_config_opts' +[[ ! -o 'aliases' ]] || p10k_config_opts+=('aliases') +[[ ! -o 'sh_glob' ]] || p10k_config_opts+=('sh_glob') +[[ ! -o 'no_brace_expand' ]] || p10k_config_opts+=('no_brace_expand') +'builtin' 'setopt' 'no_aliases' 'no_sh_glob' 'brace_expand' + +() { + emulate -L zsh -o extended_glob + + # Unset all configuration options. This allows you to apply configuration changes without + # restarting zsh. Edit ~/.p10k.zsh and type `source ~/.p10k.zsh`. + unset -m '(POWERLEVEL9K_*|DEFAULT_USER)~POWERLEVEL9K_GITSTATUS_DIR' + + # Zsh >= 5.1 is required. + [[ $ZSH_VERSION == (5.<1->*|<6->.*) ]] || return + + # The list of segments shown on the left. Fill it with the most important segments. + typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=( + # =========================[ Line #1 ]========================= + os_icon # os identifier + dir # current directory + vcs # git status + + # =========================[ Line #2 ]========================= + newline # \n + prompt_char # prompt symbol + ) + + # The list of segments shown on the right. Fill it with less important segments. + # 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 -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=( + # =========================[ Line #1 ]========================= + # status # exit code of the last command + # command_execution_time # duration of the last command + # background_jobs # presence of background jobs + # direnv # direnv status (https://direnv.net/) + asdf # asdf version manager (https://github.com/asdf-vm/asdf) + virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html) + # anaconda # conda environment (https://conda.io/) + pyenv # python environment (https://github.com/pyenv/pyenv) + goenv # go environment (https://github.com/syndbg/goenv) + nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv) + nvm # node.js version from nvm (https://github.com/nvm-sh/nvm) + # nodeenv # node.js environment (https://github.com/ekalinin/nodeenv) + # node_version # node.js version + # go_version # go version (https://golang.org) + # rust_version # rustc version (https://www.rust-lang.org) + # dotnet_version # .NET version (https://dotnet.microsoft.com) + # php_version # php version (https://www.php.net/) + # laravel_version # laravel php framework version (https://laravel.com/) + # java_version # java version (https://www.java.com/) + # package # name@version from package.json (https://docs.npmjs.com/files/package.json) + rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv) + rvm # ruby version from rvm (https://rvm.io) + fvm # flutter version management (https://github.com/leoafarias/fvm) + luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv) + # jenv # java version from jenv (https://github.com/jenv/jenv) + # plenv # perl version from plenv (https://github.com/tokuhirom/plenv) + # perlbrew # perl version from perlbrew (https://github.com/gugod/App-perlbrew) + # phpenv # php version from phpenv (https://github.com/phpenv/phpenv) + # scalaenv # scala version from scalaenv (https://github.com/scalaenv/scalaenv) + # haskell_stack # haskell version from stack (https://haskellstack.org/) + kubecontext # current kubernetes context (https://kubernetes.io/) + terraform # terraform workspace (https://www.terraform.io) + # terraform_version # terraform version (https://www.terraform.io) + aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html) + # aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/) + # azure # azure account name (https://docs.microsoft.com/en-us/cli/azure) + # gcloud # google cloud cli account and project (https://cloud.google.com/) + # google_app_cred # google application credentials (https://cloud.google.com/docs/authentication/production) + toolbox # toolbox name (https://github.com/containers/toolbox) + context # user@hostname + # nordvpn # nordvpn connection status, linux only (https://nordvpn.com/) + # ranger # ranger shell (https://github.com/ranger/ranger) + # nnn # nnn shell (https://github.com/jarun/nnn) + # lf # lf shell (https://github.com/gokcehan/lf) + # xplr # xplr shell (https://github.com/sayanarijit/xplr) + # vim_shell # vim shell indicator (:sh) + # midnight_commander # midnight commander shell (https://midnight-commander.org/) + # nix_shell # nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html) + # chezmoi_shell # chezmoi shell (https://www.chezmoi.io/) + # vpn_ip # virtual private network indicator + # load # CPU load + # disk_usage # disk usage + # ram # free RAM + # swap # used swap + # todo # todo items (https://github.com/todotxt/todo.txt-cli) + # timewarrior # timewarrior tracking status (https://timewarrior.net/) + taskwarrior # taskwarrior task count (https://taskwarrior.org/) + per_directory_history # Oh My Zsh per-directory-history local/global indicator + # cpu_arch # CPU architecture + # time # current time + # =========================[ Line #2 ]========================= + newline + # ip # ip address and bandwidth usage for a specified network interface + # public_ip # public IP address + # proxy # system-wide http/https/ftp proxy + # battery # internal battery + # wifi # wifi speed + # example # example user-defined segment (see prompt_example function below) + ) + + # Defines character set used by powerlevel10k. It's best to let `p10k configure` set it for you. + typeset -g POWERLEVEL9K_MODE=nerdfont-v3 + # When set to `moderate`, some icons will have an extra space after them. This is meant to avoid + # icon overlap when using non-monospace fonts. When set to `none`, spaces are not added. + typeset -g POWERLEVEL9K_ICON_PADDING=none + + # Basic style options that define the overall look of your prompt. You probably don't want to + # change them. + typeset -g POWERLEVEL9K_BACKGROUND= # transparent background + typeset -g POWERLEVEL9K_{LEFT,RIGHT}_{LEFT,RIGHT}_WHITESPACE= # no surrounding whitespace + typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SUBSEGMENT_SEPARATOR=' ' # separate segments with a space + typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SEGMENT_SEPARATOR= # no end-of-line symbol + + # When set to true, icons appear before content on both sides of the prompt. When set + # to false, icons go after content. If empty or not set, icons go before content in the left + # prompt and after content in the right prompt. + # + # You can also override it for a specific segment: + # + # POWERLEVEL9K_STATUS_ICON_BEFORE_CONTENT=false + # + # Or for a specific segment in specific state: + # + # POWERLEVEL9K_DIR_NOT_WRITABLE_ICON_BEFORE_CONTENT=false + typeset -g POWERLEVEL9K_ICON_BEFORE_CONTENT=true + + # Add an empty line before each prompt. + typeset -g POWERLEVEL9K_PROMPT_ADD_NEWLINE=false + + # Connect left prompt lines with these symbols. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX= + typeset -g POWERLEVEL9K_MULTILINE_NEWLINE_PROMPT_PREFIX= + typeset -g POWERLEVEL9K_MULTILINE_LAST_PROMPT_PREFIX= + # Connect right prompt lines with these symbols. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_SUFFIX= + typeset -g POWERLEVEL9K_MULTILINE_NEWLINE_PROMPT_SUFFIX= + typeset -g POWERLEVEL9K_MULTILINE_LAST_PROMPT_SUFFIX= + + # The left end of left prompt. + typeset -g POWERLEVEL9K_LEFT_PROMPT_FIRST_SEGMENT_START_SYMBOL= + # The right end of right prompt. + typeset -g POWERLEVEL9K_RIGHT_PROMPT_LAST_SEGMENT_END_SYMBOL= + + # Ruler, a.k.a. the horizontal line before each prompt. If you set it to true, you'll + # probably want to set POWERLEVEL9K_PROMPT_ADD_NEWLINE=false above and + # POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' ' below. + typeset -g POWERLEVEL9K_SHOW_RULER=false + typeset -g POWERLEVEL9K_RULER_CHAR='─' # reasonable alternative: '·' + typeset -g POWERLEVEL9K_RULER_FOREGROUND=242 + + # Filler between left and right prompt on the first prompt line. You can set it to '·' or '─' + # to make it easier to see the alignment between left and right prompt and to separate prompt + # from command output. It serves the same purpose as ruler (see above) without increasing + # the number of prompt lines. You'll probably want to set POWERLEVEL9K_SHOW_RULER=false + # if using this. You might also like POWERLEVEL9K_PROMPT_ADD_NEWLINE=false for more compact + # prompt. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' ' + if [[ $POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR != ' ' ]]; then + # The color of the filler. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_FOREGROUND=242 + # Add a space between the end of left prompt and the filler. + typeset -g POWERLEVEL9K_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL=' ' + # Add a space between the filler and the start of right prompt. + typeset -g POWERLEVEL9K_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL=' ' + # Start filler from the edge of the screen if there are no left segments on the first line. + typeset -g POWERLEVEL9K_EMPTY_LINE_LEFT_PROMPT_FIRST_SEGMENT_END_SYMBOL='%{%}' + # End filler on the edge of the screen if there are no right segments on the first line. + typeset -g POWERLEVEL9K_EMPTY_LINE_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL='%{%}' + fi + + #################################[ os_icon: os identifier ]################################## + # OS identifier color. + typeset -g POWERLEVEL9K_OS_ICON_FOREGROUND= + # Custom icon. + # typeset -g POWERLEVEL9K_OS_ICON_CONTENT_EXPANSION='⭐' + + ################################[ prompt_char: prompt symbol ]################################ + # Green prompt symbol if the last command succeeded. + typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=76 + # Red prompt symbol if the last command failed. + typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=196 + # Default prompt symbol. + 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='❮' + # Prompt symbol in visual vi mode. + typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='V' + # Prompt symbol in overwrite vi mode. + typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIOWR_CONTENT_EXPANSION='▶' + typeset -g POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=true + # No line terminator if prompt_char is the last segment. + typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL='' + # No line introducer if prompt_char is the first segment. + typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_PROMPT_FIRST_SEGMENT_START_SYMBOL= + + ##################################[ dir: current directory ]################################## + # Default current directory color. + typeset -g POWERLEVEL9K_DIR_FOREGROUND=31 + # If directory is too long, shorten some of its segments to the shortest possible unique + # prefix. The shortened directory can be tab-completed to the original. + typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_unique + # Replace removed segment suffixes with this symbol. + typeset -g POWERLEVEL9K_SHORTEN_DELIMITER= + # Color of the shortened directory segments. + typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=103 + # Color of the anchor directory segments. Anchor segments are never shortened. The first + # segment is always an anchor. + typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=39 + # Display anchor directory segments in bold. + typeset -g POWERLEVEL9K_DIR_ANCHOR_BOLD=true + # Don't shorten directories that contain any of these files. They are anchors. + local anchor_files=( + .bzr + .citc + .git + .hg + .node-version + .python-version + .go-version + .ruby-version + .lua-version + .java-version + .perl-version + .php-version + .tool-version + .shorten_folder_marker + .svn + .terraform + CVS + Cargo.toml + composer.json + go.mod + package.json + stack.yaml + ) + typeset -g POWERLEVEL9K_SHORTEN_FOLDER_MARKER="(${(j:|:)anchor_files})" + # If set to "first" ("last"), remove everything before the first (last) subdirectory that contains + # files matching $POWERLEVEL9K_SHORTEN_FOLDER_MARKER. For example, when the current directory is + # /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first) + # or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers + # and other directories don't. + # + # Optionally, "first" and "last" can be followed by ":" where is an integer. + # This moves the truncation point to the right (positive offset) or to the left (negative offset) + # relative to the marker. Plain "first" and "last" are equivalent to "first:0" and "last:0" + # respectively. + typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false + # Don't shorten this many last directory segments. They are anchors. + typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1 + # Shorten directory if it's longer than this even if there is space for it. The value can + # be either absolute (e.g., '80') or a percentage of terminal width (e.g, '50%'). If empty, + # directory will be shortened only when prompt doesn't fit or when other parameters demand it + # (see POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS and POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT below). + # If set to `0`, directory will always be shortened to its minimum length. + typeset -g POWERLEVEL9K_DIR_MAX_LENGTH=80 + # When `dir` segment is on the last prompt line, try to shorten it enough to leave at least this + # many columns for typing commands. + typeset -g POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS=40 + # When `dir` segment is on the last prompt line, try to shorten it enough to leave at least + # COLUMNS * POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT * 0.01 columns for typing commands. + typeset -g POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT=50 + # If set to true, embed a hyperlink into the directory. Useful for quickly + # opening a directory in the file manager simply by clicking the link. + # Can also be handy when the directory is shortened, as it allows you to see + # the full directory that was used in previous commands. + typeset -g POWERLEVEL9K_DIR_HYPERLINK=false + + # Enable special styling for non-writable and non-existent directories. See POWERLEVEL9K_LOCK_ICON + # and POWERLEVEL9K_DIR_CLASSES below. + typeset -g POWERLEVEL9K_DIR_SHOW_WRITABLE=v3 + + # The default icon shown next to non-writable and non-existent directories when + # POWERLEVEL9K_DIR_SHOW_WRITABLE is set to v3. + # typeset -g POWERLEVEL9K_LOCK_ICON='⭐' + + # POWERLEVEL9K_DIR_CLASSES allows you to specify custom icons and colors for different + # directories. It must be an array with 3 * N elements. Each triplet consists of: + # + # 1. A pattern against which the current directory ($PWD) is matched. Matching is done with + # extended_glob option enabled. + # 2. Directory class for the purpose of styling. + # 3. An empty string. + # + # Triplets are tried in order. The first triplet whose pattern matches $PWD wins. + # + # If POWERLEVEL9K_DIR_SHOW_WRITABLE is set to v3, non-writable and non-existent directories + # acquire class suffix _NOT_WRITABLE and NON_EXISTENT respectively. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_DIR_CLASSES=( + # '~/work(|/*)' WORK '' + # '~(|/*)' HOME '' + # '*' DEFAULT '') + # + # Whenever the current directory is ~/work or a subdirectory of ~/work, it gets styled with one + # of the following classes depending on its writability and existence: WORK, WORK_NOT_WRITABLE or + # WORK_NON_EXISTENT. + # + # Simply assigning classes to directories doesn't have any visible effects. It merely gives you an + # option to define custom colors and icons for different directory classes. + # + # # Styling for WORK. + # typeset -g POWERLEVEL9K_DIR_WORK_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_DIR_WORK_FOREGROUND=31 + # typeset -g POWERLEVEL9K_DIR_WORK_SHORTENED_FOREGROUND=103 + # typeset -g POWERLEVEL9K_DIR_WORK_ANCHOR_FOREGROUND=39 + # + # # Styling for WORK_NOT_WRITABLE. + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND=31 + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_SHORTENED_FOREGROUND=103 + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_ANCHOR_FOREGROUND=39 + # + # # Styling for WORK_NON_EXISTENT. + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_FOREGROUND=31 + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_SHORTENED_FOREGROUND=103 + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_ANCHOR_FOREGROUND=39 + # + # If a styling parameter isn't explicitly defined for some class, it falls back to the classless + # parameter. For example, if POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND is not set, it falls + # back to POWERLEVEL9K_DIR_FOREGROUND. + # + # typeset -g POWERLEVEL9K_DIR_CLASSES=() + + # Custom prefix. + # typeset -g POWERLEVEL9K_DIR_PREFIX='%fin ' + + #####################################[ vcs: git status ]###################################### + # Branch icon. Set this parameter to '\UE0A0 ' for the popular Powerline branch icon. + typeset -g POWERLEVEL9K_VCS_BRANCH_ICON='\uF126 ' + + # Untracked files icon. It's really a question mark, your font isn't broken. + # Change the value of this parameter to show a different icon. + typeset -g POWERLEVEL9K_VCS_UNTRACKED_ICON='?' + + # Formatter for Git status. + # + # Example output: master wip ⇣42⇡42 *42 merge ~42 +42 !42 ?42. + # + # You can edit the function to customize how Git status looks. + # + # VCS_STATUS_* parameters are set by gitstatus plugin. See reference: + # https://github.com/romkatv/gitstatus/blob/master/gitstatus.plugin.zsh. + function my_git_formatter() { + emulate -L zsh + + if [[ -n $P9K_CONTENT ]]; then + # If P9K_CONTENT is not empty, use it. It's either "loading" or from vcs_info (not from + # gitstatus plugin). VCS_STATUS_* parameters are not available in this case. + typeset -g my_git_format=$P9K_CONTENT + return + fi + + if (( $1 )); then + # Styling for up-to-date Git status. + local meta='%f' # default foreground + local clean='%76F' # green foreground + local modified='%178F' # yellow foreground + local untracked='%39F' # blue foreground + local conflicted='%196F' # red foreground + else + # Styling for incomplete and stale Git status. + local meta='%244F' # grey foreground + local clean='%244F' # grey foreground + local modified='%244F' # grey foreground + local untracked='%244F' # grey foreground + local conflicted='%244F' # grey foreground + fi + + local res + + if [[ -n $VCS_STATUS_LOCAL_BRANCH ]]; then + local branch=${(V)VCS_STATUS_LOCAL_BRANCH} + # If local branch name is at most 32 characters long, show it in full. + # Otherwise show the first 12 … the last 12. + # Tip: To always show local branch name in full without truncation, delete the next line. + (( $#branch > 32 )) && branch[13,-13]="…" # <-- this line + res+="${clean}${(g::)POWERLEVEL9K_VCS_BRANCH_ICON}${branch//\%/%%}" + fi + + if [[ -n $VCS_STATUS_TAG + # Show tag only if not on a branch. + # Tip: To always show tag, delete the next line. + && -z $VCS_STATUS_LOCAL_BRANCH # <-- this line + ]]; then + local tag=${(V)VCS_STATUS_TAG} + # If tag name is at most 32 characters long, show it in full. + # Otherwise show the first 12 … the last 12. + # Tip: To always show tag name in full without truncation, delete the next line. + (( $#tag > 32 )) && tag[13,-13]="…" # <-- this line + res+="${meta}#${clean}${tag//\%/%%}" + fi + + # Display the current Git commit if there is no branch and no tag. + # Tip: To always display the current Git commit, delete the next line. + [[ -z $VCS_STATUS_LOCAL_BRANCH && -z $VCS_STATUS_TAG ]] && # <-- this line + res+="${meta}@${clean}${VCS_STATUS_COMMIT[1,8]}" + + # Show tracking branch name if it differs from local branch. + if [[ -n ${VCS_STATUS_REMOTE_BRANCH:#$VCS_STATUS_LOCAL_BRANCH} ]]; then + res+="${meta}:${clean}${(V)VCS_STATUS_REMOTE_BRANCH//\%/%%}" + fi + + # Display "wip" if the latest commit's summary contains "wip" or "WIP". + if [[ $VCS_STATUS_COMMIT_SUMMARY == (|*[^[:alnum:]])(wip|WIP)(|[^[:alnum:]]*) ]]; then + res+=" ${modified}wip" + fi + + if (( VCS_STATUS_COMMITS_AHEAD || VCS_STATUS_COMMITS_BEHIND )); then + # ⇣42 if behind the remote. + (( VCS_STATUS_COMMITS_BEHIND )) && res+=" ${clean}⇣${VCS_STATUS_COMMITS_BEHIND}" + # ⇡42 if ahead of the remote; no leading space if also behind the remote: ⇣42⇡42. + (( VCS_STATUS_COMMITS_AHEAD && !VCS_STATUS_COMMITS_BEHIND )) && res+=" " + (( VCS_STATUS_COMMITS_AHEAD )) && res+="${clean}⇡${VCS_STATUS_COMMITS_AHEAD}" + elif [[ -n $VCS_STATUS_REMOTE_BRANCH ]]; then + # Tip: Uncomment the next line to display '=' if up to date with the remote. + # res+=" ${clean}=" + fi + + # ⇠42 if behind the push remote. + (( VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" ${clean}⇠${VCS_STATUS_PUSH_COMMITS_BEHIND}" + (( VCS_STATUS_PUSH_COMMITS_AHEAD && !VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" " + # ⇢42 if ahead of the push remote; no leading space if also behind: ⇠42⇢42. + (( VCS_STATUS_PUSH_COMMITS_AHEAD )) && res+="${clean}⇢${VCS_STATUS_PUSH_COMMITS_AHEAD}" + # *42 if have stashes. + (( VCS_STATUS_STASHES )) && res+=" ${clean}*${VCS_STATUS_STASHES}" + # 'merge' if the repo is in an unusual state. + [[ -n $VCS_STATUS_ACTION ]] && res+=" ${conflicted}${VCS_STATUS_ACTION}" + # ~42 if have merge conflicts. + (( VCS_STATUS_NUM_CONFLICTED )) && res+=" ${conflicted}~${VCS_STATUS_NUM_CONFLICTED}" + # +42 if have staged changes. + (( VCS_STATUS_NUM_STAGED )) && res+=" ${modified}+${VCS_STATUS_NUM_STAGED}" + # !42 if have unstaged changes. + (( VCS_STATUS_NUM_UNSTAGED )) && res+=" ${modified}!${VCS_STATUS_NUM_UNSTAGED}" + # ?42 if have untracked files. It's really a question mark, your font isn't broken. + # See POWERLEVEL9K_VCS_UNTRACKED_ICON above if you want to use a different icon. + # Remove the next line if you don't want to see untracked files at all. + (( VCS_STATUS_NUM_UNTRACKED )) && res+=" ${untracked}${(g::)POWERLEVEL9K_VCS_UNTRACKED_ICON}${VCS_STATUS_NUM_UNTRACKED}" + # "─" if the number of unstaged files is unknown. This can happen due to + # POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY (see below) being set to a non-negative number lower + # than the number of files in the Git index, or due to bash.showDirtyState being set to false + # in the repository config. The number of staged and untracked files may also be unknown + # in this case. + (( VCS_STATUS_HAS_UNSTAGED == -1 )) && res+=" ${modified}─" + + typeset -g my_git_format=$res + } + functions -M my_git_formatter 2>/dev/null + + # Don't count the number of unstaged, untracked and conflicted files in Git repositories with + # more than this many files in the index. Negative value means infinity. + # + # If you are working in Git repositories with tens of millions of files and seeing performance + # sagging, try setting POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY to a number lower than the output + # of `git ls-files | wc -l`. Alternatively, add `bash.showDirtyState = false` to the repository's + # config: `git config bash.showDirtyState false`. + typeset -g POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY=-1 + + # Don't show Git status in prompt for repositories whose workdir matches this pattern. + # For example, if set to '~', the Git repository at $HOME/.git will be ignored. + # Multiple patterns can be combined with '|': '~(|/foo)|/bar/baz/*'. + typeset -g POWERLEVEL9K_VCS_DISABLED_WORKDIR_PATTERN='~' + + # Disable the default Git status formatting. + typeset -g POWERLEVEL9K_VCS_DISABLE_GITSTATUS_FORMATTING=true + # Install our own Git status formatter. + typeset -g POWERLEVEL9K_VCS_CONTENT_EXPANSION='${$((my_git_formatter(1)))+${my_git_format}}' + typeset -g POWERLEVEL9K_VCS_LOADING_CONTENT_EXPANSION='${$((my_git_formatter(0)))+${my_git_format}}' + # Enable counters for staged, unstaged, etc. + typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED,CONFLICTED,COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=-1 + + # Icon color. + typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_COLOR=76 + typeset -g POWERLEVEL9K_VCS_LOADING_VISUAL_IDENTIFIER_COLOR=244 + # Custom icon. + # typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_VCS_PREFIX='%fon ' + + # 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 repository. + typeset -g POWERLEVEL9K_VCS_BACKENDS=(git) + + # These settings are used for repositories other than Git or when gitstatusd fails and + # Powerlevel10k has to fall back to using vcs_info. + typeset -g POWERLEVEL9K_VCS_CLEAN_FOREGROUND=76 + typeset -g POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND=76 + typeset -g POWERLEVEL9K_VCS_MODIFIED_FOREGROUND=178 + + ##########################[ status: exit code of the last command ]########################### + # Enable OK_PIPE, ERROR_PIPE and ERROR_SIGNAL status states to allow us to enable, disable and + # style them independently from the regular OK and ERROR state. + typeset -g POWERLEVEL9K_STATUS_EXTENDED_STATES=true + + # Status on success. No content, just an icon. No need to show it if prompt_char is enabled as + # it will signify success by turning green. + typeset -g POWERLEVEL9K_STATUS_OK=false + typeset -g POWERLEVEL9K_STATUS_OK_FOREGROUND=70 + typeset -g POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_EXPANSION='✔' + + # Status when some part of a pipe command fails but the overall exit status is zero. It may look + # like this: 1|0. + typeset -g POWERLEVEL9K_STATUS_OK_PIPE=true + typeset -g POWERLEVEL9K_STATUS_OK_PIPE_FOREGROUND=70 + typeset -g POWERLEVEL9K_STATUS_OK_PIPE_VISUAL_IDENTIFIER_EXPANSION='✔' + + # Status when it's just an error code (e.g., '1'). No need to show it if prompt_char is enabled as + # it will signify error by turning red. + typeset -g POWERLEVEL9K_STATUS_ERROR=false + typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=160 + typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='✘' + + # Status when the last command was terminated by a signal. + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL=true + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_FOREGROUND=160 + # Use terse signal names: "INT" instead of "SIGINT(2)". + typeset -g POWERLEVEL9K_STATUS_VERBOSE_SIGNAME=false + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_VISUAL_IDENTIFIER_EXPANSION='✘' + + # Status when some part of a pipe command fails and the overall exit status is also non-zero. + # It may look like this: 1|0. + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE=true + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_FOREGROUND=160 + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_VISUAL_IDENTIFIER_EXPANSION='✘' + + ###################[ command_execution_time: duration of the last command ]################### + # Show duration of the last command if takes at least this many seconds. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=3 + # Show this many fractional digits. Zero means round to seconds. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=0 + # Execution time color. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=101 + # Duration format: 1d 2h 3m 4s. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT='d h m s' + # Custom icon. + # typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PREFIX='%ftook ' + + #######################[ background_jobs: presence of background jobs ]####################### + # Don't show the number of background jobs. + typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VERBOSE=false + # Background jobs color. + typeset -g POWERLEVEL9K_BACKGROUND_JOBS_FOREGROUND=70 + # Custom icon. + # typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######################[ direnv: direnv status (https://direnv.net/) ]######################## + # Direnv color. + typeset -g POWERLEVEL9K_DIRENV_FOREGROUND=178 + # Custom icon. + # typeset -g POWERLEVEL9K_DIRENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###############[ asdf: asdf version manager (https://github.com/asdf-vm/asdf) ]############### + # Default asdf color. Only used to display tools for which there is no color override (see below). + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_FOREGROUND. + typeset -g POWERLEVEL9K_ASDF_FOREGROUND=66 + + # There are four parameters that can be used to hide asdf tools. Each parameter describes + # conditions under which a tool gets hidden. Parameters can hide tools but not unhide them. If at + # least one parameter decides to hide a tool, that tool gets hidden. If no parameter decides to + # hide a tool, it gets shown. + # + # Special note on the difference between POWERLEVEL9K_ASDF_SOURCES and + # POWERLEVEL9K_ASDF_PROMPT_ALWAYS_SHOW. Consider the effect of the following commands: + # + # asdf local python 3.8.1 + # asdf global python 3.8.1 + # + # After running both commands the current python version is 3.8.1 and its source is "local" as + # it takes precedence over "global". If POWERLEVEL9K_ASDF_PROMPT_ALWAYS_SHOW is set to false, + # it'll hide python version in this case because 3.8.1 is the same as the global version. + # POWERLEVEL9K_ASDF_SOURCES will hide python version only if the value of this parameter doesn't + # contain "local". + + # Hide tool versions that don't come from one of these sources. + # + # Available sources: + # + # - shell `asdf current` says "set by ASDF_${TOOL}_VERSION environment variable" + # - local `asdf current` says "set by /some/not/home/directory/file" + # - global `asdf current` says "set by /home/username/file" + # + # Note: If this parameter is set to (shell local global), it won't hide tools. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_SOURCES. + typeset -g POWERLEVEL9K_ASDF_SOURCES=(shell local global) + + # If set to false, hide tool versions that are the same as global. + # + # Note: The name of this parameter doesn't reflect its meaning at all. + # Note: If this parameter is set to true, it won't hide tools. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_PROMPT_ALWAYS_SHOW. + typeset -g POWERLEVEL9K_ASDF_PROMPT_ALWAYS_SHOW=false + + # If set to false, hide tool versions that are equal to "system". + # + # Note: If this parameter is set to true, it won't hide tools. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_SHOW_SYSTEM. + typeset -g POWERLEVEL9K_ASDF_SHOW_SYSTEM=true + + # If set to non-empty value, hide tools unless there is a file matching the specified file pattern + # in the current directory, or its parent directory, or its grandparent directory, and so on. + # + # Note: If this parameter is set to empty value, it won't hide tools. + # Note: SHOW_ON_UPGLOB isn't specific to asdf. It works with all prompt segments. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_SHOW_ON_UPGLOB. + # + # Example: Hide nodejs version when there is no package.json and no *.js files in the current + # directory, in `..`, in `../..` and so on. + # + # typeset -g POWERLEVEL9K_ASDF_NODEJS_SHOW_ON_UPGLOB='*.js|package.json' + typeset -g POWERLEVEL9K_ASDF_SHOW_ON_UPGLOB= + + # Ruby version from asdf. + typeset -g POWERLEVEL9K_ASDF_RUBY_FOREGROUND=168 + # typeset -g POWERLEVEL9K_ASDF_RUBY_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_RUBY_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Python version from asdf. + typeset -g POWERLEVEL9K_ASDF_PYTHON_FOREGROUND=37 + # typeset -g POWERLEVEL9K_ASDF_PYTHON_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_PYTHON_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Go version from asdf. + typeset -g POWERLEVEL9K_ASDF_GOLANG_FOREGROUND=37 + # typeset -g POWERLEVEL9K_ASDF_GOLANG_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_GOLANG_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Node.js version from asdf. + typeset -g POWERLEVEL9K_ASDF_NODEJS_FOREGROUND=70 + # typeset -g POWERLEVEL9K_ASDF_NODEJS_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_NODEJS_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Rust version from asdf. + typeset -g POWERLEVEL9K_ASDF_RUST_FOREGROUND=37 + # typeset -g POWERLEVEL9K_ASDF_RUST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_RUST_SHOW_ON_UPGLOB='*.foo|*.bar' + + # .NET Core version from asdf. + typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_FOREGROUND=134 + # typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_DOTNET_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Flutter version from asdf. + typeset -g POWERLEVEL9K_ASDF_FLUTTER_FOREGROUND=38 + # typeset -g POWERLEVEL9K_ASDF_FLUTTER_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_FLUTTER_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Lua version from asdf. + typeset -g POWERLEVEL9K_ASDF_LUA_FOREGROUND=32 + # typeset -g POWERLEVEL9K_ASDF_LUA_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_LUA_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Java version from asdf. + typeset -g POWERLEVEL9K_ASDF_JAVA_FOREGROUND=32 + # typeset -g POWERLEVEL9K_ASDF_JAVA_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_JAVA_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Perl version from asdf. + typeset -g POWERLEVEL9K_ASDF_PERL_FOREGROUND=67 + # typeset -g POWERLEVEL9K_ASDF_PERL_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_PERL_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Erlang version from asdf. + typeset -g POWERLEVEL9K_ASDF_ERLANG_FOREGROUND=125 + # typeset -g POWERLEVEL9K_ASDF_ERLANG_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_ERLANG_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Elixir version from asdf. + typeset -g POWERLEVEL9K_ASDF_ELIXIR_FOREGROUND=129 + # typeset -g POWERLEVEL9K_ASDF_ELIXIR_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_ELIXIR_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Postgres version from asdf. + typeset -g POWERLEVEL9K_ASDF_POSTGRES_FOREGROUND=31 + # typeset -g POWERLEVEL9K_ASDF_POSTGRES_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_POSTGRES_SHOW_ON_UPGLOB='*.foo|*.bar' + + # PHP version from asdf. + typeset -g POWERLEVEL9K_ASDF_PHP_FOREGROUND=99 + # typeset -g POWERLEVEL9K_ASDF_PHP_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_PHP_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Haskell version from asdf. + typeset -g POWERLEVEL9K_ASDF_HASKELL_FOREGROUND=172 + # typeset -g POWERLEVEL9K_ASDF_HASKELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_HASKELL_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Julia version from asdf. + typeset -g POWERLEVEL9K_ASDF_JULIA_FOREGROUND=70 + # typeset -g POWERLEVEL9K_ASDF_JULIA_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_JULIA_SHOW_ON_UPGLOB='*.foo|*.bar' + + ##########[ nordvpn: nordvpn connection status, linux only (https://nordvpn.com/) ]########### + # NordVPN connection indicator color. + typeset -g POWERLEVEL9K_NORDVPN_FOREGROUND=39 + # Hide NordVPN connection indicator when not connected. + typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_CONTENT_EXPANSION= + typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_VISUAL_IDENTIFIER_EXPANSION= + # Custom icon. + # typeset -g POWERLEVEL9K_NORDVPN_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #################[ ranger: ranger shell (https://github.com/ranger/ranger) ]################## + # Ranger shell color. + typeset -g POWERLEVEL9K_RANGER_FOREGROUND=178 + # Custom icon. + # typeset -g POWERLEVEL9K_RANGER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################[ nnn: nnn shell (https://github.com/jarun/nnn) ]####################### + # Nnn shell color. + typeset -g POWERLEVEL9K_NNN_FOREGROUND=72 + # Custom icon. + # typeset -g POWERLEVEL9K_NNN_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################[ lf: lf shell (https://github.com/gokcehan/lf) ]####################### + # lf shell color. + typeset -g POWERLEVEL9K_LF_FOREGROUND=72 + # Custom icon. + # typeset -g POWERLEVEL9K_LF_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################[ xplr: xplr shell (https://github.com/sayanarijit/xplr) ]################## + # xplr shell color. + typeset -g POWERLEVEL9K_XPLR_FOREGROUND=72 + # Custom icon. + # typeset -g POWERLEVEL9K_XPLR_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########################[ vim_shell: vim shell indicator (:sh) ]########################### + # Vim shell indicator color. + typeset -g POWERLEVEL9K_VIM_SHELL_FOREGROUND=34 + # Custom icon. + # typeset -g POWERLEVEL9K_VIM_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######[ midnight_commander: midnight commander shell (https://midnight-commander.org/) ]###### + # Midnight Commander shell color. + typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_FOREGROUND=178 + # Custom icon. + # typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #[ nix_shell: nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html) ]## + # Nix shell color. + typeset -g POWERLEVEL9K_NIX_SHELL_FOREGROUND=74 + + # Display the icon of nix_shell if PATH contains a subdirectory of /nix/store. + # typeset -g POWERLEVEL9K_NIX_SHELL_INFER_FROM_PATH=false + + # Tip: If you want to see just the icon without "pure" and "impure", uncomment the next line. + # typeset -g POWERLEVEL9K_NIX_SHELL_CONTENT_EXPANSION= + + # Custom icon. + # typeset -g POWERLEVEL9K_NIX_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################[ chezmoi_shell: chezmoi shell (https://www.chezmoi.io/) ]################## + # chezmoi shell color. + typeset -g POWERLEVEL9K_CHEZMOI_SHELL_FOREGROUND=33 + # Custom icon. + # typeset -g POWERLEVEL9K_CHEZMOI_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################################[ disk_usage: disk usage ]################################## + # Colors for different levels of disk usage. + typeset -g POWERLEVEL9K_DISK_USAGE_NORMAL_FOREGROUND=35 + typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_FOREGROUND=220 + typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_FOREGROUND=160 + # Thresholds for different levels of disk usage (percentage points). + typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_LEVEL=90 + typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_LEVEL=95 + # If set to true, hide disk usage when below $POWERLEVEL9K_DISK_USAGE_WARNING_LEVEL percent. + typeset -g POWERLEVEL9K_DISK_USAGE_ONLY_WARNING=false + # Custom icon. + # typeset -g POWERLEVEL9K_DISK_USAGE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################################[ ram: free RAM ]####################################### + # RAM color. + typeset -g POWERLEVEL9K_RAM_FOREGROUND=66 + # Custom icon. + # typeset -g POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #####################################[ swap: used swap ]###################################### + # Swap color. + typeset -g POWERLEVEL9K_SWAP_FOREGROUND=96 + # Custom icon. + # typeset -g POWERLEVEL9K_SWAP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################################[ load: CPU load ]###################################### + # Show average CPU load over this many last minutes. Valid values are 1, 5 and 15. + typeset -g POWERLEVEL9K_LOAD_WHICH=5 + # Load color when load is under 50%. + typeset -g POWERLEVEL9K_LOAD_NORMAL_FOREGROUND=66 + # Load color when load is between 50% and 70%. + typeset -g POWERLEVEL9K_LOAD_WARNING_FOREGROUND=178 + # Load color when load is over 70%. + typeset -g POWERLEVEL9K_LOAD_CRITICAL_FOREGROUND=166 + # Custom icon. + # typeset -g POWERLEVEL9K_LOAD_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ todo: todo items (https://github.com/todotxt/todo.txt-cli) ]################ + # Todo color. + typeset -g POWERLEVEL9K_TODO_FOREGROUND=110 + # Hide todo when the total number of tasks is zero. + typeset -g POWERLEVEL9K_TODO_HIDE_ZERO_TOTAL=true + # Hide todo when the number of tasks after filtering is zero. + typeset -g POWERLEVEL9K_TODO_HIDE_ZERO_FILTERED=false + + # Todo format. The following parameters are available within the expansion. + # + # - P9K_TODO_TOTAL_TASK_COUNT The total number of tasks. + # - P9K_TODO_FILTERED_TASK_COUNT The number of tasks after filtering. + # + # These variables correspond to the last line of the output of `todo.sh -p ls`: + # + # TODO: 24 of 42 tasks shown + # + # Here 24 is P9K_TODO_FILTERED_TASK_COUNT and 42 is P9K_TODO_TOTAL_TASK_COUNT. + # + # typeset -g POWERLEVEL9K_TODO_CONTENT_EXPANSION='$P9K_TODO_FILTERED_TASK_COUNT' + + # Custom icon. + # typeset -g POWERLEVEL9K_TODO_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ timewarrior: timewarrior tracking status (https://timewarrior.net/) ]############ + # Timewarrior color. + typeset -g POWERLEVEL9K_TIMEWARRIOR_FOREGROUND=110 + # If the tracked task is longer than 24 characters, truncate and append "…". + # Tip: To always display tasks without truncation, delete the following parameter. + # Tip: To hide task names and display just the icon when time tracking is enabled, set the + # value of the following parameter to "". + typeset -g POWERLEVEL9K_TIMEWARRIOR_CONTENT_EXPANSION='${P9K_CONTENT:0:24}${${P9K_CONTENT:24}:+…}' + + # Custom icon. + # typeset -g POWERLEVEL9K_TIMEWARRIOR_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##############[ taskwarrior: taskwarrior task count (https://taskwarrior.org/) ]############## + # Taskwarrior color. + typeset -g POWERLEVEL9K_TASKWARRIOR_FOREGROUND=74 + + # Taskwarrior segment format. The following parameters are available within the expansion. + # + # - P9K_TASKWARRIOR_PENDING_COUNT The number of pending tasks: `task +PENDING count`. + # - P9K_TASKWARRIOR_OVERDUE_COUNT The number of overdue tasks: `task +OVERDUE count`. + # + # Zero values are represented as empty parameters. + # + # The default format: + # + # '${P9K_TASKWARRIOR_OVERDUE_COUNT:+"!$P9K_TASKWARRIOR_OVERDUE_COUNT/"}$P9K_TASKWARRIOR_PENDING_COUNT' + # + # typeset -g POWERLEVEL9K_TASKWARRIOR_CONTENT_EXPANSION='$P9K_TASKWARRIOR_PENDING_COUNT' + + # Custom icon. + # typeset -g POWERLEVEL9K_TASKWARRIOR_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######[ per_directory_history: Oh My Zsh per-directory-history local/global indicator ]####### + # Color when using local/global history. + typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_FOREGROUND=135 + typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_FOREGROUND=130 + + # Tip: Uncomment the next two lines to hide "local"/"global" text and leave just the icon. + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_CONTENT_EXPANSION='' + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_CONTENT_EXPANSION='' + + # Custom icon. + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################################[ cpu_arch: CPU architecture ]################################ + # CPU architecture color. + typeset -g POWERLEVEL9K_CPU_ARCH_FOREGROUND=172 + + # Hide the segment when on a specific CPU architecture. + # typeset -g POWERLEVEL9K_CPU_ARCH_X86_64_CONTENT_EXPANSION= + # typeset -g POWERLEVEL9K_CPU_ARCH_X86_64_VISUAL_IDENTIFIER_EXPANSION= + + # Custom icon. + # typeset -g POWERLEVEL9K_CPU_ARCH_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################################[ context: user@hostname ]################################## + # Context color when running with privileges. + typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=178 + # Context color in SSH without privileges. + typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_FOREGROUND=180 + # Default context color (no privileges, no SSH). + typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=180 + + # Context format when running with privileges: bold user@hostname. + typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE='%B%n@%m' + # Context format when in SSH without privileges: user@hostname. + typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_TEMPLATE='%n@%m' + # Default context format (no privileges, no SSH): user@hostname. + typeset -g POWERLEVEL9K_CONTEXT_TEMPLATE='%n@%m' + + # Don't show context unless running with privileges or in SSH. + # Tip: Remove the next line to always show context. + typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_{CONTENT,VISUAL_IDENTIFIER}_EXPANSION= + + # Custom icon. + # typeset -g POWERLEVEL9K_CONTEXT_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_CONTEXT_PREFIX='%fwith ' + + ###[ virtualenv: python virtual environment (https://docs.python.org/3/library/venv.html) ]### + # Python virtual environment color. + typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=37 + # Don't show Python version next to the virtual environment name. + typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION=false + # If set to "false", won't show virtualenv if pyenv is already shown. + # If set to "if-different", won't show virtualenv if it's the same as pyenv. + typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_WITH_PYENV=false + # Separate environment name from Python version only with a space. + typeset -g POWERLEVEL9K_VIRTUALENV_{LEFT,RIGHT}_DELIMITER= + # Custom icon. + # typeset -g POWERLEVEL9K_VIRTUALENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #####################[ anaconda: conda environment (https://conda.io/) ]###################### + # Anaconda environment color. + typeset -g POWERLEVEL9K_ANACONDA_FOREGROUND=37 + + # Anaconda segment format. The following parameters are available within the expansion. + # + # - CONDA_PREFIX Absolute path to the active Anaconda/Miniconda environment. + # - CONDA_DEFAULT_ENV Name of the active Anaconda/Miniconda environment. + # - CONDA_PROMPT_MODIFIER Configurable prompt modifier (see below). + # - P9K_ANACONDA_PYTHON_VERSION Current python version (python --version). + # + # CONDA_PROMPT_MODIFIER can be configured with the following command: + # + # conda config --set env_prompt '({default_env}) ' + # + # The last argument is a Python format string that can use the following variables: + # + # - prefix The same as CONDA_PREFIX. + # - default_env The same as CONDA_DEFAULT_ENV. + # - name The last segment of CONDA_PREFIX. + # - stacked_env Comma-separated list of names in the environment stack. The first element is + # always the same as default_env. + # + # Note: '({default_env}) ' is the default value of env_prompt. + # + # The default value of POWERLEVEL9K_ANACONDA_CONTENT_EXPANSION expands to $CONDA_PROMPT_MODIFIER + # without the surrounding parentheses, or to the last path component of CONDA_PREFIX if the former + # is empty. + typeset -g POWERLEVEL9K_ANACONDA_CONTENT_EXPANSION='${${${${CONDA_PROMPT_MODIFIER#\(}% }%\)}:-${CONDA_PREFIX:t}}' + + # Custom icon. + # typeset -g POWERLEVEL9K_ANACONDA_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ pyenv: python environment (https://github.com/pyenv/pyenv) ]################ + # Pyenv color. + typeset -g POWERLEVEL9K_PYENV_FOREGROUND=37 + # Hide python version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_PYENV_SOURCES=(shell local global) + # If set to false, hide python version if it's the same as global: + # $(pyenv version-name) == $(pyenv global). + typeset -g POWERLEVEL9K_PYENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide python version if it's equal to "system". + typeset -g POWERLEVEL9K_PYENV_SHOW_SYSTEM=true + + # Pyenv segment format. The following parameters are available within the expansion. + # + # - P9K_CONTENT Current pyenv environment (pyenv version-name). + # - P9K_PYENV_PYTHON_VERSION Current python version (python --version). + # + # The default format has the following logic: + # + # 1. Display just "$P9K_CONTENT" if it's equal to "$P9K_PYENV_PYTHON_VERSION" or + # starts with "$P9K_PYENV_PYTHON_VERSION/". + # 2. Otherwise display "$P9K_CONTENT $P9K_PYENV_PYTHON_VERSION". + typeset -g POWERLEVEL9K_PYENV_CONTENT_EXPANSION='${P9K_CONTENT}${${P9K_CONTENT:#$P9K_PYENV_PYTHON_VERSION(|/*)}:+ $P9K_PYENV_PYTHON_VERSION}' + + # Custom icon. + # typeset -g POWERLEVEL9K_PYENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ goenv: go environment (https://github.com/syndbg/goenv) ]################ + # Goenv color. + typeset -g POWERLEVEL9K_GOENV_FOREGROUND=37 + # Hide go version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_GOENV_SOURCES=(shell local global) + # If set to false, hide go version if it's the same as global: + # $(goenv version-name) == $(goenv global). + typeset -g POWERLEVEL9K_GOENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide go version if it's equal to "system". + typeset -g POWERLEVEL9K_GOENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_GOENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ nodenv: node.js version from nodenv (https://github.com/nodenv/nodenv) ]########## + # Nodenv color. + typeset -g POWERLEVEL9K_NODENV_FOREGROUND=70 + # Hide node version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_NODENV_SOURCES=(shell local global) + # If set to false, hide node version if it's the same as global: + # $(nodenv version-name) == $(nodenv global). + typeset -g POWERLEVEL9K_NODENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide node version if it's equal to "system". + typeset -g POWERLEVEL9K_NODENV_SHOW_SYSTEM=false + # Custom icon. + # typeset -g POWERLEVEL9K_NODENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##############[ nvm: node.js version from nvm (https://github.com/nvm-sh/nvm) ]############### + # Nvm color. + typeset -g POWERLEVEL9K_NVM_FOREGROUND=70 + # If set to false, hide node version if it's the same as default: + # $(nvm version current) == $(nvm version default). + typeset -g POWERLEVEL9K_NVM_PROMPT_ALWAYS_SHOW=false + # If set to false, hide node version if it's equal to "system". + typeset -g POWERLEVEL9K_NVM_SHOW_SYSTEM=false + # Custom icon. + # typeset -g POWERLEVEL9K_NVM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ############[ nodeenv: node.js environment (https://github.com/ekalinin/nodeenv) ]############ + # Nodeenv color. + typeset -g POWERLEVEL9K_NODEENV_FOREGROUND=70 + # Don't show Node version next to the environment name. + typeset -g POWERLEVEL9K_NODEENV_SHOW_NODE_VERSION=false + # Separate environment name from Node version only with a space. + typeset -g POWERLEVEL9K_NODEENV_{LEFT,RIGHT}_DELIMITER= + # Custom icon. + # typeset -g POWERLEVEL9K_NODEENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##############################[ node_version: node.js version ]############################### + # Node version color. + typeset -g POWERLEVEL9K_NODE_VERSION_FOREGROUND=70 + # Show node version only when in a directory tree containing package.json. + typeset -g POWERLEVEL9K_NODE_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_NODE_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######################[ go_version: go version (https://golang.org) ]######################## + # Go version color. + typeset -g POWERLEVEL9K_GO_VERSION_FOREGROUND=37 + # Show go version only when in a go project subdirectory. + typeset -g POWERLEVEL9K_GO_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_GO_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #################[ rust_version: rustc version (https://www.rust-lang.org) ]################## + # Rust version color. + typeset -g POWERLEVEL9K_RUST_VERSION_FOREGROUND=37 + # Show rust version only when in a rust project subdirectory. + typeset -g POWERLEVEL9K_RUST_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_RUST_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###############[ dotnet_version: .NET version (https://dotnet.microsoft.com) ]################ + # .NET version color. + typeset -g POWERLEVEL9K_DOTNET_VERSION_FOREGROUND=134 + # Show .NET version only when in a .NET project subdirectory. + typeset -g POWERLEVEL9K_DOTNET_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_DOTNET_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #####################[ php_version: php version (https://www.php.net/) ]###################### + # PHP version color. + typeset -g POWERLEVEL9K_PHP_VERSION_FOREGROUND=99 + # Show PHP version only when in a PHP project subdirectory. + typeset -g POWERLEVEL9K_PHP_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_PHP_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ laravel_version: laravel php framework version (https://laravel.com/) ]########### + # Laravel version color. + typeset -g POWERLEVEL9K_LARAVEL_VERSION_FOREGROUND=161 + # Custom icon. + # typeset -g POWERLEVEL9K_LARAVEL_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ####################[ java_version: java version (https://www.java.com/) ]#################### + # Java version color. + typeset -g POWERLEVEL9K_JAVA_VERSION_FOREGROUND=32 + # Show java version only when in a java project subdirectory. + typeset -g POWERLEVEL9K_JAVA_VERSION_PROJECT_ONLY=true + # Show brief version. + typeset -g POWERLEVEL9K_JAVA_VERSION_FULL=false + # Custom icon. + # typeset -g POWERLEVEL9K_JAVA_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###[ package: name@version from package.json (https://docs.npmjs.com/files/package.json) ]#### + # Package color. + typeset -g POWERLEVEL9K_PACKAGE_FOREGROUND=117 + # Package format. The following parameters are available within the expansion. + # + # - P9K_PACKAGE_NAME The value of `name` field in package.json. + # - P9K_PACKAGE_VERSION The value of `version` field in package.json. + # + # typeset -g POWERLEVEL9K_PACKAGE_CONTENT_EXPANSION='${P9K_PACKAGE_NAME//\%/%%}@${P9K_PACKAGE_VERSION//\%/%%}' + # Custom icon. + # typeset -g POWERLEVEL9K_PACKAGE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #############[ rbenv: ruby version from rbenv (https://github.com/rbenv/rbenv) ]############## + # Rbenv color. + typeset -g POWERLEVEL9K_RBENV_FOREGROUND=168 + # Hide ruby version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_RBENV_SOURCES=(shell local global) + # If set to false, hide ruby version if it's the same as global: + # $(rbenv version-name) == $(rbenv global). + typeset -g POWERLEVEL9K_RBENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide ruby version if it's equal to "system". + typeset -g POWERLEVEL9K_RBENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_RBENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######################[ rvm: ruby version from rvm (https://rvm.io) ]######################## + # Rvm color. + typeset -g POWERLEVEL9K_RVM_FOREGROUND=168 + # Don't show @gemset at the end. + typeset -g POWERLEVEL9K_RVM_SHOW_GEMSET=false + # Don't show ruby- at the front. + typeset -g POWERLEVEL9K_RVM_SHOW_PREFIX=false + # Custom icon. + # typeset -g POWERLEVEL9K_RVM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ fvm: flutter version management (https://github.com/leoafarias/fvm) ]############ + # Fvm color. + typeset -g POWERLEVEL9K_FVM_FOREGROUND=38 + # Custom icon. + # typeset -g POWERLEVEL9K_FVM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ luaenv: lua version from luaenv (https://github.com/cehoffman/luaenv) ]########### + # Lua color. + typeset -g POWERLEVEL9K_LUAENV_FOREGROUND=32 + # Hide lua version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_LUAENV_SOURCES=(shell local global) + # If set to false, hide lua version if it's the same as global: + # $(luaenv version-name) == $(luaenv global). + typeset -g POWERLEVEL9K_LUAENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide lua version if it's equal to "system". + typeset -g POWERLEVEL9K_LUAENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_LUAENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###############[ jenv: java version from jenv (https://github.com/jenv/jenv) ]################ + # Java color. + typeset -g POWERLEVEL9K_JENV_FOREGROUND=32 + # Hide java version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_JENV_SOURCES=(shell local global) + # If set to false, hide java version if it's the same as global: + # $(jenv version-name) == $(jenv global). + typeset -g POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide java version if it's equal to "system". + typeset -g POWERLEVEL9K_JENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_JENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ plenv: perl version from plenv (https://github.com/tokuhirom/plenv) ]############ + # Perl color. + typeset -g POWERLEVEL9K_PLENV_FOREGROUND=67 + # Hide perl version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_PLENV_SOURCES=(shell local global) + # If set to false, hide perl version if it's the same as global: + # $(plenv version-name) == $(plenv global). + typeset -g POWERLEVEL9K_PLENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide perl version if it's equal to "system". + typeset -g POWERLEVEL9K_PLENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_PLENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ perlbrew: perl version from perlbrew (https://github.com/gugod/App-perlbrew) ]############ + # Perlbrew color. + typeset -g POWERLEVEL9K_PERLBREW_FOREGROUND=67 + # Show perlbrew version only when in a perl project subdirectory. + typeset -g POWERLEVEL9K_PERLBREW_PROJECT_ONLY=true + # Don't show "perl-" at the front. + typeset -g POWERLEVEL9K_PERLBREW_SHOW_PREFIX=false + # Custom icon. + # typeset -g POWERLEVEL9K_PERLBREW_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ############[ phpenv: php version from phpenv (https://github.com/phpenv/phpenv) ]############ + # PHP color. + typeset -g POWERLEVEL9K_PHPENV_FOREGROUND=99 + # Hide php version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_PHPENV_SOURCES=(shell local global) + # If set to false, hide php version if it's the same as global: + # $(phpenv version-name) == $(phpenv global). + typeset -g POWERLEVEL9K_PHPENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide php version if it's equal to "system". + typeset -g POWERLEVEL9K_PHPENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_PHPENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######[ scalaenv: scala version from scalaenv (https://github.com/scalaenv/scalaenv) ]####### + # Scala color. + typeset -g POWERLEVEL9K_SCALAENV_FOREGROUND=160 + # Hide scala version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_SCALAENV_SOURCES=(shell local global) + # If set to false, hide scala version if it's the same as global: + # $(scalaenv version-name) == $(scalaenv global). + typeset -g POWERLEVEL9K_SCALAENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide scala version if it's equal to "system". + typeset -g POWERLEVEL9K_SCALAENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_SCALAENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ haskell_stack: haskell version from stack (https://haskellstack.org/) ]########### + # Haskell color. + typeset -g POWERLEVEL9K_HASKELL_STACK_FOREGROUND=172 + # Hide haskell version if it doesn't come from one of these sources. + # + # shell: version is set by STACK_YAML + # local: version is set by stack.yaml up the directory tree + # global: version is set by the implicit global project (~/.stack/global-project/stack.yaml) + typeset -g POWERLEVEL9K_HASKELL_STACK_SOURCES=(shell local) + # If set to false, hide haskell version if it's the same as in the implicit global project. + typeset -g POWERLEVEL9K_HASKELL_STACK_ALWAYS_SHOW=true + # Custom icon. + # typeset -g POWERLEVEL9K_HASKELL_STACK_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #############[ kubecontext: current kubernetes context (https://kubernetes.io/) ]############# + # Show kubecontext only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show kubecontext. + typeset -g POWERLEVEL9K_KUBECONTEXT_SHOW_ON_COMMAND='kubectl|helm|kubens|kubectx|oc|istioctl|kogito|k9s|helmfile|flux|fluxctl|stern|kubeseal|skaffold|kubent|kubecolor|cmctl|sparkctl' + + # Kubernetes context classes for the purpose of using different colors, icons and expansions with + # different contexts. + # + # POWERLEVEL9K_KUBECONTEXT_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current kubernetes context gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_KUBECONTEXT_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_KUBECONTEXT_CLASSES defines the context class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' DEFAULT) + # + # If your current kubernetes context is "deathray-testing/default", its class is TEST + # because "deathray-testing/default" doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' DEFAULT) + typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_FOREGROUND=134 + # typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Use POWERLEVEL9K_KUBECONTEXT_CONTENT_EXPANSION to specify the content displayed by kubecontext + # segment. Parameter expansions are very flexible and fast, too. See reference: + # http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion. + # + # Within the expansion the following parameters are always available: + # + # - P9K_CONTENT The content that would've been displayed if there was no content + # expansion defined. + # - P9K_KUBECONTEXT_NAME The current context's name. Corresponds to column NAME in the + # output of `kubectl config get-contexts`. + # - P9K_KUBECONTEXT_CLUSTER The current context's cluster. Corresponds to column CLUSTER in the + # output of `kubectl config get-contexts`. + # - P9K_KUBECONTEXT_NAMESPACE The current context's namespace. Corresponds to column NAMESPACE + # in the output of `kubectl config get-contexts`. If there is no + # namespace, the parameter is set to "default". + # - P9K_KUBECONTEXT_USER The current context's user. Corresponds to column AUTHINFO in the + # output of `kubectl config get-contexts`. + # + # If the context points to Google Kubernetes Engine (GKE) or Elastic Kubernetes Service (EKS), + # the following extra parameters are available: + # + # - P9K_KUBECONTEXT_CLOUD_NAME Either "gke" or "eks". + # - P9K_KUBECONTEXT_CLOUD_ACCOUNT Account/project ID. + # - P9K_KUBECONTEXT_CLOUD_ZONE Availability zone. + # - P9K_KUBECONTEXT_CLOUD_CLUSTER Cluster. + # + # P9K_KUBECONTEXT_CLOUD_* parameters are derived from P9K_KUBECONTEXT_CLUSTER. For example, + # if P9K_KUBECONTEXT_CLUSTER is "gke_my-account_us-east1-a_my-cluster-01": + # + # - P9K_KUBECONTEXT_CLOUD_NAME=gke + # - P9K_KUBECONTEXT_CLOUD_ACCOUNT=my-account + # - P9K_KUBECONTEXT_CLOUD_ZONE=us-east1-a + # - P9K_KUBECONTEXT_CLOUD_CLUSTER=my-cluster-01 + # + # If P9K_KUBECONTEXT_CLUSTER is "arn:aws:eks:us-east-1:123456789012:cluster/my-cluster-01": + # + # - P9K_KUBECONTEXT_CLOUD_NAME=eks + # - P9K_KUBECONTEXT_CLOUD_ACCOUNT=123456789012 + # - P9K_KUBECONTEXT_CLOUD_ZONE=us-east-1 + # - P9K_KUBECONTEXT_CLOUD_CLUSTER=my-cluster-01 + typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION= + # Show P9K_KUBECONTEXT_CLOUD_CLUSTER if it's not empty and fall back to P9K_KUBECONTEXT_NAME. + POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION+='${P9K_KUBECONTEXT_CLOUD_CLUSTER:-${P9K_KUBECONTEXT_NAME}}' + # Append the current context's namespace if it's not "default". + POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION+='${${:-/$P9K_KUBECONTEXT_NAMESPACE}:#/default}' + + # Custom prefix. + # typeset -g POWERLEVEL9K_KUBECONTEXT_PREFIX='%fat ' + + ################[ terraform: terraform workspace (https://www.terraform.io) ]################# + # Don't show terraform workspace if it's literally "default". + typeset -g POWERLEVEL9K_TERRAFORM_SHOW_DEFAULT=false + # POWERLEVEL9K_TERRAFORM_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current terraform workspace gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_TERRAFORM_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_TERRAFORM_CLASSES defines the workspace class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_TERRAFORM_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' OTHER) + # + # If your current terraform workspace is "project_test", its class is TEST because "project_test" + # doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_TERRAFORM_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' OTHER) + typeset -g POWERLEVEL9K_TERRAFORM_OTHER_FOREGROUND=38 + # typeset -g POWERLEVEL9K_TERRAFORM_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #############[ terraform_version: terraform version (https://www.terraform.io) ]############## + # Terraform version color. + typeset -g POWERLEVEL9K_TERRAFORM_VERSION_FOREGROUND=38 + # Custom icon. + # typeset -g POWERLEVEL9K_TERRAFORM_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #[ aws: aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html) ]# + # Show aws only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show aws. + typeset -g POWERLEVEL9K_AWS_SHOW_ON_COMMAND='aws|awless|terraform|pulumi|terragrunt' + + # POWERLEVEL9K_AWS_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current AWS profile gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_AWS_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_AWS_CLASSES defines the profile class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_AWS_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' DEFAULT) + # + # If your current AWS profile is "company_test", its class is TEST + # because "company_test" doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_AWS_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_AWS_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_AWS_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_AWS_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' DEFAULT) + typeset -g POWERLEVEL9K_AWS_DEFAULT_FOREGROUND=208 + # typeset -g POWERLEVEL9K_AWS_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # AWS segment format. The following parameters are available within the expansion. + # + # - P9K_AWS_PROFILE The name of the current AWS profile. + # - P9K_AWS_REGION The region associated with the current AWS profile. + typeset -g POWERLEVEL9K_AWS_CONTENT_EXPANSION='${P9K_AWS_PROFILE//\%/%%}${P9K_AWS_REGION:+ ${P9K_AWS_REGION//\%/%%}}' + + #[ aws_eb_env: aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/) ]# + # AWS Elastic Beanstalk environment color. + typeset -g POWERLEVEL9K_AWS_EB_ENV_FOREGROUND=70 + # Custom icon. + # typeset -g POWERLEVEL9K_AWS_EB_ENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ azure: azure account name (https://docs.microsoft.com/en-us/cli/azure) ]########## + # Show azure only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show azure. + typeset -g POWERLEVEL9K_AZURE_SHOW_ON_COMMAND='az|terraform|pulumi|terragrunt' + + # POWERLEVEL9K_AZURE_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current azure account name gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_AZURE_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_AZURE_CLASSES defines the account class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_AZURE_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' OTHER) + # + # If your current azure account is "company_test", its class is TEST because "company_test" + # doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_AZURE_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_AZURE_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_AZURE_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_AZURE_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' OTHER) + + # Azure account name color. + typeset -g POWERLEVEL9K_AZURE_OTHER_FOREGROUND=32 + # Custom icon. + # typeset -g POWERLEVEL9K_AZURE_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ gcloud: google cloud account and project (https://cloud.google.com/) ]########### + # Show gcloud only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show gcloud. + typeset -g POWERLEVEL9K_GCLOUD_SHOW_ON_COMMAND='gcloud|gcs|gsutil' + # Google cloud color. + typeset -g POWERLEVEL9K_GCLOUD_FOREGROUND=32 + + # Google cloud format. Change the value of POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION and/or + # POWERLEVEL9K_GCLOUD_COMPLETE_CONTENT_EXPANSION if the default is too verbose or not informative + # enough. You can use the following parameters in the expansions. Each of them corresponds to the + # output of `gcloud` tool. + # + # Parameter | Source + # -------------------------|-------------------------------------------------------------------- + # P9K_GCLOUD_CONFIGURATION | gcloud config configurations list --format='value(name)' + # P9K_GCLOUD_ACCOUNT | gcloud config get-value account + # P9K_GCLOUD_PROJECT_ID | gcloud config get-value project + # P9K_GCLOUD_PROJECT_NAME | gcloud projects describe $P9K_GCLOUD_PROJECT_ID --format='value(name)' + # + # Note: ${VARIABLE//\%/%%} expands to ${VARIABLE} with all occurrences of '%' replaced with '%%'. + # + # Obtaining project name requires sending a request to Google servers. This can take a long time + # and even fail. When project name is unknown, P9K_GCLOUD_PROJECT_NAME is not set and gcloud + # prompt segment is in state PARTIAL. When project name gets known, P9K_GCLOUD_PROJECT_NAME gets + # set and gcloud prompt segment transitions to state COMPLETE. + # + # You can customize the format, icon and colors of gcloud segment separately for states PARTIAL + # and COMPLETE. You can also hide gcloud in state PARTIAL by setting + # POWERLEVEL9K_GCLOUD_PARTIAL_VISUAL_IDENTIFIER_EXPANSION and + # POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION to empty. + typeset -g POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION='${P9K_GCLOUD_PROJECT_ID//\%/%%}' + typeset -g POWERLEVEL9K_GCLOUD_COMPLETE_CONTENT_EXPANSION='${P9K_GCLOUD_PROJECT_NAME//\%/%%}' + + # Send a request to Google (by means of `gcloud projects describe ...`) to obtain project name + # this often. Negative value disables periodic polling. In this mode project name is retrieved + # only when the current configuration, account or project id changes. + typeset -g POWERLEVEL9K_GCLOUD_REFRESH_PROJECT_NAME_SECONDS=60 + + # Custom icon. + # typeset -g POWERLEVEL9K_GCLOUD_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #[ google_app_cred: google application credentials (https://cloud.google.com/docs/authentication/production) ]# + # Show google_app_cred only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show google_app_cred. + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_SHOW_ON_COMMAND='terraform|pulumi|terragrunt' + + # Google application credentials classes for the purpose of using different colors, icons and + # expansions with different credentials. + # + # POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES is an array with even number of elements. The first + # element in each pair defines a pattern against which the current kubernetes context gets + # matched. More specifically, it's P9K_CONTENT prior to the application of context expansion + # (see below) that gets matched. If you unset all POWERLEVEL9K_GOOGLE_APP_CRED_*CONTENT_EXPANSION + # parameters, you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES defines the context class. Patterns are tried in order. + # The first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES=( + # '*:*prod*:*' PROD + # '*:*test*:*' TEST + # '*' DEFAULT) + # + # If your current Google application credentials is "service_account deathray-testing x@y.com", + # its class is TEST because it doesn't match the pattern '* *prod* *' but does match '* *test* *'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_CONTENT_EXPANSION='$P9K_GOOGLE_APP_CRED_PROJECT_ID' + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES=( + # '*:*prod*:*' PROD # These values are examples that are unlikely + # '*:*test*:*' TEST # to match your needs. Customize them as needed. + '*' DEFAULT) + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_FOREGROUND=32 + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Use POWERLEVEL9K_GOOGLE_APP_CRED_CONTENT_EXPANSION to specify the content displayed by + # google_app_cred segment. Parameter expansions are very flexible and fast, too. See reference: + # http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion. + # + # You can use the following parameters in the expansion. Each of them corresponds to one of the + # fields in the JSON file pointed to by GOOGLE_APPLICATION_CREDENTIALS. + # + # Parameter | JSON key file field + # ---------------------------------+--------------- + # P9K_GOOGLE_APP_CRED_TYPE | type + # P9K_GOOGLE_APP_CRED_PROJECT_ID | project_id + # P9K_GOOGLE_APP_CRED_CLIENT_EMAIL | client_email + # + # Note: ${VARIABLE//\%/%%} expands to ${VARIABLE} with all occurrences of '%' replaced by '%%'. + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_CONTENT_EXPANSION='${P9K_GOOGLE_APP_CRED_PROJECT_ID//\%/%%}' + + ##############[ toolbox: toolbox name (https://github.com/containers/toolbox) ]############### + # Toolbox color. + typeset -g POWERLEVEL9K_TOOLBOX_FOREGROUND=178 + # Don't display the name of the toolbox if it matches fedora-toolbox-*. + typeset -g POWERLEVEL9K_TOOLBOX_CONTENT_EXPANSION='${P9K_TOOLBOX_NAME:#fedora-toolbox-*}' + # Custom icon. + # typeset -g POWERLEVEL9K_TOOLBOX_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_TOOLBOX_PREFIX='%fin ' + + ###############################[ public_ip: public IP address ]############################### + # Public IP color. + typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=94 + # Custom icon. + # typeset -g POWERLEVEL9K_PUBLIC_IP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ########################[ vpn_ip: virtual private network indicator ]######################### + # VPN IP color. + typeset -g POWERLEVEL9K_VPN_IP_FOREGROUND=81 + # When on VPN, show just an icon without the IP address. + # Tip: To display the private IP address when on VPN, remove the next line. + typeset -g POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION= + # Regular expression for the VPN network interface. Run `ifconfig` or `ip -4 a show` while on VPN + # to see the name of the interface. + typeset -g POWERLEVEL9K_VPN_IP_INTERFACE='(gpd|wg|(.*tun)|tailscale)[0-9]*|(zt.*)' + # If set to true, show one segment per matching network interface. If set to false, show only + # one segment corresponding to the first matching network interface. + # Tip: If you set it to true, you'll probably want to unset POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION. + typeset -g POWERLEVEL9K_VPN_IP_SHOW_ALL=false + # Custom icon. + # typeset -g POWERLEVEL9K_VPN_IP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ ip: ip address and bandwidth usage for a specified network interface ]########### + # IP color. + typeset -g POWERLEVEL9K_IP_FOREGROUND=38 + # The following parameters are accessible within the expansion: + # + # Parameter | Meaning + # ----------------------+------------------------------------------- + # P9K_IP_IP | IP address + # P9K_IP_INTERFACE | network interface + # P9K_IP_RX_BYTES | total number of bytes received + # P9K_IP_TX_BYTES | total number of bytes sent + # P9K_IP_RX_BYTES_DELTA | number of bytes received since last prompt + # P9K_IP_TX_BYTES_DELTA | number of bytes sent since last prompt + # P9K_IP_RX_RATE | receive rate (since last prompt) + # P9K_IP_TX_RATE | send rate (since last prompt) + typeset -g POWERLEVEL9K_IP_CONTENT_EXPANSION='$P9K_IP_IP${P9K_IP_RX_RATE:+ %70F⇣$P9K_IP_RX_RATE}${P9K_IP_TX_RATE:+ %215F⇡$P9K_IP_TX_RATE}' + # Show information for the first network interface whose name matches this regular expression. + # Run `ifconfig` or `ip -4 a show` to see the names of all network interfaces. + typeset -g POWERLEVEL9K_IP_INTERFACE='[ew].*' + # Custom icon. + # typeset -g POWERLEVEL9K_IP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #########################[ proxy: system-wide http/https/ftp proxy ]########################## + # Proxy color. + typeset -g POWERLEVEL9K_PROXY_FOREGROUND=68 + # Custom icon. + # typeset -g POWERLEVEL9K_PROXY_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################################[ battery: internal battery ]################################# + # Show battery in red when it's below this level and not connected to power supply. + typeset -g POWERLEVEL9K_BATTERY_LOW_THRESHOLD=20 + typeset -g POWERLEVEL9K_BATTERY_LOW_FOREGROUND=160 + # Show battery in green when it's charging or fully charged. + typeset -g POWERLEVEL9K_BATTERY_{CHARGING,CHARGED}_FOREGROUND=70 + # Show battery in yellow when it's discharging. + typeset -g POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND=178 + # Battery pictograms going from low to high level of charge. + typeset -g POWERLEVEL9K_BATTERY_STAGES='\UF008E\UF007A\UF007B\UF007C\UF007D\UF007E\UF007F\UF0080\UF0081\UF0082\UF0079' + # Don't show the remaining time to charge/discharge. + typeset -g POWERLEVEL9K_BATTERY_VERBOSE=false + + #####################################[ wifi: wifi speed ]##################################### + # WiFi color. + typeset -g POWERLEVEL9K_WIFI_FOREGROUND=68 + # Custom icon. + # typeset -g POWERLEVEL9K_WIFI_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Use different colors and icons depending on signal strength ($P9K_WIFI_BARS). + # + # # Wifi colors and icons for different signal strength levels (low to high). + # typeset -g my_wifi_fg=(68 68 68 68 68) # <-- change these values + # typeset -g my_wifi_icon=('WiFi' 'WiFi' 'WiFi' 'WiFi' 'WiFi') # <-- change these values + # + # typeset -g POWERLEVEL9K_WIFI_CONTENT_EXPANSION='%F{${my_wifi_fg[P9K_WIFI_BARS+1]}}$P9K_WIFI_LAST_TX_RATE Mbps' + # typeset -g POWERLEVEL9K_WIFI_VISUAL_IDENTIFIER_EXPANSION='%F{${my_wifi_fg[P9K_WIFI_BARS+1]}}${my_wifi_icon[P9K_WIFI_BARS+1]}' + # + # The following parameters are accessible within the expansions: + # + # Parameter | Meaning + # ----------------------+--------------- + # P9K_WIFI_SSID | service set identifier, a.k.a. network name + # P9K_WIFI_LINK_AUTH | authentication protocol such as "wpa2-psk" or "none"; empty if unknown + # P9K_WIFI_LAST_TX_RATE | wireless transmit rate in megabits per second + # P9K_WIFI_RSSI | signal strength in dBm, from -120 to 0 + # P9K_WIFI_NOISE | noise in dBm, from -120 to 0 + # P9K_WIFI_BARS | signal strength in bars, from 0 to 4 (derived from P9K_WIFI_RSSI and P9K_WIFI_NOISE) + + ####################################[ time: current time ]#################################### + # Current time color. + typeset -g POWERLEVEL9K_TIME_FOREGROUND=66 + # Format for the current time: 09:51:02. See `man 3 strftime`. + typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%H:%M:%S}' + # If set to true, time will update when you hit enter. This way prompts for the past + # commands will contain the start times of their commands as opposed to the default + # behavior where they contain the end times of their preceding commands. + typeset -g POWERLEVEL9K_TIME_UPDATE_ON_COMMAND=false + # Custom icon. + # typeset -g POWERLEVEL9K_TIME_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_TIME_PREFIX='%fat ' + + # Example of a user-defined prompt segment. Function prompt_example will be called on every + # prompt if `example` prompt segment is added to POWERLEVEL9K_LEFT_PROMPT_ELEMENTS or + # POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS. It displays an icon and orange text greeting the user. + # + # Type `p10k help segment` for documentation and a more sophisticated example. + function prompt_example() { + p10k segment -f 208 -i '⭐' -t 'hello, %n' + } + + # User-defined prompt segments may optionally provide an instant_prompt_* function. Its job + # is to generate the prompt segment for display in instant prompt. See + # https://github.com/romkatv/powerlevel10k/blob/master/README.md#instant-prompt. + # + # Powerlevel10k will call instant_prompt_* at the same time as the regular prompt_* function + # and will record all `p10k segment` calls it makes. When displaying instant prompt, Powerlevel10k + # will replay these calls without actually calling instant_prompt_*. It is imperative that + # instant_prompt_* always makes the same `p10k segment` calls regardless of environment. If this + # rule is not observed, the content of instant prompt will be incorrect. + # + # Usually, you should either not define instant_prompt_* or simply call prompt_* from it. If + # instant_prompt_* is not defined for a segment, the segment won't be shown in instant prompt. + function instant_prompt_example() { + # Since prompt_example always makes the same `p10k segment` calls, we can call it from + # instant_prompt_example. This will give us the same `example` prompt segment in the instant + # and regular prompts. + prompt_example + } + + # User-defined prompt segments can be customized the same way as built-in segments. + # typeset -g POWERLEVEL9K_EXAMPLE_FOREGROUND=208 + # typeset -g POWERLEVEL9K_EXAMPLE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Transient prompt works similarly to the builtin transient_rprompt option. It trims down prompt + # when accepting a command line. Supported values: + # + # - off: Don't change prompt when accepting a command line. + # - always: Trim down prompt when accepting a command line. + # - same-dir: Trim down prompt when accepting a command line unless this is the first command + # typed after changing current working directory. + typeset -g POWERLEVEL9K_TRANSIENT_PROMPT=always + + # Instant prompt mode. + # + # - off: Disable instant prompt. Choose this if you've tried instant prompt and found + # it incompatible with your zsh configuration files. + # - quiet: Enable instant prompt and don't print warnings when detecting console output + # during zsh initialization. Choose this if you've read and understood + # https://github.com/romkatv/powerlevel10k/blob/master/README.md#instant-prompt. + # - verbose: Enable instant prompt and print a warning when detecting console output during + # zsh initialization. Choose this if you've never tried instant prompt, haven't + # seen the warning, or if you are unsure what this all means. + typeset -g POWERLEVEL9K_INSTANT_PROMPT=verbose + + # Hot reload allows you to change POWERLEVEL9K options after Powerlevel10k has been initialized. + # For example, you can type POWERLEVEL9K_BACKGROUND=red and see your prompt turn red. Hot reload + # can slow down prompt by 1-2 milliseconds, so it's better to keep it turned off unless you + # really need it. + typeset -g POWERLEVEL9K_DISABLE_HOT_RELOAD=true + + # If p10k is already loaded, reload configuration. + # This works even with POWERLEVEL9K_DISABLE_HOT_RELOAD=true. + (( ! $+functions[p10k] )) || p10k reload +} + +# Tell `p10k configure` which file it should overwrite. +typeset -g POWERLEVEL9K_CONFIG_FILE=${${(%):-%x}:a} + +(( ${#p10k_config_opts} )) && setopt ${p10k_config_opts[@]} +'builtin' 'unset' 'p10k_config_opts' diff --git a/base/zshrc b/base/zshrc index c2d3ce5..95ecb16 100644 --- a/base/zshrc +++ b/base/zshrc @@ -1,8 +1,21 @@ # this is my zsh config. there are many like it, but this one is mine. # shellcheck shell=bash +# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. +# Initialization code that may require console input (password prompts, [y/n] +# confirmations, etc.) must go above this block; everything else may go below. +if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then + source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" +fi + # Fig pre block. Keep at the top of this file. -[[ -f "$HOME/.fig/shell/zshrc.pre.zsh" ]] && builtin source "$HOME/.fig/shell/zshrc.pre.zsh" +[[ -f "$HOME/.fig/shell/zshrc.pre.zsh" ]] \ + && builtin source "$HOME/.fig/shell/zshrc.pre.zsh" + +# Defaults +export DOTFILES="$HOME/.dotfiles" +# shellcheck source=shared.sh +source "$DOTFILES/scripts/shared.sh" autoload -U colors zsh/terminfo colors @@ -13,20 +26,15 @@ FPATH="~/.config/zsh/completion:$FPATH" autoload -Uz compinit && compinit -i compinit -d "$XDG_CACHE_HOME"/zsh/zcompdump-"$ZSH_VERSION" -# Defaults -export DOTFILES="$HOME/.dotfiles" -# shellcheck source=shared.sh -source "$DOTFILES/scripts/shared.sh" - # Run x-load-configs in your terminal to reload the files. function x-load-configs() { # Load the shell dotfiles, and then some: for file in $DOTFILES/config/{exports,alias,functions}; do - [ -f "$file" ] && source "$file" - [ -f "$file-secret" ] && source "$file-secret" - [ -f "$file-$HOSTNAME" ] && source "$file-$HOSTNAME" - [ -f "$file-$HOSTNAME-secret" ] && source "$file-$HOSTNAME-secret" + [ -r "$file" ] && source "$file" + [ -r "$file-secret" ] && source "$file-secret" + [ -r "$file-$HOSTNAME" ] && source "$file-$HOSTNAME" + [ -r "$file-$HOSTNAME-secret" ] && source "$file-$HOSTNAME-secret" done } x-load-configs @@ -48,13 +56,15 @@ have antigen && { antigen apply } -# starship is present -have starship && eval "$(starship init zsh)" - -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}"/fzf/fzf.zsh ] \ - && source "${XDG_CONFIG_HOME:-$HOME/.config}"/fzf/fzf.zsh +[ -f "${DOTFILES}/config/fzf/fzf.zsh" ] \ + && source "${DOTFILES}/config/fzf/fzf.zsh" export LESSHISTFILE="$XDG_CACHE_HOME"/less_history # Fig post block. Keep at the bottom of this file. -[[ -f "$HOME/.fig/shell/zshrc.post.zsh" ]] && builtin source "$HOME/.fig/shell/zshrc.post.zsh" +[[ -f "$HOME/.fig/shell/zshrc.post.zsh" ]] \ + && builtin source "$HOME/.fig/shell/zshrc.post.zsh" + +# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. +[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh + diff --git a/config/functions b/config/functions index eb54a99..23d4664 100755 --- a/config/functions +++ b/config/functions @@ -84,6 +84,9 @@ ask() # Defines default antigen bundles x-default-antigen-bundles() { + # the theme to use + antigen theme romkatv/powerlevel10k + # these should be always available antigen bundle colored-man-pages antigen bundle command-not-found diff --git a/config/starship.toml b/config/starship.toml deleted file mode 100644 index 79d338b..0000000 --- a/config/starship.toml +++ /dev/null @@ -1,37 +0,0 @@ -# Get editor completions based on the config schema -"$schema" = 'https://starship.rs/config-schema.json' - -# Inserts a blank line between shell prompts -add_newline = true - -# Timeout for commands executed by starship (in milliseconds). -command_timeout = 1000 - -# Replace the '❯' symbol in the prompt with '➜' -[character] # The name of the module we are configuring is 'character' -success_symbol = '[➜](bold green)' # The 'success_symbol' segment is being set to '➜' with the color 'bold green' - -[cmd_duration] -disabled = true - -[git_branch] -symbol = '🌱 ' -truncation_length = 20 -truncation_symbol = '…' -ignore_branches = ['master', 'main'] - -[git_status] -up_to_date = '✓' -staged = '[++\($count\)](green)' - -[package] -format = '[$symbol($version )]($style)' -version_format = '${major}.${minor}' - -[php] -format = '[$symbol($version )]($style)' -version_format = '${major}.${minor}' - -[nodejs] -format = '[$symbol($version )]($style)' -version_format = '${major}.${minor}' diff --git a/local/bin/dfm b/local/bin/dfm index a9bdaaa..e250b0e 100755 --- a/local/bin/dfm +++ b/local/bin/dfm @@ -47,7 +47,6 @@ function section_install all) $0 install macos $0 install antigen - $0 install starship $0 brew install $0 install composer $0 install dotenv