zoco

怎么在iTerm2上画个图?(二)

2020-08-11


上次说到在iterm2画个图,实际中用起来非常快乐。但是我又遇到一个新的问题,每张图都是竖着排列的,我的视野小了很多,加个回车就成了一列。

4EC4E556-F641-45D3-945F-116C1DD92E15.png

理论上只需要在渲染完一张图后把光标移动到(one_pic_width,0)的位置就行。

先看了iterm2的文档,Proprietary Escape Codes - Documentation - iTerm2 - macOS Terminal Replacement,没找到我想要的,然后找到了OSC CODE 的文档,实在太难找了,hterm Control Sequences,然后找到了ANSI转义序列的说明 ANSI转义序列 - 维基百科,自由的百科全书

ANSI转义序列是一种带内信号(In-band Signaling)的转义序列(escape sequence)标准,用来控制终端上的光标位置,颜色,以及其它选项。

在文本中嵌入ANSI转义序列,终端会把这些ANSI转义序列解释为相应的指令,而不是普通的字符。

最后找到了光标上移的字符:

\x1bM

每输出一个就会上移一行。

28E70547-BD50-41EE-871F-E189856F7E6F.png

我的iterm可以开出更多的花了。比如:

B9F92377-C9EF-49E2-A8E7-0E3F0D45B962.png