2022-08-16 15:26:19 +00:00
|
|
|
autoload -Uz colors && colors
|
|
|
|
|
|
|
|
prompt_color() {
|
|
|
|
[[ -n "$1" ]] && print "%{$fg_bold[$2]%}$1%{$reset_color%}"
|
|
|
|
}
|
|
|
|
|
|
|
|
prompt_blue() { print "$(prompt_color "$1" blue)" }
|
|
|
|
prompt_green() { print "$(prompt_color "$1" green)" }
|
|
|
|
prompt_red() { print "$(prompt_color "$1" red)" }
|
|
|
|
prompt_yellow() { print "$(prompt_color "$1" yellow)" }
|
|
|
|
|
|
|
|
prompt_full_path() {
|
|
|
|
print "$(prompt_blue %~)"
|
|
|
|
}
|
|
|
|
|
|
|
|
prompt_shortened_path() {
|
|
|
|
print "$(prompt_blue %2~)"
|
|
|
|
}
|
2022-05-23 11:26:36 +00:00
|
|
|
|
2022-08-16 15:26:19 +00:00
|
|
|
prompt_git_branch() {
|
2022-07-12 18:48:45 +00:00
|
|
|
local branch="$(git symbolic-ref HEAD 2> /dev/null | cut -d'/' -f3)"
|
2022-05-23 11:26:36 +00:00
|
|
|
|
2022-08-16 15:26:19 +00:00
|
|
|
[ -n "${branch}" ] && print "$(prompt_green $branch)"
|
2022-05-27 17:31:52 +00:00
|
|
|
}
|
|
|
|
|
2022-08-16 15:26:19 +00:00
|
|
|
prompt_git_commit() {
|
2022-07-12 18:48:45 +00:00
|
|
|
local commit_sha="$(git rev-parse --short HEAD 2> /dev/null)"
|
2022-05-23 11:26:36 +00:00
|
|
|
|
2022-08-16 15:26:19 +00:00
|
|
|
[ -n "${commit_sha}" ] && echo [$(prompt_yellow $commit_sha)]
|
2022-05-23 11:26:36 +00:00
|
|
|
}
|
2022-05-27 17:31:52 +00:00
|
|
|
|
2022-08-16 15:26:19 +00:00
|
|
|
setopt prompt_subst
|
|
|
|
|
|
|
|
PROMPT='$(prompt_shortened_path) $(prompt_git_branch) $(prompt_git_commit) $ '
|