我从facebook推断中发现了this commit,但我不知道\027[0K
和\027[%iA
是什么意思。
这些特殊字符串是什么意思?而且(我认为),如果还有更多这样的字符串,在哪里可以找到关于此的完整文档?
答案 0 :(得分:0)
这些是转义序列,可以告诉您的终端该怎么做。
例如,用\027[0K
表示的字符序列(其中\027
是Esc
字符的ASCII十进制值)告诉终端“清除从光标到结尾的行”。
可以在https://shiroyasha.svbtle.com/escape-sequences-a-quick-guide-1
答案 1 :(得分:0)
facebook代码是从另一个来源here复制而来的,该来源使用模仿termcap的硬编码格式器(this page提供了一些背景知识)。原始文档带有注释,表明其信息来自何处。
格式化程序将“%i”用于整数。这是光标移动“ cursor-up” \033[A
在大多数语言中,\033
(八进制)用于ASCII转义字符。但是此来源(根据github analysis)是用OCaml编写的,并且正在使用十进制值作为ASCII转义字符。根据OCaml语法,您可以使用如下八进制值: \o033
一旦您看到格式化部分(如何表示转义字符,使用%i
格式化数字),其余部分就会记录在多个地方。