• Stars
    star
    218
  • Rank 181,805 (Top 4 %)
  • Language
    Shell
  • License
    MIT License
  • Created almost 8 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Agnoster Theme for Bash

agnoster-bash

Agnoster Theme for Bash

agnoster's Theme - https://gist.github.com/3712874 A Powerline-inspired theme for BASH

(Converted from ZSH theme by Kenny Root) https://gist.github.com/kruton/8345450

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

UPDATE

Fixed the virtualenv prompt in bash

README

In order for this theme to render correctly, you will need a Powerline-patched font. I recommend: https://github.com/powerline/fonts.git

git clone https://github.com/powerline/fonts.git fonts
cd fonts
sh install.sh

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

Install:

I recommend the following:

cd $HOME
mkdir -p .bash/themes/agnoster-bash
git clone https://github.com/speedenator/agnoster-bash.git .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
fi

Goals

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!

ScreenShot