我开始写一个终端文本编辑器,像UNIX的第一个文本编辑器,如vi。我唯一的目标是有一个好的时间,但我想能够显示文本的颜色,所以我可以有语法高亮编辑源代码。
我该如何实现呢?有没有一些特殊的POSIX API为此,或者我必须使用ncurses? (我宁愿不)
任何建议?也许一些教科书上的UNIX API?
这是一个小C程序,说明如何使用颜色代码:
#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; }