在尝试设置我的terminal程序使用颜色时,我遇到了xterm-color和xterm-256color两个选项,即可以将TERM环境variables设置为任意一个。
我想知道是否有人能描述两者之间的区别?
我已经在我的Ubuntu服务器以及我的Mac上search文档,但没有find任何。 我只能在/ usr / share / terminfo中find各种二进制文件
xterm-256color
描述了支持启用256色的Xterm。 xterm-color
描述了支持十六种颜色的Xterm的一个较老的分支。 不推荐使用xterm-color
,因为它描述了Xterm的一个变种,它的功能较差,而且你不太可能使用它。 通常你会想使用xterm
, xterm-16color
或xterm-256color
。
特别是, xterm-256color
是从Mac OS X 10.7 Lion开始的默认终端,其次推荐的值是xterm-16color
或xterm
(它只能描述支持八种ANSI颜色)。 在10.7之前, xterm-color
是默认的,因为终端不支持推荐的Xterm terminfo值所描述的一些关键特性,例如背景颜色擦除(BCE),用于切换主/备用屏幕的现代代码,256种颜色。
有时,人们明确地将TERM
设置为xterm-color
(而不是推荐的Xterm值)来禁用功能,或者解决特定计算机上的可用terminfo值与正在使用的终端仿真器之间不兼容的问题。
请注意,在技术上,终端应该拥有自己的最新terminfo值,用于描述它支持哪些功能,而不是使用Xterm的值,但是:
nsterm
代表NeXTSTEP的终端的祖先。 有人显然最近更新了nsterm
(过去几年的某个时间),但是我不知道是否已经进入了ncurses发行版,并且在10.7版本中可能不会完全与终端一致。 $TERM
是否以xterm
开头(或等于)。 因此,有些用户仍然需要了解如何在终端上使用推荐的Xterm值来兼容这些值。 如果您不熟悉terminfo系统,请查看x-man-page:// 5 / terminfo手册页。 此外,您可以使用infocmp
命令来查看当前的terminfo设置或比较两个不同的设置,例如, infocmp xterm-color xterm-256color
将显示这两者之间的所有差异。
看来xterm-256color是OS / X上的Terminal.app。 差异不是很小 – 我在Ubuntu盒子上将xterm-color和xterm-256color注入并对它们进行了标准化,并得到了一些不同。 我甚至可以说xterm-256color不再是真正的xterm。
通常,当您使用特定的终端仿真器时,您需要“知道”哪一个terminfo条目最适合它。 它们是一对匹配的,尽管有时候你可以使用vt220终端上的vt100 terminfo条目。
从好的方面来说,今天几乎所有的东西都是兼容vt100的。