X-Git-Url: https://arthur.barton.de/gitweb/?a=blobdiff_plain;f=core%2F50_prompt%2F50_prompt.zshrc;h=b28720b73a60ab14e00f5145bce4a7309d4f5e47;hb=5c3ee2ff652a8286774ab3b8554a9cc1c58b252a;hp=1d327046f09c167034dce2f6e1ceb6f48d3555b3;hpb=244c429e9026b283bcfb89c80a556c9e6e31e420;p=ax-zsh.git diff --git a/core/50_prompt/50_prompt.zshrc b/core/50_prompt/50_prompt.zshrc index 1d32704..b28720b 100644 --- a/core/50_prompt/50_prompt.zshrc +++ b/core/50_prompt/50_prompt.zshrc @@ -4,10 +4,13 @@ # Logname ("user name") ZSH_THEME_LOGNAME_PROMPT_PREFIX_SPACING="" -(( $UID == 0 )) \ - && ZSH_THEME_LOGNAME_PROMPT_PREFIX="%{$fg_no_bold[red]%}" \ - || ZSH_THEME_LOGNAME_PROMPT_PREFIX="" -ZSH_THEME_LOGNAME_PROMPT_SUFFIX="%{$reset_color%}" +if (( $UID == 0 )); then + ZSH_THEME_LOGNAME_PROMPT_PREFIX="%{$fg_no_bold[red]%}" \ + ZSH_THEME_LOGNAME_PROMPT_SUFFIX="%{$reset_color%}" +else + ZSH_THEME_LOGNAME_PROMPT_PREFIX="" + ZSH_THEME_LOGNAME_PROMPT_SUFFIX="" +fi ZSH_THEME_LOGNAME_PROMPT_SUFFIX_SPACING="@" function ax_logname_prompt_root() { @@ -24,14 +27,14 @@ function ax_logname_prompt_yn() { done } -ax_logname_prompt_functions=() +ax_logname_prompt_functions=(ax_logname_prompt_root) # Hostname ZSH_THEME_HOSTNAME_PROMPT_PREFIX_SPACING="" ZSH_THEME_HOSTNAME_PROMPT_PREFIX="" -ZSH_THEME_HOSTNAME_PROMPT_SUFFIX="%{$reset_color%}:" -ZSH_THEME_HOSTNAME_PROMPT_SUFFIX_SPACING="" +ZSH_THEME_HOSTNAME_PROMPT_SUFFIX="" +ZSH_THEME_HOSTNAME_PROMPT_SUFFIX_SPACING=":" function ax_hostname_prompt_root() { (( $UID == 0 )) || return 1 @@ -51,15 +54,23 @@ ax_hostname_prompt_functions=() # VCS +if axzsh_is_utf_terminal; then + clean="✔"; dirty="✘"; ahead="→"; behind="←" +else + clean="+"; dirty="x"; ahead=">"; behind="<" +fi + ZSH_THEME_VCS_PROMPT_PREFIX_SPACING="(" ZSH_THEME_VCS_PROMPT_PREFIX="%{$fg_no_bold[yellow]%}" ZSH_THEME_VCS_PROMPT_SUFFIX="%{$reset_color%}" ZSH_THEME_VCS_PROMPT_SUFFIX_SPACING=")" -ZSH_THEME_VCS_PROMPT_CLEAN="%{$fg_no_bold[green]%}✔" -ZSH_THEME_VCS_PROMPT_DIRTY="%{$fg_no_bold[red]%}✘" -ZSH_THEME_VCS_PROMPT_AHEAD="%{$fg_no_bold[cyan]%}→" -ZSH_THEME_VCS_PROMPT_BEHIND="%{$fg_no_bold[blue]%}←" +ZSH_THEME_VCS_PROMPT_CLEAN=" %{$fg_no_bold[green]%}$clean" +ZSH_THEME_VCS_PROMPT_DIRTY=" %{$fg_no_bold[red]%}$dirty" +ZSH_THEME_VCS_PROMPT_AHEAD="%{$fg_no_bold[cyan]%}$ahead" +ZSH_THEME_VCS_PROMPT_BEHIND="%{$fg_no_bold[blue]%}$behind" + +unset clean dirty ahead behind function ax_vcs_prompt() { local func @@ -73,9 +84,25 @@ function ax_vcs_prompt() { ax_vcs_prompt_functions=() +# Prompt + +ZSH_THEME_PROMPT="$" +ZSH_THEME_PROMPT_ROOT="#" + +ZSH_THEME_PROMPT_PREFIX_SPACING="" +ZSH_THEME_PROMPT_PREFIX="" +ZSH_THEME_PROMPT_ROOT_PREFIX="" +ZSH_THEME_PROMPT_SUFFIX="" +ZSH_THEME_PROMPT_SUFFIX_SPACING="" + +function ax_prompt() { + local p + (( $UID == 0 )) \ + && p="${ZSH_THEME_PROMPT_ROOT_PREFIX}${ZSH_THEME_PROMPT_ROOT}" \ + || p="${ZSH_THEME_PROMPT_PREFIX}${ZSH_THEME_PROMPT}" + echo "${ZSH_THEME_PROMPT_PREFIX_SPACING}${p}${ZSH_THEME_PROMPT_SUFFIX}${ZSH_THEME_PROMPT_SUFFIX_SPACING}" +} + # Options and defaults setopt PROMPT_SUBST - -export PS1 PS2 PS3 PS4 -export RPS1 RPS2