0 votes

MacOS Terminal zsh - ne peut pas utiliser ansi

Mon .bash_profile configure mon invite comme suit

parse_git_branch() {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}

export PS1="\u@\h \W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "

Cependant, le résultat est que mon invite ressemble à ceci :

\u@\h \W\[\033[32m\]$(parse_git_branch)\[\033[00m\] $  

Juste pour obtenir le nom d'utilisateur, j'ai essayé ce qui suit pour que l'ANSI puisse être utilisé dans zsh

PROMPT=$'%{\u%}'

mais l'invite est devenue vide, comme si \u a été ignorée.

Comment l'ANSI pourrait-il être utilisé comme d'habitude dans zsh ?

2voto

Douglas Points 10417

Zsh offre un moyen très simple d'ajouter de la couleur à votre invite ; vous n'avez pas besoin de codes Escape.

PROMPT='%F{blue}%n%f %#'
  • %F = Fixe la couleur d'avant-plan définie entre accolades {}
  • %f = rétablit la couleur d'avant-plan par défaut
  • %n = nom d'utilisateur

Vous pouvez même accéder à la Palette de 256 couleurs pour vos couleurs en spécifiant le nombre entre les accolades - %F{146} pour "bleu acier clair"

Pour une liste détaillée de tous les codes et de leur fonction, voir le site web de la Commission européenne. Documentation officielle Zsh - Chapitre 13 Effets visuels .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X