如何解释来自DA转义序列(\e[c
)的响应?
[在urxvt中运行命令时,我得到1;2
,在Linux控制台(和st)中,我得到6;
,在xterm中我得到64;1;2;6;9;15;18;21;22
。
根据我在互联网上可以找到的信息,这些字符串应该以某种方式确定终端的功能。 http://www.vt100.net/docs/vt100-ug/chapter3.html#DA
No options ESC [?1;0c
Processor option (STP) ESC [?1;1c
Advanced video option (AVO) ESC [?1;2c
AVO and STP ESC [?1;3c
Graphics option (GPO) ESC [?1;4c
GPO and STP ESC [?1;5c
GPO and AVO ESC [?1;6c
GPO, STP and AVO ESC [?1;7c
这似乎与urxvt(可能还有xterm)的响应相符,但与其他响应不符。所有提到的终端似乎都与VT-102完全兼容,据我所知,它将映射为1; 2(AVO)。
外面有人知道吗?
xterm响应的文档很容易在XTerm Control Sequences中找到
注意,与所有X窗口应用程序一样,有一种资源可以将响应更改为所需的任何内容。
CSI P c发送设备属性(主要DA)。Ps = 0或省略⇒向终端请求属性。的响应取决于decTerminalID资源设置。⇒CSI? 1个2 c(“带高级视频选件的VT100”)⇒CSI? 1个0 c(“无选项的VT101”)⇒CSI? 6 c(“ VT102”)⇒CSI? 6 2; Psc(“ VT220”)⇒CSI? 6 3; Psc(“ VT320”)⇒CSI? 6 4; Psc(“ VT420”)VT100样式的响应参数并不意味着他们自己。 VT220(及更高版本)参数做了,告诉托管终端支持的功能:Ps = 1⇒132列。Ps = 2⇒打印机Ps = 3⇒ReGIS图形。Ps = 4⇒Sixel图形。Ps = 6⇒选择性擦除。Ps = 8⇒用户定义的键。Ps = 9⇒国家替换字符集。Ps = 1 5⇒技术特征。Ps = 1 6⇒定位器端口。Ps = 1 7⇒终端状态查询。Ps = 1 8⇒用户窗口。Ps = 2 1⇒水平滚动。Ps = 2 2⇒ANSI颜色,例如VT525。Ps = 2 8⇒矩形编辑。Ps = 2 9⇒ANSI文本定位器(即DEC定位器模式)。xt定位器(即DEC定位器模式)
我的WAG,某些仿真器无法完全/正确地实现此功能,因此,如果您依靠它,则需要逐案处理。