Les attributs ncurses permettent de changer la mise en forme/couleur du texte le terminal.
#include <stdlib.h> #include <ncurses.h> #include <string.h> int main(int argc, char* argv[]) { char msg[] = "Bonjour les Attributs!"; char msg_quit[] = "Presser une touche pour quitter..."; int mr, mc = 0; // mr pour max_row et mc pour max_column initscr(); start_color(); init_pair(1, COLOR_CYAN, COLOR_BLACK); getmaxyx(stdscr, mr, mc); //active plusieurs attributs simultanément attron(A_BOLD|A_UNDERLINE); //affichage du message mvprintw(mr/2, (mc - strlen(msg))/2, "%s", msg); //desactive les attributs attroff(A_BOLD|A_UNDERLINE); //affiche un message en bas de l'ecran move(mr -1, 0); addstr(msg_quit); //modification des attributs a posteriori mvchgat(mr -1, 0, -1, A_BLINK, 1, NULL); /* les 2 premier arguments déplacent le curseur le troisième définit la limite de la modification -1 pour modifier jusq'a la fin de ligne. quatrieme specifie le ou les attributs cinquieme l'index de couleur sixieme est non utilisé, positionné a NULL*/ refresh(); getch(); endwin(); return EXIT_SUCCESS; }
$ gcc -Wall main.c -lncurses -o test-ncurses
$ ./test-ncurses