dotfiles/bash/prompt

46 lines
804 B
Text

source "$DOTFILES_SHELL_DIR/prompt_segments"
source "$DOTFILES_BASH_DIR/prompt_segments"
source "$DOTFILES_SHELL_DIR/prompt_vcs"
prompt_host() {
local bg='black'
local fg='white'
if [[ $UID -eq 0 ]]; then
bg='red'
fi
if [[ -n $SSH_CLIENT ]]; then
fg='yellow'
fi
prompt_segment $bg $fg '\u@\h'
}
prompt_dir() {
prompt_segment green white '\w'
}
prompt_build() {
prompt_setup_segments
CURRENT_BG='NONE'
prompt_host
if prompt_vcs_repo; then
prompt_vcs_status
prompt_vcs_action
else
prompt_dir
fi
prompt_last_rc
prompt_end
echo -n ' '
}
prompt_last_rc() {
[[ $LAST_CMD_RC -ne 0 ]] && prompt_segment red white "$LAST_CMD_RC"
}
set_prompt() {
__git_ps1_vars
PS1="$(prompt_build)"
}