gnome-terminal(或VTE)将$ TERM设置为xterm而不是xterm-256color

时间:2013-11-13 22:03:39

标签: emacs terminal gnome-terminal vte

是否有令人信服的理由为gnome-terminal(以及VTE窗口小部件)将$TERM设置为xterm而不是xterm-256color?显然它支持256种颜色。

有一段时间,我的.bashrc / .zshrc中有一行只是export TERM=xterm-256color,因为这通常是我正在使用的终端模拟器。但后来我打开tmux,许多CLI应用程序中的行为/颜色都是错误的,例如emacshtop,因为tmux会设置TERM }变量到screen-256color,然后 shell加载并执行我的.*rc文件,然后错误地设置TERM

现在,我有:

if [ "$TERM" != "screen-256color" ]; then
    export TERM="xterm-256color"
fi

我不喜欢这个,因为如果有一天我打破我的实际VT-220或使用不同的终端模拟器呢?

1 个答案:

答案 0 :(得分:-1)

很长一段时间以来,人们常常查看$COLORTERM,如果设置了TERM=xterm,那么他们会将其切换为TERM=xterm-256colors

稍后,gnome-terminal(实际上是vte)删除了设置$COLORTERM,但引入了$VTE_VERSION

最新版本(gnome-terminal 3.16,vte 0.40)立即设置TERM=xterm-256color(这也是不太正确,因为它支持16M颜色,但是没有办法在terminfo中表示它。)