^ [[m,^ [[0m转义码代表什么?

时间:2015-09-17 12:30:49

标签: colors terminal ansi

代码^[[00;00m表示将颜色重置为默认值,但是,在某些程序中(例如源高亮显示器highlight),代码^[[m的使用方式就好像它也可以用于同一目的。 ANSI对此类代码以及类似的^[[0m

进行了说明

1 个答案:

答案 0 :(得分:1)

ECMA-48 在此背景下

“ANSI” 在很久以前就已经过时了。所以适当的起点是该文件。

第8.3.117节 SGR - SELECT GRAPHIC RENDITION

Notation: (Ps...) 
Representation: CSI Ps... 06/13 
Parameter default value: Ps = 0
  

SGR    用于为后续文本建立一个或多个图形再现方面。已建立的方面在数据流中下一次出现SGR之前一直有效,具体取决于设置   图形轮廓组合模式(GRCM)。每个图形再现方面由参数值指定:

     

0

     

默认再现(实现定义),取消数据流中任何先前出现的SGR的影响,而不管GRAPHIC RENDITION COMBINATION MODE(GRCM)的设置

也就是说,0是默认参数,如果没有给出(所以^[[m^[[0m意思相同。重复参数也没有区别(取消已经存在的东西)取消不会取消它),所以^[[00;00m 仍然意味着同样的事情。