1 # AX-ZSH: Alex' Modular ZSH Configuration
2 # 50_prompt.zshrc: Setup default prompts
4 # Logname ("user name")
7 && ZSH_THEME_LOGNAME_PROMPT_PREFIX="%{$fg_no_bold[red]%}" \
8 || ZSH_THEME_LOGNAME_PROMPT_PREFIX=""
9 ZSH_THEME_LOGNAME_PROMPT_SUFFIX="%{$reset_color%}@"
11 function ax_logname_prompt_root() {
12 (( $UID == 0 )) || return 1
17 ax_logname_prompt_functions=($ax_logname_prompt_functions ax_logname_prompt_root)
19 function ax_logname_prompt() {
22 for func ($ax_logname_prompt_functions); do
23 p=$( $func ) || continue
24 echo "${ZSH_THEME_LOGNAME_PROMPT_PREFIX}${p}${ZSH_THEME_LOGNAME_PROMPT_SUFFIX}"
31 ZSH_THEME_HOSTNAME_PROMPT_PREFIX=""
32 ZSH_THEME_HOSTNAME_PROMPT_SUFFIX="%{$reset_color%}:"
34 function ax_hostname_prompt_root() {
35 (( $UID == 0 )) || return 1
40 ax_hostname_prompt_functions=($ax_hostname_prompt_functions ax_hostname_prompt_root)
42 function ax_hostname_prompt() {
45 for func ($ax_hostname_prompt_functions); do
46 p=$( $func ) || continue
47 echo "${ZSH_THEME_HOSTNAME_PROMPT_PREFIX}${p}${ZSH_THEME_HOSTNAME_PROMPT_SUFFIX}"
54 ZSH_THEME_VCS_PROMPT_PREFIX="(%{$fg_no_bold[yellow]%}"
55 ZSH_THEME_VCS_PROMPT_SUFFIX="%{$reset_color%}) "
57 ZSH_THEME_VCS_PROMPT_CLEAN="%{$fg_no_bold[green]%}✔"
58 ZSH_THEME_VCS_PROMPT_DIRTY="%{$fg_no_bold[red]%}✘"
59 ZSH_THEME_VCS_PROMPT_AHEAD="%{$fg_no_bold[cyan]%}→"
60 ZSH_THEME_VCS_PROMPT_BEHIND="%{$fg_no_bold[blue]%}←"
62 function ax_vcs_prompt() {
65 for func ($ax_vcs_prompt_functions); do
66 p=$( $func ) || continue
67 echo "${ZSH_THEME_VCS_PROMPT_PREFIX}${p}${ZSH_THEME_VCS_PROMPT_SUFFIX}"
72 # Options and defaults