Existe-t-il une commande qui peut être utilisée pour modifier le jeu de couleurs du terminal Mac OS X? J'aime l'idée de pouvoir changer les couleurs en fonction des scripts que j'exécute. Jusqu'à présent, je modifie simplement la couleur de mon invite bash avec PS1, ce qui est correct mais pas aussi visible que je le voudrais.
17
Terminal -> Preferences -> Settings
sauf que je veux le faire avec une commande. Je veux créer un script qui va ressembler à ceci:changeBackgroundTheme; ssh; changeBackgroundTheme
. Cela vous aidera à me rappeler dans quelles fenêtres se trouve actuellementssh
.Réponses:
Selon ce que vous voulez accomplir exactement , voici quelques idées dans AppleScript en utilisant vos styles de terminal. Celles-ci sont plus robustes que
tput
, car elles sont réinitialisées par des invites colorées. etc (au moins pour moi).Cela définit tous les onglets exécutant Python (aucun serveur SSH disponible pour les tests actuellement) sur Homebrew, les autres sur Ocean:
enregistrez-le en tant que script et exécutez-le à
osascript Name.scpt
chaque fois que vous souhaitez recolorer vos coques (bien sûr, vous pouvez en faire un script de shell ou quelque chose).Si vous souhaitez afficher tous les processus de longue durée différemment, utilisez la condition suivante:
if busy of tab t of window w is true then
Ou, vous pouvez définir le style d'un seul onglet, sélectionné manuellement:
Exécutez-le comme ceci:
-> Le troisième onglet de la fenêtre Terminal la plus en avant obtient le style Homebrew!
Si vous souhaitez modifier les fenêtres d'arrière-plan, remplacez "fenêtre avant" par une expression entre parenthèses comme juste après "tab". Si vous souhaitez toujours modifier "l'onglet courant" sélectionné, utilisez
selected tab
au lieu detab (item 1 of argv as number)
.Ajoutez ce qui suit à votre
.bash_profile
si la première solution est un travail trop manuel pour vous:PROMPT_COMMAND='osascript "/path/to/Name.scpt"'
Maintenant, il est exécuté avant chaque invite (seul problème: pas après avoir démarré quelque chose, c'est-à-dire
ssh
. Mais ce sujet n'est pas sur les astuces bash de fantaisie de toute façon. Ce n'est qu'un pointeur.)la source
Vos scripts peuvent utiliser la
tput
commande pour définir les couleurs de manière portable. Essayez le script suivant et vous verrez le terminal clair sur un fond cyan foncé avec du texte cyan clair.Vous pouvez voir plus d'informations à ce sujet
man 5 terminfo
dans la section intitulée "Gestion des couleurs".Vous pouvez faire les mêmes choses en faisant écho aux séquences d'échappement que votre terminal reconnaît directement. Ce sera plus rapide, mais cela peut ne pas fonctionner avec un autre programme de terminal. Beaucoup d'entre eux reconnaissent les séquences xterm et voici à quoi ressemblerait le script ci-dessus.
Il y a plus d'informations sur les séquences de contrôle xterm ici .
la source
Terminal -> Preferences -> Settings
?osascript
, mais je ne le connais pas.Vous pouvez utiliser applescript pour donner à chaque nouveau terminal un thème aléatoire.
Modifiez votre
.bash_profile
et ajoutez cette commandeosascript -e "tell application \"Terminal\" to set current settings of front window to some settings set"
Si vous obtenez le même terminal à thème aléatoire, vous pouvez toujours le frapper
⌘I
et le régler manuellement.Ceci est plus utile si vous obtenez un grand nombre de thèmes de terminaux différents. Il existe de nombreux sites pour cela, si vous regardez autour.
la source