EyeRelax-zsh-theme
December 9, 2023 · View on GitHub
Overview
This is an oh-my-zsh theme with informative git status, venv/Anaconda environment info and command execution time.

Show time cost when it run longer than 1 second ( You can change this threshold by edit theme script)

Features
You can see the followings at once:
- Real time
- Login user
- Working directory
- Venv/Anaconda's environment name
- Rich git status
After command execution, you can see also:
- Command execution time
- Success/Error hint
Credits
This project is base on "simplerich-zsh-theme" and borrow code from "ohmyzsh-theme-passion", also some modification accordding to my own preferences.
Git Status Symbols
The git status is updated immediately after a command is finished or every 10 seconds after the terminal is started.
| Symbol | Meaning |
|---|---|
[main] | The repository is clean. |
[main +n] | There are n staged files. |
[main ●n] | There are n changed but unstaged files. |
[main …n] | There are n untracked files. |
[main xn] | There are n conflicting files. |
[main n|m] | The local branch is m commits ahead and n commits behind the remote branch. |
[main *] | This will be displayed instead of the informative symbols when python cannot be executed and the repository not clean. |
Install
- Clone the repository & copy the zsh-theme file.
# cd path/to/where_u_want_to_clone_the_repo
git clone --recursive https://gitee.com/cloud-wang/EyeRelax-zsh-theme
cp ./EyeRelax-zsh-theme/EyeRelax.zsh-theme ~/.oh-my-zsh/themes/
- Edit ~/.zshrc.
# file:~/.zshrc
# Find the line that reads ZSH_THEME="..." and replace it with the followings.
ZSH_THEME="EyeRelax"
source path/to/where_u_want_to_clone_the_repo/EyeRelax-zsh-theme/zsh-git-prompt/zshrc.sh
Attention
- These must be BEFORE the line
source $ZSH/oh-my-zsh.shin~/.zshrc. - Change the path of
source .../zsh-git-prompt/zshrc.shaccording to your environment. - If you comment out
source .../zsh-git-prompt/zshrc.shor you cannot usepythoncommand, you can use a eye_relax git status like the following:

- If you use venv, remove the original display of the environment name.
echo "export VIRTUAL_ENV_DISABLE_PROMPT=1" >> ~/.zshrc
Or if you use Anaconda, run this:
conda config --set changeps1 False
- Load ~/.zshrc.
source ~/.zshrc
See also Overriding and adding themes and zsh-git-prompt.
Trouble Shooting
On macOS, Command Not Found: gdate
- EyeRelax.zsh-theme depends on cmd
gdateto get current time in milliseconds. getgdateon macOS by runningbrew install coreutilsthensource ~/.zshrc. - See also #12.
On Linux, Command Not Found: bc
- EyeRelax.zsh-theme depends on cmd
bcto calculate the command running time cost. get bc on Linux thensource ~/.zshrc. - See also #13.
On Centos 7, Shell Exit
- It may be caused by set timer to zsh prompt.
- See also #4.
Extra Preferences
Zsh Plugins
iTerm2 Preferences
Color
- iTerm2: Settings -> Profiles -> Colors -> Color Presets -> Import
./EyeRelax.itermcolors
- Alternate terminal: Try Alternate terminal installation and configuration.
Status Bar
- iTerm2: Settings -> Appearance && settings -> Profiles -> Session -> Configure Status Bar

Font
- Install JetBrains Mono.
- iTerm2: Settings -> Appearance && settings -> Profiles -> Text -> Font
