着色基于B& W终端的应用程序?

时间:2013-09-19 21:48:00

标签: terminal

是否有任何软件可以自动将终端颜色添加到不支持颜色的基于终端的应用程序中?

它会如何运作?好吧,该软件至少可以尝试以与语法高亮显示器相同的方式识别源代码(虽然大多数语法高亮显示器会出现部分源树在屏幕外的问题),并且这种通用方法可以扩展到很多其他更人性化的数据形式;例如,日期,时间,金钱,电子邮件地址等都很容易自动识别。

2 个答案:

答案 0 :(得分:1)

问题分为两部分:

1)如何添加颜色?这些通过ANSI Color Codes

发出信号

例如:

$ echo -e "plain \033[0;36mcyan\033[0;0m"

您应该看到浅青色,“青色”颜色。

2)如何为特定应用添加颜色?对于写入标准输出的标准命令行实用程序,可以将其传递给插入颜色代码的脚本:

$ echo "plain cyan" | sed 's/cyan/\\033[0;36mcyan\\033[0;0m/'
plain \033[0;36mcyan\033[0;0m
$ echo "plain cyan" | sed 's/cyan/\\\\033[0;36mcyan\\\\033[0;0m/' | while read x; do echo -e "$x"; done
plain cyan

答案 1 :(得分:0)

取决于基于终端的应用的含义。如果它只是写入stdout,那么理论上你可以将它传递给一个过滤器来完成你的建议:“解析输入并修改输出”,例如如果它看到一个关键字将它包装在你的终端要求的“颜色标签”中。

如果它使用类似“curses”的东西来解决终端屏幕问题,我认为这几乎是不可能的。单个终端类型可能没问题,但我怀疑这将是一项重大努力。

相关问题