My BASH prompt

I have my own bash prompt. To use it, first, copy this into your .bashrc:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function ps1lr {
    if [ $1 == 0 ]; then
        echo -ne "\033[42m\033[01;30m"
    else
        echo -ne "\033[41m\033[01;34m"
    fi
    length-extra-prepend $1 3
}

function ps1sp {
    pwdw=$(($COLUMNS-20))
    if (( $pwdw < 40 )); then
        pwdw=40
    fi
    length-too-much-shorten "$(pwd | sed s%$HOME%~%)" $pwdw
}

#PROMPT_COMMAND=""
PS1='\[\033[00m\]$(ps1lr $?)\[\033[45m\] \[\033[44m\]\[\033[01;37m\]\
$(date +%H:%M)\[\033[45m\] \[\033[46m\]\[\033[01;33m\]\
$(ps1sp)\[\033[00m\]\n\[\033[45m\]\[\033[01;33m\]\u\[\033[01;32m\]@\
\[\033[01;36m\]\h\[\033[43m\]\[\033[01;30m\]:\[\033[40m\]\
\[\033[01;33m\]\$\[\033[00m\] '

Second, download bash-prompt-extras.tar.gz and put the included programs somewhere in $PATH.

Title:My BASH prompt
Modified:Wed, 10 Aug 2011 23:35:57 +0200
Created:Mon, 01 Aug 2011 22:39:41 +0200
Revision:1 (local), 23 (global)
Summary:What my prompt does and what it looks like.
License:Creative Commons Attribution-ShareAlike 3.0 Unported (or any later version)

View source