Définition de codes de colors dans rxvt-unicode

En utilisant certains des outils node.js comme urxvt dans mon terminal urxvt , j'ai quelques problèmes avec la sortie colorée. Une partie du text qui utilise le code couleur 90 comme vous pouvez le voir ici disparaîtra dans le terminal.

tput colors sortie des tput colors est: 256

Et en utilisant cette command:

 (x=`tput op` y=`printf %76s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}(x=`tput op` y=`printf %76s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}$x;done)$x;done) 

Il semble que j'ai toutes les colors disponibles.

Mais quand j'essaie de faire écho à quelque chose comme ceci:

 echo '\e[0;90m shahin \e[m ' 

Il n'y aura qu'une ligne vide imprimée! Y at-il de toute façon pour définir ce code de couleur manuellement?

Merci à tous!

Mise à jour: Je pense que certaines images vont décrire la situation beaucoup mieux. Voici une image de la command echo dans le terminal finalterm :

entrer la description de l'image ici

Et ici, je mets le résultat de urxvt :

entrer la description de l'image ici

Et voici le résultat de ce script perl qui s'exécute sur le même urxvt :

entrer la description de l'image ici

Le problème n'est pas que la couleur n'est pas visible,
il est identique à l'arrière-plan du terminal, gris foncé par exemple.

Il y a une couleur qui est essentiellement transparente, montrant la couleur par défaut du terminal en dessous. Mais ce n'est pas parce que cette couleur est utilisée – il peut être juste que la couleur "noire" utilisée pour le fond soit en fait le même gris foncé que celui utilisé pour le premier plan.

Si possible, ouvrez un teminal qui permet d'expérimenter facilement les réglages des colors avec un GUI, comme konsole ou gnome-terminal , et montre clairement ce que vous pouvez changer. Ou juste expérimenter dans rxvt-unicode si c'est approprié.

Je pense que vous aurez au less un indice de ce qui ne va pas, sinon une solution.

Si ce n'est pas résolu, présentez vos nouvelles informations ici, et travaillons les détails.


Sidenote:

Je n'ai pas eu votre longue command pour travailler par copyr-coller, mais il peut être similaire à
colortest-256

du package colortest sur Ubuntu etc.

Essayez colortest-16 aussi, cela peut vous aider à expliquer votre problème.
Sinon, publiez une capture d'écran!

Vous utilisez la mauvaise séquence d'échappement.

C'est proche (commence par escape [ , finit par m ], mais les mauvais parameters.

Il y a au less trois séquences d'échappement SGR (select graphic rendition) qui sont utilisées pour imprimer des colors dans des terminaux xterm et similaires:

  • ANSI (colors 0-7), qui utilisent les parameters 30-37 (premier plan) et 40-47 (arrière-plan)
  • aixterm (colors 8-15), qui utilisent les parameters 90-97 (premier plan) et 100-107 (arrière-plan)
  • 256 colors (colors 0-255), qui utilisent les codes 38;5; paramètre (premier plan) et 48;5; paramètre (arrière-plan)

Vous avez donc sélectionné la couleur de premier plan aixterm 8. Par convention, celles-ci sont affichées comme des versions plus shinyes des colors 0-7. La couleur ANSI 0 est noire . Le noir lumineux est … selon le terminal, il pourrait être gris. Ça pourrait être juste noir.

Peut-être que vous vouliez dire quelque chose comme ceci:

 echo '\e[0;38;5;90m shahin \e[m ' 

bien que ce soit portable:

 printf '\033[0;38;5;90m shahin \033[m \n' 

Pour en savoir plus:

  • Puis-je définir une couleur par son numéro?