-if [[ $(uname) == Linux && ( $(locale charmap) == UTF-8 && $TERM != screen ) ]]; then
- MINUS_CHAR=─
- gen_minus_line
- date=$(/bin/date +"%R, %A %d %B %Y")
- redate=${date//é/e}
- redate=${redate//û/u}
- if [ "$color_prompt" = yes ]; then
- echo -e "${line_color}┬─${redate//?/─}─┬${MINUS_LINE:${#date}-18}\n\
-│ ${announce_date_color}$date ${line_color}│\n\
-└─${redate//?/─}─┘\e[0m\n"
+function welcome_message ()
+{
+ # Si on supporte l'utf-8 et qu'on n'est pas dans un screen,
+ # on affiche un joli cadre avec la date.
+ # On utilise aussi un caractère plus sympa pour faire les lignes de tirets
+ if [[ $(uname) == Linux && ( $(locale charmap) == UTF-8 && $TERM != screen ) ]]; then
+ MINUS_CHAR=─
+ gen_minus_line
+ date=$(/bin/date +"%R, %A %d %B %Y")
+ # ${redate} sert à connaître la taille de la chaine $date,
+ # mais sans se planter sur le nombre d'octet/nombre de caractères
+ redate=${date//é/e}
+ redate=${redate//û/u}
+ if [ "$color_prompt" = yes ]; then
+ echo -e "${line_color}┬─${redate//?/─}─┬${MINUS_LINE:${#date}-19}\n│ ${announce_date_color}$date ${line_color}│\n└─${redate//?/─}─┘\e[0m\n"
+ else
+ echo -e "┬─${redate//?/─}──┬${MINUS_LINE:${#date}-18}\n│ $date │\n└─${redate//?/─}──┘\n"
+ fi
+ unset date
+ # Sinon, on se contente d'une ligne de tirets