eriner

March 6, 2026 · View on GitHub

A fork of the Powerline-inspired agnoster theme.

The aim of this theme is to only show you relevant information. Like most prompts, it will only show git information when in a git working directory. However, it goes a step further: everything from the current user and hostname to whether the last call exited with an error to whether background jobs are running in this shell will all be displayed automatically when appropriate.

What does it show?

  • Status segment:
    • when there was an error.
    • when you're root.
    • when there are background jobs.
    • r when you're in a ranger spawned shell.
    • Python venv indicator.
    • username@hostname when in an SSH session.
  • Working directory segment.
  • Git segment (background color varies if working tree is clean or dirty):
    • Current branch name, or commit short hash when in 'detached HEAD' state.
    • Git action, when there's an operation in progress.
    • ± when in a dirty working tree.

Settings

The background color for each segment can be customized with an environment variable. If the variable is not defined, the respective default value is used.

VariableDescriptionDefault value
STATUS_COLORStatus segment colorblack
PWD_COLORWorking directory segment colorcyan
CLEAN_COLORClean git working tree segment colorgreen
DIRTY_COLORDirty git working tree segment coloryellow

Advanced settings

You can customize how the current working directory is shown with the prompt-pwd module settings.

The git indicators can be customized by changing the following git-info module context formats:

Context nameDescriptionDefault format
branchBranch name %b
commitCommit short hash➦ %c
actionSpecial action name (%s)
dirtyDirty state ±

Use the following command to override a git-info context format:

zstyle ':zim:git-info:<context_name>' format '<new_format>'

For detailed information about these and other git-info settings, check the git-info documentation.

These advanced settings must be defined at the bottom of your ~/.zshrc, after the modules are initialized with source ${ZIM_HOME}/init.zsh, in order to override the theme defaults.

Requirements

In order for this theme to render correctly, a font with Powerline symbols is required. A simple way to install a font with Powerline symbols is to follow the instructions here.

Requires Zim Framework's prompt-pwd module to show the current working directory, and git-info to show git information.