Skip to content
Snippets Groups Projects
Commit ccbce1e7 authored by Vincent Le gallic's avatar Vincent Le gallic
Browse files

On ne hardcode plus les couleurs. Ça permet de les changer dans le .bashrc.local

parent 3014da5d
No related branches found
No related tags found
No related merge requests found
......@@ -56,12 +56,7 @@ fi
#~#
#~# get_vcs_info () {
#~# # Donne les infos sur le dépôt VCS courant.
#~# # priorité à git, puis darcs
#~# local LBRANCH LTYPE BRANCH TYPE DIR violet orange vert
#~# violet="\[\e[35m\]"
#~# orange="\[\e[33m\]"
#~# vert="\[\e[32m\]"
#~# nocolor="\[\e[0m\]"
#~# local LBRANCH LTYPE BRANCH TYPE DIR
#~# declare -a DIR
#~# declare -A TYPE
#~# declare -A BRANCH
......@@ -84,7 +79,7 @@ fi
#~# LBRANCH=$(eval "${BRANCH[$DIR]}")
#~# LTYPE="${TYPE[$DIR]}"
#~# if [ "$color_prompt" = yes ]; then
#~# VCS_info="${nocolor}${violet}(${nocolor}$LTYPE${violet})-${violet}[${vert}$LBRANCH${violet}]${nocolor}"
#~# VCS_info="${nocolor}${vcs_symbols_color}(${nocolor}$LTYPE${vcs_symbols_color})-${vcs_symbols_color}[${vcs_branch_color}$LBRANCH${vcs_symbols_color}]${nocolor}"
#~# else
#~# VCS_info="($LTYPE)-[$LBRANCH]"
#~# fi
......@@ -116,6 +111,38 @@ function cd {
# | Génération du prompt |
# +----------------------+
cyan='\[\e[1;36m\]'
violet='\[\e[1;35m\]'
violet_thin='\[\e[0;35m\]'
jaune='\[\e[1;33m\]'
rouge='\[\e[1;31m\]'
vert='\[\e[1;32m\]'
vert_thin='\[\e[0;32m\]'
bleu='\[\e[1;34m\]'
nocolor='\[\e[0m\]'
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# support de la couleur
color_prompt=yes
# Couleurs dans "user@host $"
username_color=$rouge
host_color=$bleu
symbols_color=$vert
# Couleur de la ligne séparatrice de prompt
line_color=$cyan
# Couleur du path actuel
pwd_color=$jaune
# Couleur de la date
date_color=$violet
# Couleur d'affichage de vcs_info
vcs_symbols_color=$violet_thin
vcs_type_color=
vcs_branch_color=$vert_thin
else
# pas de support de la couleur
color_prompt=no
fi
# Génération de la ligne de "-"
function gen_minus_line
......@@ -135,19 +162,11 @@ function prompt_command
{
# Attention aux hacks pour que la couleur (et sa taille)
# soient évaluées au moment de l'affichage du prompt
local pwd cyan violet jaune rouge vert bleu ERR DATE PROMPT DIR POST_DIR
local pwd ERR DATE PROMPT DIR POST_DIR
(( SAVE_COLUMNS == COLUMNS )) || gen_minus_line
#~# #dépend de la section VCS
#~# get_vcs_info
cyan='\[\e[1;36m\]'
violet='\[\e[1;35m\]'
jaune='\[\e[1;33m\]'
rouge='\[\e[1;31m\]'
vert='\[\e[1;32m\]'
bleu='\[\e[1;34m\]'
nocolor='\[\e[0m\]'
#~# #dépend de la section VCS
#~# get_vcs_info
pwd=${PWD/#$HOME/'~'}
if (( ${#pwd} + ${VCS_size} + 27 > COLUMNS )); then
......@@ -163,11 +182,14 @@ function prompt_command
POST_DIR='${MINUS_LINE:'${#pwd}+${VCS_size}+1'+${#?}}'
fi
if [ "$color_prompt" = yes ]; then
DIR="< ${jaune}"$DIR"${cyan} >"
ERR='[ \[\e[1;$((31+($?==0)*6))m\]$?'${cyan}' ]'$MINUS_CHAR
DATE="( ${violet}\D{%H:%M:%S}${cyan} )"
PROMPT="${rouge}\u${vert}@${bleu}\h ${vert}\$ ${nocolor}"
PS1=$TITLE${cyan}$MINUS_CHAR$DATE$MINUS_CHAR$DIR$MINUS_CHAR$VCS_info${cyan}$POST_DIR$ERR'\n'$PROMPT
DIR="< ${pwd_color}"$DIR"${line_color} >"
# On affiche le code de retour en "no color" si c'est 0, en rouge sinon
# Ceci n'est pas customizable à coup de variable,
# il faut changer $((31+($?==0)*6)) si vous y tenez vraiment et que vous comprenez ce que vous faites
ERR='[ \[\e[1;$((31+($?==0)*6))m\]$?'${line_color}' ]'$MINUS_CHAR
DATE="( ${date_color}\D{%H:%M:%S}${line_color} )"
PROMPT="${username_color}\u${symbols_color}@${host_color}\h ${symbols_color}\$ ${nocolor}"
PS1=$TITLE${line_color}$MINUS_CHAR$DATE$MINUS_CHAR$DIR$MINUS_CHAR$VCS_info${line_color}$POST_DIR$ERR'\n'$PROMPT
else
DIR="< "$DIR" >"
ERR='[ $? ]'$MINUS_CHAR
......@@ -177,14 +199,6 @@ function prompt_command
fi
}
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# support de la couleur
color_prompt=yes
else
# pas de support de la couleur
color_prompt=no
fi
# On change le titre de la fenêtre dynamiquement si on est sous X
if [[ $TERM = "xterm" ]]; then
TITLE='\[\e];\u@\h:\w\a\]'
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment