diff --git a/.bashrc b/.bashrc
index 8648eca..9e719f7 100644
--- a/.bashrc
+++ b/.bashrc
@@ -165,7 +165,7 @@ HISTTIMEFORMAT='%F %T '
alias bepo="setxkbmap -layout fr -variant bepo -option"
# Super nice prompt
-source ~/.prompt.bash
+source ~/.liquidprompt.bash
# Added by autojump install.sh
#source /etc/profile.d/autojump.bash
diff --git a/prompt.bash b/prompt.bash
deleted file mode 100644
index 30bbef1..0000000
--- a/prompt.bash
+++ /dev/null
@@ -1,474 +0,0 @@
-#!/bin/bash
-
-# An intelligent and non intrusive prompt for bash
-
-# Licensed under the AGPL version 3
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-
-# 2012 (c) nojhan
-# 2012 (c) Aurelien Requiem #major rewrite and adaptation
-
-# Below are function for having a flexible dynamic prompt for power user:
-# - display the battery level (if necessary), with colormap (if any battery attached)
-# - if necessary, prints a counter for jobs that are attached to the current
-# term (e.g. xterm &) or that are sleeping (e.g. Ctrl-z)
-# - display the load average, colored with a colormap
-# - displays the colored login@hostname
-# - when root displays in red
-# - when user displays in green
-# - displays the current path in blue
-# - when user, print the colored git branch name (if in a git repository):
-# red = some changes are not commited, and yellow in parenthesis any unpushed commits (if any)
-# yellow = some commits are not pushed. Number of commits in parenthesis
-# green = no changes or commits
-
-# Check for recent enough version of bash.
-[ -z "$BASH_VERSION" -o -z "$PS1" ] && return;
-
-bash=${BASH_VERSION%.*}; bmajor=${bash%.*}; bminor=${bash#*.}
-if [ $bmajor -lt 3 ] || [ $bmajor -eq 3 -a $bminor -lt 2 ]; then
- unset bash bmajor bminor
- return
-fi
-unset bash bmajor bminor
-
-
-BLACK="\[$(tput setaf 0)\]"
-
-GRAY="\[$(tput bold ; tput setaf 0)\]"
-LIGHT_GREY="\[$(tput setaf 7)\]"
-WHITE="\[$(tput bold ; tput setaf 7)\]"
-
-RED="\[$(tput setaf 1)\]"
-LIGHT_RED="\[$(tput bold ; tput setaf 1)\]"
-WARN_RED="\[$(tput setaf 0 ; tput setab 1)\]"
-CRIT_RED="\[$(tput bold; tput setaf 7 ; tput setab 1)\]"
-
-GREEN="\[$(tput setaf 2)\]"
-LIGHT_GREEN="\[$(tput bold ; tput setaf 2)\]"
-
-YELLOW="\[$(tput setaf 3)\]"
-LIGHT_YELLOW="\[$(tput bold ; tput setaf 3)\]"
-
-BLUE="\[$(tput setaf 4)\]"
-LIGHT_BLUE="\[$(tput bold ; tput setaf 4)\]"
-
-PURPLE="\[$(tput setaf 5)\]"
-PINK="\[$(tput bold ; tput setaf 5)\]"
-
-CYAN="\[$(tput setaf 6)\]"
-LIGHT_CYAN="\[$(tput bold ; tput setaf 6)\]"
-
-NO_COL="\[$(tput sgr0)\]"
-
-
-__CPUNUM=$(grep ^processor /proc/cpuinfo | wc -l)
-
-
-#################
-# Where are we? #
-#################
-
-__connection()
-{
- THIS_TTY=tty`ps aux | grep $$ | grep bash | awk '{ print $7 }'`
- SESS_SRC=`who | grep $THIS_TTY | awk '{ print $6 }'`
-
- # Are we in an SSH connexion?
- SSH_FLAG=0
- SSH_IP=${SSH_CLIENT%% *}
- if [ $SSH_IP ] ; then
- SSH_FLAG=1
- fi
- SSH2_IP=`echo $SSH2_CLIENT | awk '{ print $1 }'`
- if [ $SSH2_IP ] ; then
- SSH_FLAG=1
- fi
-
- if [ $SSH_FLAG -eq 1 ] ; then
- CONN="ssh"
- elif [ -z $SESS_SRC ] ; then
- CONN="lcl"
- elif [ $SESS_SRC = "(:0.0)" -o $SESS_SRC = "" ] ; then
- CONN="lcl"
- else
- CONN="tel"
- fi
-
- echo -ne $CONN
-}
-
-# Put the hostname if not locally connected
-# color it in cyan within SSH, and a warning red if within telnet
-# else diplay the host without color
-__host_color()
-{
- conn=$(__connection)
-
- ret="${NO_COL}"
- if [ "$conn" == "lcl" ] ; then
- ret="${ret}" # no hostname if local
- elif [ "$conn" == "ssh" ] ; then
- ret="${ret}@${LIGHT_CYAN}\h"
- elif [ "$conn" == "tel" ] ; then
- ret="${ret}@${WARN_RED}\h"
- else
- ret="${ret}@\h"
- fi
-
- echo -ne "${ret}${NO_COL}"
-}
-
-################
-# Related jobs #
-################
-
-# Either attached running jobs (started with $ myjob &)
-# or attached stopped jobs (suspended with Ctrl-Z)
-__jobcount_color()
-{
- running=`jobs -r | wc -l | tr -d " "`
- stopped=`jobs -s | wc -l | tr -d " "`
-
- if [ $running != "0" -a $stopped != "0" ]
- then
- rep="${NO_COL}${YELLOW}${running}r${NO_COL}/${LIGHT_YELLOW}${stopped}s${NO_COL}"
- elif [ $running != "0" -a $stopped == "0" ]
- then
- rep="${NO_COL}${YELLOW}${running}r${NO_COL}"
- elif [ $running == "0" -a $stopped != "0" ]
- then
- rep="${NO_COL}${LIGHT_YELLOW}${stopped}s${NO_COL}"
- fi
- echo -ne "$rep"
-}
-
-# Display the return value of the last command, if different from zero
-__return_value()
-{
- if [ "$1" -ne "0" ]
- then
- echo -ne "$1"
- fi
-}
-
-
-######################
-# VCS branch display #
-######################
-
-# GIT #
-
-# Get the branch name of the current directory
-__git_branch()
-{
- if git rev-parse --git-dir >/dev/null 2>&1 && [ ! -z "`git branch`" ]; then
- echo -n "$(git branch 2>/dev/null | sed -n '/^\*/s/^\* //p;')"
- fi
-}
-
-# Set a color depending on the branch state:
-# - green if the repository is up to date
-# - yellow if there is some commits not pushed
-# - red if there is changes to commit
-__git_branch_color()
-{
- command -v git >/dev/null 2>&1 || return 1;
- branch=$(__git_branch)
- if [ ! -z "$branch" ] ; then
-
- git diff --quiet >/dev/null 2>&1
- GD=$?
- git diff --cached --quiet >/dev/null 2>&1
- GDC=$?
-
- has_commit=$(git rev-list --no-merges --count origin/${branch}..${branch} 2>/dev/null)
- if [ -z "$has_commit" ]; then
- has_commit=0
- fi
- if [ "$GD" -eq 1 -o "$GDC" -eq "1" ]; then
- if [ "$has_commit" -gt "0" ] ; then
- # changes to commit and commits to push
- ret="${RED}${branch}${NO_COL}(${YELLOW}$has_commit${NO_COL})"
- else
- ret="${RED}${branch}${NO_COL}" # changes to commit
- fi
- else
- if [ "$has_commit" -gt "0" ] ; then
- # some commit(s) to push
- ret="${YELLOW}${branch}${NO_COL}(${YELLOW}$has_commit${NO_COL})"
- else
- ret="${GREEN}${branch}${NO_COL}" # nothing to commit or push
- fi
- fi
- echo -ne "$ret"
- fi
-}
-
-
-# MERCURIAL #
-
-# Get the branch name of the current directory
-__hg_branch()
-{
- branch="$(hg branch 2>/dev/null)"
- if [ $? -eq 0 ] && [ ! -z "`hg branch`" ]; then
- echo -n "$(hg branch)"
- fi
-}
-
-# Set a color depending on the branch state:
-# - green if the repository is up to date
-# - red if there is changes to commit
-# - TODO: yellow if there is some commits not pushed
-__hg_branch_color()
-{
- command -v hg >/dev/null 2>&1 || return 1;
- branch=$(__hg_branch)
- if [ ! -z "$branch" ] ; then
- if [ $(hg status --quiet -n | wc -l | sed -e "s/ //g") = 0 ] ; then
- ret="${GREEN}${branch}${NO_COL}"
- else
- ret="${RED}${branch}${NO_COL}" # changes to commit
- fi
- echo -ne "$ret"
- fi
-}
-
-
-# SUBVERSION #
-
-# Get the branch name of the current directory
-# For the first level of the repository, gives the repository name
-__svn_branch()
-{
- if [ -d ".svn" ] ; then
- root=$(svn info --xml 2>/dev/null | grep "^" | sed "s/^.*\/\([[:alpha:]]*\)<\/root>$/\1/")
- branch=$(svn info --xml 2>/dev/null | grep "^" | sed "s/.*\/$root\/\([[:alpha:]]*\).*<\/url>$/\1/")
- if [[ "$branch" == ""* ]] ; then
- echo -n $root
- else
- echo -n $branch
- fi
- fi
-}
-
-# Set a color depending on the branch state:
-# - green if the repository is up to date
-# - red if there is changes to commit
-# Note that, due to subversion way of managing changes,
-# informations are only displayed for the CURRENT directory.
-__svn_branch_color()
-{
- command -v svn >/dev/null 2>&1 || return 1;
- branch=$(__svn_branch)
- if [ ! -z "$branch" ] ; then
- commits=$(svn status | grep -v "?" | wc -l)
- if [ $commits = 0 ] ; then
- ret="${GREEN}${branch}${NO_COL}"
- else
- ret="${RED}${branch}${NO_COL}(${YELLOW}$commits${NO_COL})" # changes to commit
- fi
- echo -ne "$ret"
- fi
-}
-
-
-##################
-# Battery status #
-##################
-
-# Get the battery status in percent
-# returns 1 if no battery support
-__battery()
-{
- command -v acpi >/dev/null 2>&1 || return 1;
- bat=`acpi --battery 2>/dev/null | sed "s/^Battery .*, \([0-9]*\)%.*$/\1/"`
- if [ "${bat}" == "" ] ; then
- return 1
- fi
- if [ ${bat} -lt 90 ] ; then
- echo -n "${bat}"
- return 0
- else
- return 1
- fi
-}
-
-# Compute a gradient of background/foreground colors depending on the battery status
-__battery_color()
-{
- bat=$(__battery)
- if [ "$?" = "1" ] ; then return; fi; # no battery support
-
- if [ "$bat" != "" ] ; then
- if [ ${bat} -gt 75 ]; then
- return; # nothing displayed above 75%
- fi
-
- ret="b${NO_COL}"
- if [ ${bat} -le 75 ] && [ ${bat} -gt 50 ] ; then
- ret="${ret}${LIGHT_GREEN}"
- elif [ ${bat} -le 40 ] && [ ${bat} -gt 20 ] ; then
- ret="${ret}${LIGHT_YELLOW}"
- elif [ ${bat} -le 20 ] && [ ${bat} -gt 10 ] ; then
- ret="${ret}${LIGHT_RED}"
- elif [ ${bat} -le 10 ] && ${bat} -gt 5 ] ; then
- ret="${ret}${WARN_RED}"
- else
- ret="${ret}${CRIT_RED}"
- fi
-
- echo -ne "${ret}${bat}%${NO_COL}"
- fi
-}
-
-
-###############
-# System load #
-###############
-
-# Get the load average
-__load()
-{
- load=$(awk '{print $1}' /proc/loadavg)
- echo -n "$load"
-}
-
-# Compute a gradient of background/forground colors depending on the battery status
-__load_color()
-{
- # Colour progression is important ...
- # bold gray -> bold green -> bold yellow -> bold red ->
- # black on red -> bold white on red
- #
- # Then we have to choose the values at which the colours switch, with
- # anything past yellow being pretty important.
-
- loadval=$(__load)
- load=$(echo $loadval | sed -E 's/(^0| .*|\.)//g;s/^0*//g' )
- if [ -z "$load" ]; then
- load=0
- fi
- let "load=$load/$__CPUNUM"
-
- if [ "$load" -ge "60" ]
- then
- ret="l${NO_COL}"
- if [ $load -lt 70 ] ; then
- ret="${ret}${LIGHT_GREY}"
- elif [ $load -ge 1 ] && [ $load -lt 80 ] ; then
- ret="${ret}${LIGHT_GREEN}"
- elif [ $load -ge 80 ] && [ $load -lt 95 ] ; then
- ret="${ret}${LIGHT_YELLOW}"
- elif [ $load -ge 95 ] && [ $load -lt 150 ] ; then
- ret="${ret}${LIGHT_RED}"
- elif [ $load -ge 150 ] && [ $load -lt 200 ] ; then
- ret="${ret}${WARN_RED}"
- else
- ret="${ret}${CRIT_RED}"
- fi
- ret="${ret}$load%${NO_COL}"
- echo -ne "${ret}"
- fi
-}
-
-
-##########
-# DESIGN #
-##########
-
-# Set the prompt mark to ± if VCS, # if root and else $
-__smart_mark()
-{
- if [ "$EUID" -ne "0" ]
- then
- if [ ! -z $(__git_branch) ] || [ ! -z $(__hg_branch) ] || [ ! -z $(__svn_branch) ]; then
- echo -ne "${WHITE}±${NO_COL}"
- else
- echo -ne "${WHITE}\\\$${NO_COL}"
- fi
- else
- echo -ne "${RED}#${NO_COL}"
- fi
-}
-
-# space right
-__sr()
-{
- if [ ! -z "$1" ] ; then
- echo -n "$1 "
- fi
-}
-
-# space left
-__sl()
-{
- if [ ! -z "$1" ] ; then
- echo -n " $1"
- fi
-}
-
-# space both
-__sb()
-{
- if [ ! -z "$1" ] ; then
- echo -n " $1 "
- fi
-}
-
-
-########################
-# Construct the prompt #
-########################
-
-__set_bash_prompt()
-{
- # as this get the last returned code, it should be called first
- __RET=$(__sl "`__return_value $?`")
-
- # left of main prompt: space at right
- __JOBS=$(__sr "`__jobcount_color`")
- __LOAD=$(__sr "`__load_color`")
- __BATT=$(__sr "`__battery_color`")
-
- # in main prompt: no space
- __HOST="`__host_color`"
-
- # right of main prompt: space at left
- __GIT=$(__sl "`__git_branch_color`")
- __HG=$(__sl "`__hg_branch_color`")
- __SVN=$(__sl "`__svn_branch_color`")
-
- # end of the prompt line: double spaces
- __MARK=$(__sb "`__smart_mark`")
-
- PS1="${__BATT}${__LOAD}${__JOBS}"
- if [ "$EUID" -ne "0" ]
- then
- PS1="${PS1}[${LIGHT_GREY}\u${NO_COL}${__HOST}:${WHITE}\w${NO_COL}]"
- PS1="${PS1}${__GIT}${__HG}${__SVN}"
- else
- PS1="${PS1}[${LIGHT_YELLOW}\u${__HOST}${NO_COL}:${YELLOW}\w${NO_COL}]"
- fi
- PS1="${PS1}${PURPLE}${__RET}${NO_COL}${__MARK}"
-
- # Glue the bash prompt always go to the first column.
- # Avoid glitches after interrupting a command with Ctrl-C
- PS1="\[\033[G\]${PS1}${NO_COL}"
-}
-
-PROMPT_COMMAND=__set_bash_prompt
-