复制保留 ANSI 转义序列的终端回滚缓冲区,但没有预启动脚本/屏幕

复制保留 ANSI 转义序列的终端回滚缓冲区,但没有预启动脚本/屏幕

我有一个正在运行的伴侣终端,其回滚缓冲区已经包含大量带有颜色/粗体的文本,但(不幸的是)终端上没有启动屏幕管理/捕获程序(如// )script。是否可以将现有回滚缓冲区内容复制到文件中,screentmux保留所有转义序列

xterm 这个问题的答案作者:Thomas Dickey,但即使在该解决方案中,颜色转义序列也不会保存到资源指定的文件中printerCommand但我是寻找伴侣终端的解决方案。

编辑说明:对于伴侣终端来说,似乎不太可能存在此问题的解决方案;请参阅下面 Thomas Dickey 的回答中的评论。

需要明确的是,预先启动终端屏幕管理/捕获程序(如脚本或 GNU 屏幕或 tmux)不是一个选项,因为这里我们希望在启动任何此类程序之前复制已经生成的终端输出。

答案1

你可能忽略了printAttributes资源:

   printAttributes (class PrintAttributes)
           Specifies whether to print graphic attributes along with the
           text.  A real DEC VTxxx terminal will print the underline,
           highlighting codes but your printer may not handle these.

           o   "0" disables the attributes.

           o   "1" prints the normal set of attributes (bold, underline,
               inverse and blink) as VT100-style control sequences.

           o   "2" prints ANSI color attributes as well.

           The default is "1".

默认资源值使其兼容DEC终端;颜色是您可以配置的。

相关内容