dotfiles_bash/bash_prompt.sh
Candifloss 2444248a8c Initial settings
- Common aliases
- Distro-specific aliases
- Shell prompt
- README
2025-08-05 16:44:49 +05:30

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