mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-12-22 12:21:58 +00:00
2e3731c5b1
When the current path is /home/user/.config/doublecmd the prompt now reads "/h/u/.c/doublecmd", not "/h/u/./doublecmd" as was the case. This matches what the Fish shell does. Enclose the Perl snippet in single quotes instead of double quotes.
29 lines
1 KiB
Bash
29 lines
1 KiB
Bash
# ZSH Theme emulating the Fish shell's default prompt.
|
|
|
|
_fishy_collapsed_wd() {
|
|
echo $(pwd | perl -pe '
|
|
BEGIN {
|
|
binmode STDIN, ":encoding(UTF-8)";
|
|
binmode STDOUT, ":encoding(UTF-8)";
|
|
}; s|^$HOME|~|g; s|/([^/.])[^/]*(?=/)|/$1|g; s|/\.([^/])[^/]*(?=/)|/.$1|g;
|
|
')
|
|
}
|
|
|
|
local user_color='green'; [ $UID -eq 0 ] && user_color='red'
|
|
PROMPT='%n@%m %{$fg[$user_color]%}$(_fishy_collapsed_wd)%{$reset_color%}%(!.#.>) '
|
|
PROMPT2='%{$fg[red]%}\ %{$reset_color%}'
|
|
|
|
local return_status="%{$fg_bold[red]%}%(?..%?)%{$reset_color%}"
|
|
RPROMPT='${return_status}$(git_prompt_info)$(git_prompt_status)%{$reset_color%}'
|
|
|
|
ZSH_THEME_GIT_PROMPT_PREFIX=" "
|
|
ZSH_THEME_GIT_PROMPT_SUFFIX=""
|
|
ZSH_THEME_GIT_PROMPT_DIRTY=""
|
|
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
|
|
|
ZSH_THEME_GIT_PROMPT_ADDED="%{$fg_bold[green]%}+"
|
|
ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg_bold[blue]%}!"
|
|
ZSH_THEME_GIT_PROMPT_DELETED="%{$fg_bold[red]%}-"
|
|
ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg_bold[magenta]%}>"
|
|
ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg_bold[yellow]%}#"
|
|
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg_bold[cyan]%}?"
|