diff options
| author | ryukamish <[email protected]> | 2026-07-19 23:54:19 +0530 |
|---|---|---|
| committer | ryukamish <[email protected]> | 2026-07-19 23:54:19 +0530 |
| commit | a1a9dcb1617f595f3f5ddfe728bb5cf03f172153 (patch) | |
| tree | bf580902eb493f92260d56a6e3d86ad8cbd0ede0 | |
| parent | 230ba973f6582582a6650ba464ff06dd18e180b7 (diff) | |
prompt colorscheme to catppuccin
| -rw-r--r-- | .zshrc | 50 |
1 files changed, 31 insertions, 19 deletions
@@ -30,7 +30,7 @@ export HISTFILESIZE="200000" export SAVEHIST="${HISTSIZE}" # ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ -# ┃ Functions ┃ +# ┃ Functions ┃ # ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ function _have { @@ -216,27 +216,39 @@ alias ....='cd ../../..' # ===================== Double line prompt ====================== -# autoload -Uz vcs_info -# setopt PROMPT_SUBST +autoload -Uz vcs_info # loads zsh's version-control info system +setopt PROMPT_SUBST # allows variable/command expansion inside PROMPT + +# palette — catppuccin mocha (prominent accents) +MAUVE='%F{#cba6f7}' # signature Mocha accent — used for username +BLUE='%F{#89b4fa}' # used for current path +TEAL='%F{#94e2d5}' # used for git branch name +YELLOW='%F{#f9e2af}' # used for unstaged-changes marker +PEACH='%F{#fab387}' # used for staged-changes marker +PINK='%F{#f5c2e7}' # used for git action (rebase/merge/etc) +RED='%F{#f38ba8}' # used for prompt arrow on command failure +GREEN='%F{#a6e3a1}' # used for prompt arrow on command success +SUBTEXT='%F{#a6adc8}' # muted tone for structural characters/text +RESET='%f' # resets foreground color back to default -# palette -# CORAL='%F{#ff7645}' -# LAVENDER='%F{#b8a5e6}' -# VOID='%F{#6b6b70}' -# RED='%F{#e05a5a}' -# RESET='%f' +# format for normal git state (branch + unstaged/staged indicators) +zstyle ':vcs_info:git:*' formats "${SUBTEXT}on ${TEAL}%b${YELLOW}%u${PEACH}%c${RESET}" +# format used during an in-progress git action (e.g. rebase, merge) +zstyle ':vcs_info:git:*' actionformats "${SUBTEXT}on ${TEAL}%b${SUBTEXT}|${PINK}%a${RESET}" -# zstyle ':vcs_info:git:*' formats "${VOID}on ${LAVENDER}%b${VOID}%u%c${RESET}" -# zstyle ':vcs_info:git:*' actionformats "${VOID}on ${LAVENDER}%b${VOID}|%a${RESET}" -# zstyle ':vcs_info:*' check-for-changes true -# zstyle ':vcs_info:*' unstagedstr ' *' -# zstyle ':vcs_info:*' stagedstr ' +' +zstyle ':vcs_info:*' check-for-changes true # enable staged/unstaged detection (can slow big repos) +zstyle ':vcs_info:*' unstagedstr ' *' # symbol shown when there are unstaged changes +zstyle ':vcs_info:*' stagedstr ' +' # symbol shown when there are staged changes -# precmd() { vcs_info } +precmd() { vcs_info } # runs vcs_info before each prompt draw, refreshing git status -# PROMPT=' -# ${VOID}╭─${CORAL}%n${VOID}@%m ${LAVENDER}%~${RESET} ${vcs_info_msg_0_} -# ${VOID}╰─%(?.${CORAL}.${RED})❯${RESET} ' +PROMPT=' +${SUBTEXT}╭─${MAUVE}%n${SUBTEXT}@%m ${BLUE}%~${RESET} ${vcs_info_msg_0_} +${SUBTEXT}╰─%(?.${GREEN}.${RED})❯${RESET} ' +# line 1: top border, username (%n), host (%m), current dir (%~), git info +# line 2: bottom border + arrow — %(?.X.Y) is a ternary: X if last command +# succeeded (exit code 0), Y otherwise # Starship prompt -eval "$(starship init zsh)" +# for times when prompt gets boring +# eval "$(starship init zsh)" |
