Last active
January 10, 2026 04:15
-
-
Save elliaster/06379fbd438d39a64cade7581ca9727c to your computer and use it in GitHub Desktop.
essembeh.zsh-theme
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # My custom theme: | |
| # - single line | |
| # - quite simple by default: user@host:$PWD | |
| # - green for local shell as non root | |
| # - red for ssh shell as non root | |
| # - magenta for root sessions | |
| # - prefix with remote address for ssh shells | |
| # - prefix to detect docker containers or chroot | |
| # - git plugin to display current branch and status | |
| # git plugin | |
| ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[cyan]%}(" | |
| ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}" | |
| # by default, use green for user@host and no prefix | |
| local ZSH_ESSEMBEH_COLOR="green" | |
| local ZSH_ESSEMBEH_PREFIX="" | |
| if [[ -n "$SSH_CONNECTION" ]]; then | |
| # display the source address if connected via ssh | |
| ZSH_ESSEMBEH_PREFIX="%{$fg[yellow]%}[$(echo $SSH_CONNECTION | awk '{print $3}')]%{$reset_color%} " | |
| # use red color to highlight a remote connection | |
| ZSH_ESSEMBEH_COLOR="red" | |
| elif [[ -r /etc/debian_chroot ]]; then | |
| # prefix prompt in case of chroot | |
| ZSH_ESSEMBEH_PREFIX="%{$fg[yellow]%}[chroot:$(cat /etc/debian_chroot)]%{$reset_color%} " | |
| elif [[ -r /.dockerenv ]]; then | |
| # also prefix prompt inside a docker container | |
| ZSH_ESSEMBEH_PREFIX="%{$fg[yellow]%}[docker]%{$reset_color%} " | |
| fi | |
| if [[ $UID = 0 ]]; then | |
| # always use magenta for root sessions, even in ssh | |
| ZSH_ESSEMBEH_COLOR="magenta" | |
| fi | |
| PROMPT='${ZSH_ESSEMBEH_PREFIX}%{$fg[$ZSH_ESSEMBEH_COLOR]%}%n@%M%{$reset_color%}:%{%B$fg[yellow]%}%~%{$reset_color%b%} $(git_prompt_info)%(!.#.$) ' | |
| RPROMPT="%(?..%{$fg[red]%}%?%{$reset_color%})" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment