Add four-segment seasonal gradients

This commit is contained in:
2026-01-24 14:45:15 +00:00
parent d7c08d5a4c
commit 7c4e99667c
3 changed files with 63 additions and 24 deletions

View File

@@ -386,8 +386,8 @@ _ps1_set_prompt() {
local RST="\[\e[0m\]"
# Seasonal palettes (Z1 is darker than Z2)
local Z1_BG Z1_FG Z2_BG Z2_FG PATH_FG FRAME
local Z1_BG_CODE Z2_BG_CODE
local Z1_BG Z1_FG Z2_BG Z2_FG Z3_BG Z4_BG PATH_FG FRAME
local Z1_BG_CODE Z2_BG_CODE Z3_BG_CODE Z4_BG_CODE
if [[ "$__PS1_STYLE_PACK" == "contest" ]]; then
Z1_BG_CODE=24
Z2_BG_CODE=31
@@ -466,6 +466,10 @@ _ps1_set_prompt() {
Z1_FG="\[\e[38;5;255m\]"
Z2_BG="\[\e[48;5;${Z2_BG_CODE}m\]"
Z2_FG="\[\e[38;5;255m\]"
Z3_BG_CODE="${Z2_BG_CODE}"
Z4_BG_CODE="${Z2_BG_CODE}"
Z3_BG="\[\e[48;5;${Z3_BG_CODE}m\]"
Z4_BG="\[\e[48;5;${Z4_BG_CODE}m\]"
PATH_FG="\[\e[38;5;51m\]"
FRAME="\[\e[38;5;23m\]"
;;
@@ -473,43 +477,59 @@ _ps1_set_prompt() {
else
case "$__PS1_SEASON" in
spring)
Z1_BG_CODE=71
Z2_BG_CODE=120
Z1_BG_CODE=70
Z2_BG_CODE=71
Z3_BG_CODE=72
Z4_BG_CODE=120
Z1_BG="\[\e[48;5;${Z1_BG_CODE}m\]"
Z1_FG="\[\e[38;5;255m\]"
Z2_BG="\[\e[48;5;${Z2_BG_CODE}m\]"
Z2_FG="\[\e[38;5;22m\]"
Z3_BG="\[\e[48;5;${Z3_BG_CODE}m\]"
Z4_BG="\[\e[48;5;${Z4_BG_CODE}m\]"
PATH_FG="\[\e[38;5;22m\]"
FRAME="\[\e[38;5;65m\]"
;;
summer)
Z1_BG_CODE=142
Z2_BG_CODE=214
Z1_BG_CODE=141
Z2_BG_CODE=142
Z3_BG_CODE=143
Z4_BG_CODE=214
Z1_BG="\[\e[48;5;${Z1_BG_CODE}m\]"
Z1_FG="\[\e[38;5;255m\]"
Z2_BG="\[\e[48;5;${Z2_BG_CODE}m\]"
Z2_FG="\[\e[38;5;0m\]"
Z3_BG="\[\e[48;5;${Z3_BG_CODE}m\]"
Z4_BG="\[\e[48;5;${Z4_BG_CODE}m\]"
PATH_FG="\[\e[38;5;232m\]"
FRAME="\[\e[38;5;130m\]"
;;
autumn)
Z1_BG_CODE=95
Z2_BG_CODE=173
Z1_BG_CODE=94
Z2_BG_CODE=95
Z3_BG_CODE=96
Z4_BG_CODE=173
Z1_BG="\[\e[48;5;${Z1_BG_CODE}m\]"
Z1_FG="\[\e[38;5;255m\]"
Z2_BG="\[\e[48;5;${Z2_BG_CODE}m\]"
Z2_FG="\[\e[38;5;255m\]"
Z3_BG="\[\e[48;5;${Z3_BG_CODE}m\]"
Z4_BG="\[\e[48;5;${Z4_BG_CODE}m\]"
PATH_FG="\[\e[38;5;223m\]"
FRAME="\[\e[38;5;95m\]"
;;
*)
# winter (default)
Z1_BG_CODE=61
Z2_BG_CODE=37
Z1_BG_CODE=60
Z2_BG_CODE=61
Z3_BG_CODE=62
Z4_BG_CODE=37
Z1_BG="\[\e[48;5;${Z1_BG_CODE}m\]"
Z1_FG="\[\e[38;5;255m\]"
Z2_BG="\[\e[48;5;${Z2_BG_CODE}m\]"
Z2_FG="\[\e[38;5;255m\]"
Z3_BG="\[\e[48;5;${Z3_BG_CODE}m\]"
Z4_BG="\[\e[48;5;${Z4_BG_CODE}m\]"
PATH_FG="\[\e[38;5;194m\]"
FRAME="\[\e[38;5;60m\]"
;;
@@ -686,13 +706,23 @@ ${H_Z2_BG}${H_Z2_FG} ${HOST_PART}${PATH_SEP}${H_PATH_FG}${PATH_PART}${END_PAD}${
A_RIGHT=""
A_SEP=""
A_LEFT_FG="\[\e[38;5;${Z1_BG_CODE}m\]"
A_RIGHT_FG="\[\e[38;5;${Z2_BG_CODE}m\]"
A_RIGHT_FG="\[\e[38;5;${Z4_BG_CODE:-$Z2_BG_CODE}m\]"
fi
PS1="\
if [[ "$__PS1_STYLE_PACK" == "standard" && "$__PS1_USE_NF" -eq 1 ]]; then
local SEP12="\[\e[38;5;${Z2_BG_CODE}m\]\[\e[48;5;${Z1_BG_CODE}m\]${A_SEP}${RST}"
local SEP23="\[\e[38;5;${Z3_BG_CODE}m\]\[\e[48;5;${Z2_BG_CODE}m\]${A_SEP}${RST}"
local SEP34="\[\e[38;5;${Z4_BG_CODE}m\]\[\e[48;5;${Z3_BG_CODE}m\]${A_SEP}${RST}"
PS1="\
${PREFIX}${FRAME}╭─${RST}\
${A_LEFT_FG}${A_LEFT}${RST}${Z1_BG}${Z1_FG} \\d ${RST}${SEP12}${Z2_BG}${Z1_FG} \\A ${RST}${SEP23}${Z3_BG}${Z1_FG} \\u ${RST}${SEP34}${Z4_BG}${Z2_FG} ${HOST_PART}${PATH_SEP}${PATH_FG}${PATH_PART}${END_PAD}${RST}${A_RIGHT_FG}${A_RIGHT}${RST}\
\n${FRAME}╰── ${RST}${prompt_sym} ${__PS1_SYM}${git_tail}"
else
PS1="\
${PREFIX}${FRAME}╭─${RST}\
${A_LEFT_FG}${A_LEFT}${RST}${Z1_BG}${Z1_FG} ${L1} ${RST}${Z1_BG}${Z2_BG}${Z2_FG}${A_SEP}${RST}\
${Z2_BG}${Z2_FG} ${HOST_PART}${PATH_SEP}${PATH_FG}${PATH_PART}${END_PAD}${RST}${A_RIGHT_FG}${A_RIGHT}${RST}\
\n${FRAME}╰── ${RST}${prompt_sym} ${__PS1_SYM}${git_tail}"
fi
;;
esac
}