30 lines
951 B
Bash
30 lines
951 B
Bash
set_prompt() {
|
|
local EXIT_STATUS="$?"
|
|
local COLOR_RESET='\[\033[0m\]'
|
|
|
|
# User settings
|
|
if (( EUID == 0 )); then
|
|
local COLOR_USER='\[\033[38;2;180;40;120m\]' # Purple-red (root)
|
|
local PROMPT_SYMBOL='#'
|
|
else
|
|
local COLOR_USER='\[\033[38;2;44;162;221m\]' # Azure blue (user)
|
|
local PROMPT_SYMBOL='$'
|
|
fi
|
|
|
|
# Host and path
|
|
local COLOR_HOST='\[\033[38;2;44;180;70m\]' # Emerald green
|
|
local COLOR_PATH='\[\033[38;2;126;98;247m\]' # Soft purple
|
|
|
|
# Dynamic symbol color
|
|
if (( EXIT_STATUS != 0 )); then
|
|
local COLOR_SYMBOL='\[\033[38;2;255;50;50m\]' # Bright red (error)
|
|
else
|
|
local COLOR_SYMBOL='\[\033[38;2;67;91;18m\]' # Olive green (success)
|
|
fi
|
|
|
|
# Final prompt assembly
|
|
PS1="${COLOR_USER}\u${COLOR_RESET}@${COLOR_HOST}\h${COLOR_RESET}:${COLOR_PATH}\w${COLOR_RESET}${COLOR_SYMBOL}${PROMPT_SYMBOL}${COLOR_RESET} "
|
|
}
|
|
|
|
PROMPT_COMMAND=set_prompt
|