Couleurs iTerm pour l'invite, la commande et la sortie

23

En ce moment, mon iTerm2 ressemble à ceci ...

entrez la description de l'image ici

Tout est de la même couleur et difficile à lire. Puis-je créer des couleurs différentes pour l'invite, la commande et la sortie?

entrez la description de l'image ici

jeremyjjbrown
la source

Réponses:

16

Il y a une description assez exhaustive de l'édition de l'invite bash ici, il peut y avoir des choses spécifiques à Linux, mais la plupart sont des choses bash génériques.

Mais juste pour commencer, je recommande ce générateur de profil bash

C'est assez simple, j'ai donc depuis appris plus et mon invite ressemble à: l'invite bash de dwightk

en utilisant:

[[ -s "/Users/dwightk/.rvm/scripts/rvm" ]] && source "/Users/dwightk/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
export PS1="🍔  \[\033[01;35m\]\u@\h:\[\033[01;34m\]\$(parse_git_branch) \[\033[01;32m\]\w \[\033[01;34m\]\n>\[\e[0m\]"

ce qui est assez utile pour traiter avec git. Tout ce qui précède export PS1=est ce qui permet à la branche git d'apparaître.

Le 🍔 est de ma première incursion dans l'édition de l'invite bash après avoir lu ce billet de blog.

dwightk
la source
J'espère que quelqu'un avec une meilleure compréhension de l'édition réelle de l'invite pourra publier une réponse plus convaincante.
dwightk
🍔 <- Ce caractère est-il destiné?
jeremyjjbrown
Ouais, c'est un reste de ma première expédition dans l'édition de l'invite bash après avoir lu: notes.torrez.org/2013/04/put-a-burger-in-your-shell.html J'ai bien aimé, donc ça est resté.
dwightk
1
Cette fonction git est vraiment sympa. Économisera une branche git -a cmd.
jeremyjjbrown
1
la sortie git colorée est bien aussi. thomashunter.name/blog/…
jeremyjjbrown
9

AFAIK il n'y a aucun moyen UNIXy de colorer autre chose que l'invite.

Mais comme vous avez demandé une solution iTerm2, vous avez de la chance! Utilisez la fonction Déclencheurs pour colorer le texte correspondant à l'expression rationnelle.

Par exemple, si vos invites ressemblent à ceci:

.. puis ajoutez dans iTerm -> Préférences -> Profils -> Avancé -> Déclencheurs, [Modifier] un déclencheur comme celui-ci:

..qui correspondra à la partie commande de chaque ligne, qui commencera à ressembler à ceci:

Voilà - vous avez différentes couleurs pour l'invite, la commande et la sortie! :)

Greg Dubicki
la source
C'est plus simple pour la plupart des gens avec qui j'ai parié. Mais puisque l'autre fonctionnera dans n'importe quel terme, même à distance et qu'il colorera également l'invite git, je vais le garder comme réponse acceptée.
jeremyjjbrown
Quelle police utilisez-vous?
Towry
@towry: Consolas
Greg Dubicki
Vous pourriez très facilement mettre quelque chose comme \e[95mà la fin de votre var PS1 et cela le ferait
Samy Bencherif
Merci @SamyBencherif, mais cela colorera également la sortie avec la même couleur que la commande, ce qui n'était pas ce que OP demandait.
Greg Dubicki
1

La solution iTerm fonctionne mais il semble y avoir un léger retard dans la coloration. Si l'on arrête de taper pendant une seconde, la ligne entière est colorée comme prévu.

George Smith
la source