Mes passions, le boulots, mes coups de gueule...




OSX : Modifier le prompt du Terminal

Catégories : Geek, Informatique, Mac · par 25 Juin 2014

Terminal-01

Par défaut, l’affichage du prompt dans le Terminal d’OS X est un peu tristounet. Le texte est affiché en blanc sur fond noir un peu transparent, ce qui n’est pas très commode et ne simplifie pas la lisibilité à l’écran.

Terminal-03Dans un premier temps, il est possible de modifier son interface en faisant un clic droit sur la fenêtre et en sélectionnant « Afficher l’inspecteur » dans le menu déroulant.

Dans les préférences du Terminal, il est possible de configurer différents profils :

Terminal-04

Mais la marge de manœuvre est relativement limitée. Il est possible de déterminer la police et quelques couleurs, mais rien de plus.

Pour nous permettre de configurer plus finement l’affichage du prompt et plus généralement celui du contenu du terminal, nous allons éditer le fichier ~/.bash_profile.

On ouvre le Terminal :

Terminal-09

Puis, on y tape la ligne suivante dans le Terminal lui-même :

$ nano ~/.bash_profile

NB.: La ~ s’obtient en appuyant simultanément sur les touches <Alt> et <N>.

Normalement, un fichier vide devrait s’ouvrir. Dans celui-ci, je propose d’ajouter :

export PS1="\u: \w $ "

On enregistre avec <Ctrl> + <O> et puis <Pomme> + <T> pour ouvrir un nouvel onglet qui devrait prendre en compte les modifications apportées.

Ceci aura pour effet de changer le contenu du prompt. Les couleurs resteront identiques.

On aura :

Didier: ~ $

Voici une liste paramètres pour modifier le prompt :

\d – Date courante
\t – Heure courante
\h – Nom de l'hôte
\# – Numéro de la commande
\u – Nom d'utilisateur
\W – Répertoire de travail courant (exemple: Desktop)
\w – Répertoire de travail courant, chemin complet (exemple: /Users/Admin/Desktop)

Maintenant qu’on a modifié le prompt, on va lui donner des couleurs. Je propose de modifier la ligne insérée « export PS1="\u: \w $ " » par :

export PS1="\[\033[1;32m\]\u: \[\033[1;34m\]\w $ \[\033[0m\]"

Les paramètres entre [ ] insèrent une couleur.

On aura la même chose que précédemment, mais en couleur :

Didier: ~ $

Voici la liste des couleurs :

Gris    : \[\033[0;30m\]
Rouge   : \[\033[0;31m\]
Vert    : \[\033[0;32m\]
Jaune   : \[\033[0;33m\]
Bleu    : \[\033[0;34m\]
Fuchsia : \[\033[0;35m\]
Cyan    : \[\033[0;36m\]
Blanc   : \[\033[0;37m\]

Reset   : \[\033[0m\]

Pour mettre un texte en gras, on va modifier le « 0 » en « 1 » :

Vert      : \[\033[0;32m\]
Vert gras : \[\033[1;32m\]

Enfin, il est possible de configurer la couleur de la totalité de l’apparence du Terminal avec ces commandes :

Par exemple :

Thème sombre :

export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced

Thème clair :

export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad

Les lettres correspondent à :

a = noir       d = marron      g = cyan
b = rouge      e = bleu        h = gris clair
c = vert       f = magenta     x = par défaut

Où chaque couleur sera représentée par 2 lettres. La première sera la couleur du texte et la seconde, la couleur de fond. Les majuscules serviront à mettre le texte en gras.

Par exemple, du texte vert-gras sur fond rouge s’écrira : Cb

On les disposera dans l’ordre suivant :

DIR  SYM_LINK  SOCKET  PIPE  EXE  BLOCK_SP  CHAR_SP  EXE_SUID  EXE_GUID  DIR_STICKY  DIR_WO_STICKY

Au total, on devra avoir 11 couples puisqu’il y a 11 paramètres à définir.

DIR           : Répertoire
SYM_LINK      : Lien symbolique
SOCKET        : Socket
PIPE          : Pipe
EXE           : Exécutable
BLOCK_SP      : Bloc spécial
CHAR_SP       : Caractère spécial
EXE_SUID      : Exécutable avec le bit setuid
EXE_GUID      : Exécutable avec le bit setgid
DIR_STICKY    : Répertoire accessible en écriture pour les autres, avec le bit sticky (bit collant)
DIR_WO_STICKY : Répertoire accessible en écriture pour les autres, sans le bit sticky (bit collant)

Pour d’autres infos très complètes sur la personnalisation du fichier ~/.bash_profile, je vous propose de visiter ce site :

http://natelandau.com/my-mac-osx-bash_profile/

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.