titulo poner personalizar configurar como colores color cambiar c unix terminal

personalizar - como poner el color en unix



Texto de color en aplicaciones de terminal en UNIX (4)

Aquí hay otra manera de hacerlo. Algunas personas preferirán esto ya que el código es un poco más limpio (no hay %s y un color RESET para finalizar la coloración).

#include <stdio.h> #define RED "/x1B[31m" #define GRN "/x1B[32m" #define YEL "/x1B[33m" #define BLU "/x1B[34m" #define MAG "/x1B[35m" #define CYN "/x1B[36m" #define WHT "/x1B[37m" #define RESET "/x1B[0m" int main() { printf(RED "red/n" RESET); printf(GRN "green/n" RESET); printf(YEL "yellow/n" RESET); printf(BLU "blue/n" RESET); printf(MAG "magenta/n" RESET); printf(CYN "cyan/n" RESET); printf(WHT "white/n" RESET); return 0; }

De esta manera, es fácil hacer algo como:

printf("This is " RED "red" RESET " and this is " BLU "blue" RESET "/n");

Esta pregunta ya tiene una respuesta aquí:

Empecé a escribir un editor de texto de terminal, algo así como los primeros editores de texto para UNIX, como vi. Mi único objetivo es pasar un buen rato, pero quiero poder mostrar el texto en color, para que pueda resaltar la sintaxis para editar el código fuente.

¿Cómo puedo conseguir esto? ¿Hay alguna API POSIX especial para esto, o tengo que usar ncurses? (Preferiría no)

¿Algún consejo? Tal vez algunos libros de texto en la API de UNIX?


Este es un pequeño programa de C que ilustra cómo podría usar los códigos de color:

#include <stdio.h> #define KNRM "/x1B[0m" #define KRED "/x1B[31m" #define KGRN "/x1B[32m" #define KYEL "/x1B[33m" #define KBLU "/x1B[34m" #define KMAG "/x1B[35m" #define KCYN "/x1B[36m" #define KWHT "/x1B[37m" int main() { printf("%sred/n", KRED); printf("%sgreen/n", KGRN); printf("%syellow/n", KYEL); printf("%sblue/n", KBLU); printf("%smagenta/n", KMAG); printf("%scyan/n", KCYN); printf("%swhite/n", KWHT); printf("%snormal/n", KNRM); return 0; }



Use secuencias de escape ANSI. Este artículo entra en detalles sobre ellos. Puedes usarlos con printf también.