我想在xterm
运行时禁用颜色。原因是某些程序缺乏以正确方式使用它们的理智。
例如:
$ sane-program
color output
$ disable-color
$ less-sane-program
black-white output
$ enable-color
$ sane-program
color output
我知道我可以使用xterm -cm
或更改colorMode
我的~/.Xdefaults
,但这需要重新开始xterm
。我尝试设置TERM
为xterm-old
或无效字符串 ( arggggh
),但仍然有颜色。xtermcontrol
也没有选择。
Ctrl+右键单击并取消选择“允许色彩操作”似乎也没有做任何事情(如果这有效的话那就很酷了)。
过滤掉颜色代码sed
是我现在使用的解决方法,但这不适用于交互式程序......
答案1
简而言之:如果您不想启动新的 xterm,则无法抑制颜色。
长的:
- 当你可以更改
TERM
为不使用颜色的描述(例如xterm-old
),某些应用程序不使用终端数据库。例如,GNU ls 使用它自己的程序,该程序坚持认为vt100 是彩色终端。其他程序可能只是简单地对其行为进行硬编码。 - 这允许颜色操作菜单项是
allowColorOps
资源:
allowedColorOps(AllowColorOps 类) 指定是否设置/查询动态控制序列 应该允许颜色。 ANSI 颜色不受此影响 资源设置。默认值为“true”。
为了讨论动态色彩, 看XTerm 控制序列。