在 Xresources 中设置 termName 没有效果

在 Xresources 中设置 termName 没有效果

我在 Arch Linux 上使用 rxvt-unicode。

echo $TERM显示“rxvt”。如果我设置了export TERM=rxvt-unicode-256color,那么颜色就可以正常工作。但是,我认为这不是一个好方法。

但是当我尝试在 中设置urxvt*termName: rxvt-unicode-256color(或一些变体,例如xterm*termNamexterm-256color~/.Xresources,然后运行时xrdb ~/.Xresources,它没有任何效果,$TERM仍然是“rxvt”。

但是,如果我更改另一个属性Xresources(例如字体大小),那么它会对我打开的下一个终端生效。

这怎么可能?我是不是漏掉了什么?

答案1

X 应用程序仅在首次启动时读取资源设置。更改资源设置不会影响当前正在运行的应用程序。

X 资源的一个怪癖是,例如,如果您的系统已经有一个与图案 urxvt*termName,那么你将无法替换它图案。你可以做得更多明确的,并覆盖它,例如,urxvt.termName.

答案2

检查您的 shell 启动脚本,$HOME当然还有发行版经常添加的全局脚本。也许其中之一会设置TERM并覆盖您的设置。如果您使用 tmux/screen,还要检查它们。他们TERM也可能会改变。

相关内容