Agnoster Theme for Bash
Switch branches/tags
Nothing to show
Clone or download
speedenator Merge pull request #8 from Kami-no/master
Latest commit 5c79b66 Oct 31, 2017
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore initial commit Jan 15, 2017 fixed virtualenv prompt Oct 5, 2017
agnoster-bash-sshot.png Added screenshot Jan 15, 2017
agnoster-bash.theme.bash ln for agnoster-bash.theme.bash for use in bash-it Jan 17, 2017
agnoster.bash PROMPT_COMMAND var error Oct 19, 2017


Agnoster Theme for Bash

agnoster's Theme - A Powerline-inspired theme for BASH

(Converted from ZSH theme by Kenny Root)

Updated & fixed by Hanish K H on oct-05-2017


Fixed the virtualenv prompt in bash


In order for this theme to render correctly, you will need a Powerline-patched font. I recommend:

git clone fonts
cd fonts

In addition, I recommend the Solarized theme and, if you're using it on Mac OS X, iTerm 2 over - it has significantly better color fidelity.


I recommend the following:

cd $HOME
mkdir -p .bash/themes/agnoster-bash
git clone .bash/themes/agnoster-bash

then add the following to your .bashrc:

export THEME=$HOME/.bash/themes/agnoster-bash/agnoster.bash
if [[ -f $THEME ]]; then
    export DEFAULT_USER=`whoami`
    source $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.

Generally speaking, this script has limited support for right prompts (ala powerlevel9k on zsh), but it's pretty problematic in Bash. The general pattern is to write out the right prompt, hit \r, then write the left. This is problematic for the following reasons:

  • Doesn't properly resize dynamically when you resize the terminal
  • Changes to the prompt (like clearing and re-typing, super common) deletes the prompt
  • Getting the right alignment via columns / tput cols is pretty problematic (and is a bug in this version)
  • Bash prompt escapes (like \h or \w) don't get interpolated

all in all, if you really, really want right-side prompts without a ton of work, recommend going to zsh for now. If you know how to fix this, would appreciate it!