ANSI text formatting escape sequences in C
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.6 KiB

2 years ago
#ifndef CANSICC_H
#define CANSICC_H
#define CANSIC_ESC "\033["
#define CANSIC_END "\033[0m"
#define _ANSISEQUENCE(n) CANSIC_ESC #n
#define CANSIC_RESET _ANSISEQUENCE(0) "m"
#define CANSIC_BOLD _ANSISEQUENCE(1) "m"
#define CANSIC_FAINT _ANSISEQUENCE(2) "m"
#define CANSIC_ITALIC _ANSISEQUENCE(3) "m"
#define CANSIC_UNDERLINE _ANSISEQUENCE(4) "m"
#define CANSIC_SLOWBLINK _ANSISEQUENCE(5) "m"
#define CANSIC_RAPIDBLINK _ANSISEQUENCE(6) "m"
#define CANSIC_SWAPFGBGCOLORS _ANSISEQUENCE(7) "m"
#define CANSIC_CONCEAL _ANSISEQUENCE(8) "m"
#define CANSIC_CROSSEDOUT _ANSISEQUENCE(9) "m"
#define CANSIC_FRACTUR _ANSISEQUENCE(20) "m"
#define CANSIC_BOLDOFF _ANSISEQUENCE(21) "m"
#define CANSIC_NORMALCOLOR _ANSISEQUENCE(22) "m"
#define CANSIC_NOTITALNOTFRAKTUR _ANSISEQUENCE(23) "m"
#define CANSIC_UNDERLINEOFF _ANSISEQUENCE(24) "m"
#define CANSIC_BLINKOFF _ANSISEQUENCE(25) "m"
#define CANSIC_INVERSEOFF _ANSISEQUENCE(27) "m"
#define CANSIC_REVEAL _ANSISEQUENCE(28) "m"
#define CANSIC_NOTCROSSEDOUT _ANSISEQUENCE(29) "m"
#define CANSIC_SETFGCOLOR _ANSISEQUENCE(38)
#define CANSIC_DEFAULTFGCOLOR _ANSISEQUENCE(39) "m"
#define CANSIC_SETBGCOLOR _ANSISEQUENCE(48)
#define CANSIC_DEFAULTBGCOLOR _ANSISEQUENCE(49) "m"
#define CANSIC_DIABLEPROPORTIONALSPACING _ANSISEQUENCE(50) "m"
#define CANSIC_FRAMED _ANSISEQUENCE(51) "m"
#define CANSIC_ENCIRCLED _ANSISEQUENCE(52) "m"
#define CANSIC_OVERLINED _ANSISEQUENCE(53) "m"
#define CANSIC_NOTFRAMEDNOTENCIRCLED _ANSISEQUENCE(54) "m"
#define CANSIC_NOTOVERLINED _ANSISEQUENCE(55) "m"
#define CANSIC_FG_RGB(r, g, b) CANSIC_SETFGCOLOR ";2;" #r ";" #g ";" #b "m"
#define CANSIC_BG_RGB(r, g, b) CANSIC_SETBGCOLOR ";2;" #r ";" #g ";" #b "m"
#endif