#1 Le 05/08/2012, à 18:12
- Ninored
Une création pour de la couleur dans les programes terminales
De la couleur
Bonjour, après avoir cherché sur internet comment mettre de la couleurs dans mes programmes console j'ai fini par créer un programme (Avec mon langage favori le c++ ).
Il affiche les possibilité de couleur de la console linux.
Un screen des version disponible:
Plus grand
Plus grand
Ces versions son disponibles:
1.0: [url=http://[Merci de relire les règles]/P7BJo9]Ici[/url]
2.0: [url=http://[Merci de relire les règles]/OXl8zU]Ici[/url]
(Si il ne marche pas essayez de le rendre exécutable avec la commande "chmod 111")
Comment lire le tableau:
La colonne de gauche montre le fond et type de texte.
Le Fond est entre 40-47(Normal) 100-107(Brillant)
Le type de texte est 1(Gras) 4(Sous-tiret ) 7(Inverser)Celle du haut montre la couleur du texte.
La couleur est entre 30-37(Normal) 90-97(Brillant)Pour l'utiliser dans du C++ ou C:
Pour l'incorporer rien de plus simple un:
std::cout << "\033[XX;XX;XXm";
ou
printf("\033[XX;XX;XXm");
Et aussi avec des variables:
std::cout << "\033[" << XX << ";" << XX << ";" << XX "m";
ou
printf("\033[%s;%s;%sm", XX, XX, XX);
XX correspond a votre choix les choix peuvent se combiner mais se séparent avec le ";"
Vous pouvez mettre autant de paramètre possible mais cohérent. (pas deux fond quoi ^^)
On peut aussi mettre seulement un Paramètre.
Pour remettre le console à sa couleur d'origine c'est "00" :
"\033[00m"
Pour effacer tout le console:
"\033[H\033[2J"
Pour retrouver les séquences d'échappement :
"ESC = \033"
http://manpagesfr.free.fr/man/man4/console_codes.4.html
Source:
http://linux-sxs.org/housekeeping/lscolors.html
http://www.siteduzero.com/tutoriel-3-35 … linux.html
J'aurais besoin d'aide pour rendre ce programme comme commande linux avec des paramètres comme "-b" pour afficher les background.
Dernière modification par Ninored (Le 09/08/2012, à 16:43)
Hors ligne
#2 Le 05/08/2012, à 18:39
- ludovic889
Re : Une création pour de la couleur dans les programes terminales
bnjour
c'est marrant mais depuis vendredi je m'intéresse aux mêmes questions mais plutôt en python
mais je ne comprends ce que vous voulez faire : colorer les sorties de vos scripts bash ??
si c'est ça, pourquoi coder en c/c++ ??
car pour cela, il suffit de faire un
echo -e '<votre_séquence_d'échappement_issue_du_pense-bête>blabla<retour_à_la_normale>'
mais pas très pratique tout ça !
Pour coloriser vos scripts en bash plus facilement, on peut au choix
utiliser le script color (voir ici)
utiliser des variables prédéfinies dans son bashrc (comme suggéré ici) et écrire des commandes du type echo -e "${txtblu}test"
et certainement plein d'autres méthodes
en tout cas, ce sont des pistes à creuser
Modification
j'allais oublier : sympa votre pense-bête !
Dernière modification par ludovic889 (Le 05/08/2012, à 18:50)
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne
#3 Le 05/08/2012, à 18:57
- Ninored
Re : Une création pour de la couleur dans les programes terminales
Pourquoi coder en c/c++ ( Le programme est entièrement c++) tout simplement par ce que c'est le langage que je connais le mieux.
Je ne veut pas colorer mes sortit bash je sais le faire je mais juste mon programme a disposition des autres pour les aider a le faire.
Comme sa pas besoin de cherché trois plombe juste on voie le résulta direct on choisie la couleur et le tour est jouer.
Et je voudrais rendre ce programme comme commande linux pour qu'il soit accessible a tout moment sans avoir a télécharger le script
Dernière modification par Ninored (Le 05/08/2012, à 19:00)
Hors ligne
#4 Le 05/08/2012, à 19:14
- ludovic889
Re : Une création pour de la couleur dans les programes terminales
ah pardon, j'avais pas bien compris !
en fait, tu veux juste imprimer ton pense-bête !
d'accord !!
concernant ton script, il faut faire attention à un truc : tout le monde n'a pas la même largueur de console que toi et du coup, ton joli tableau est tout décalé !!!
je ne sais pas comment régler ça
sinon, tu peux encore plus t'amuser avec 256 couleurs
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne
#5 Le 07/08/2012, à 15:47
- Ninored
Re : Une création pour de la couleur dans les programes terminales
^^ 256 couleur oui je peut m'amuser mais en fait la je propose mon programme pour vous.
Et pour la taille d'ecran oui c'est un problème, je pense faire différente version pour ça.
Mais sait tu comment rendre un programme comme commande?
Hors ligne
#6 Le 07/08/2012, à 16:56
- ludovic889
Re : Une création pour de la couleur dans les programes terminales
bonjour
excuse-moi Ninored, je ne comprends pas ce que tu veux dire par "rendre un programme comme commande" !!!
sous linux, tout exécutable est une commande...
peut-être souhaites-tu ajouter des options pour appeler ton programme, comme
color2 --background
ou
color2 -v
ou
color2 --help
si c'est ça, regarde par là (en anglais ça s'appelle le argument parsing : tu auras plus de choses)
en espérant t'avoir un peu aidé
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne
#7 Le 08/08/2012, à 19:23
- Ninored
Re : Une création pour de la couleur dans les programes terminales
C'est ce que je cherchais. mais j'aimerais aussi le rendre exécutable de n'importe où comme la commande "ls" et en faire un paquet .deb ou installable depuis l'application d'ubuntu.
Hors ligne
#8 Le 08/08/2012, à 19:49
- ludovic889
Re : Une création pour de la couleur dans les programes terminales
le rendre exécutable de n'importe où
il faut mettre ton exécutable dans ton PATH, en ligne de commande tu fais
echo $PATH
et tu copies (avec les bons droits) ton bidule dans un des répertoires mentionnés
tu pourras aussi te documenter (demande "linux path" à ton ami ggogle)
pour le reste, sais pas faire
Ce n'est pas grave de ne pas avoir l'heure si on a le temps.
Hors ligne
#9 Le 09/08/2012, à 16:52
- Ninored
Re : Une création pour de la couleur dans les programes terminales
la solution du $PATH en est une mais je veut le rendre publique sa peut poser problème les personne devrons eux aussi modifier leurs $PATH.
J'ai vue qu'il y avait un endroit on met l’exécutable (je crois que c'est /usr/bin ) et on pouvais lancer l'executable n'importe où.
Hors ligne
#10 Le 09/08/2012, à 17:55
- Bousky
Re : Une création pour de la couleur dans les programes terminales
Les commandes personnalisées vont dans /usr/local/bin (accessible à tous les utilisaturs) ou dans ~/bin (accessible uniquement à son propriétaire, le dossier est automatiquement ajouté au PATH s'il existe).
Linux qui plante complètement ? Plus rien ne répond ? On peut toujours le redémarrer proprement :
Alt + SysRq + REISUB (Retourne En Islande Sur Un Bateau !)
Hors ligne
#11 Le 14/08/2012, à 02:40
- Ninored
Re : Une création pour de la couleur dans les programes terminales
Merci pour les PATH's mais comment en faire un paquet .deb accessible depuis"apt-get install"(et aussi faire un man) ?
Hors ligne