Exemple de configuration du shell zsh, un prompt sur deux lignes :
Le code à placer à la fin de votre fichiers .zshrc :
PROMPT=$'%{\e[1;36;40m%}╭─ %n@%m %~ ─ %h
╰─ %# 'donnera quelque chose du genre :
╰─ %
Les variables, séquences d’échappement
- %n : nom utilisateur
- %m : nom de la machine (jusqu’au premier point)
- %h : numéro historique
- %l : terminal courant
- %T : heure système (HH:MM)
Les couleurs
A composer dans le style : %{\e[TYPE;FGC;BGCm%}
où :
- type (TYPE) peut être :
- 00 : normal
- 01 : gras
- 04 : souligné
- 05 : clignotant
- 07 : inversé caractères/fond
- 08 : invisible
- Couleur des caractères (FGC) :
- 30 : noir
- 31 : rouge
- 32 : vert
- 33 : jaune
- 34 : bleu
- 35 : magenta
- 36 : cyan
- 37 : blanc
- Couleur du fond (BGC)
- 40 : noir
- 41 : rouge
- 42 : vert
- 43 : marron
- 44 : bleu
- 45 : magenta
- 46 : cyan
- 47 : gris
Exemples :
-
%{\e[0;33;44m%}Caractère normal, jaune sur fond bleu -
%{\e[0;32m%}Caractère gras, vert
Il est possible d’utiliser les variables de colors. L’extrait du .zhrc ressemblera à cela :
autoload -U colors && colors
PROMPT="%{$bg[black]%}%{$fg[red]%}╭─ %{$fg[blue]%} %n %{$fg[red]%}@%{$fg[cyan]%}%m%{$fg[red]%} - %{$fg[red]%}%~ %{$reset_color%}
%{$fg[red]%}╰─ [%h%1(j.%%%j.)%0(?..:%?)] %# %{$reset_color%}"Les thèmes de prompt
Possibilité de choisir un prompt parmi une liste de thèmes proposées.
Ajoutez en fin de .zshrc :
utoload -U promptinit && promptinit
Ouvrez un nouveau terminal puis entrez :
prompt -l
La liste des thèmes disponibles apparaît. Choisissez en un, par exemple adam2 qui est un bel exemple de prompt sur 2 lignes. Entrez la commande :
prompt adam2
et admirez.
Liens complémentaires
- La FAQ ZSH
- Le Wiki ZSH et notamment le chapitre consacré au prompt.
- un exemple de personnalisation du prompt, par Tassilo Horn qui a inspiré l’écriture de ce billet
- Documentation zsh sur generation-linux.fr