UTF8 屏幕重新附加问题概述。

UTF8 屏幕重新附加问题概述。

UTF8 屏幕重新附加问题概述。

问题:

创建使用 UTF8 的屏幕可以完美运行,直到重新附加所述屏幕会话为止。

脚步:

ssh remothost
screen -U -S ttytter
[detach screen]
[exit ssh]
xterm -class 'xterm-ttytter' -geometry 175x20 \
  -title 'ttytter' -e ssh -t remotehost "screen -dU -r ttytter"

细节

我非常喜欢蒂特并且已经使用了一段时间了。我最近开始使用 xterm 与 xfce4-terminal/gnome-terminal 相比,因为我发现它更干净。出于个人和职业原因,我尝试使用 UTF8,并且仍在尝试解决一些错误。

初始附件(创建)为我提供了正常工作的 UTF8 输入。 $TERM 是xterm-256colors而 $LANG 是en_US.UTF-8。重新连接屏幕后也是如此,尽管我无法使用某些字符,例如退格键,它显示为^H

该问题似乎特定于我发出的重新连接屏幕的命令。当我重新连接 UTF8 屏幕时,我试图找出可能导致此类问题的原因。我努力了-博士-dU-r,两者都未能解决我的问题。我尝试给 xterm 设置 -u8 标志,但行为没有改变。

xterm -class 'xterm-ttytter' -geometry 175x20 \
-title 'ttytter' -e ssh -t remotehost "screen -dU -r ttytter"

以上会导致问题。

ssh remotehost
screen -dU -r ttytter

上面的效果很好。

设置

.screenrc

defc1 off
defutf8 on
utf8 on

.X默认值

xterm*utf8: 1

.bashrc

export LANG=en_US.UTF-8

我将非常感谢任何有关解决此问题的指导。

答案1

解决方案

不同的“类”加载不同的配置文件/etc/X11/应用程序默认/。我的问题是我的新 xterm 类没有匹配的配置文件。

# cd /etc/X11/app-default
# ln -s XTerm-color xterm-ttytter

上面将通过创建符号链接来链接 xterm-ttytter 的 XTerm-color 类设置。这样,对 XTerm-color 所做的任何更改也将自动应用于 xterm-ttytter。

感谢 @Nei 于Freenode/#xterm用于解释 X11 的程序类。

答案2

应用程序默认文件xterm设计为包括XTerm-color使用不同的路由。这个资源

*customization: -color

会告诉 X Toolkit 库加载以“-color”结尾的资源文件。

已安装多个应用程序默认文件xterm。看看我的/etc/X11/app-defaults,主要是这些:

-rw-r--r--   1 root         2400 Nov 27 2012    KOI8RXTerm
-rw-r--r--   1 root         3609 Nov 27 2012    UXTerm
-rw-r--r--   1 root        10112 Nov 27 2012    XTerm

这些是颜色定制的:

-rw-r--r--   1 root         6217 Nov 27 2012    KOI8RXTerm-color
-rw-r--r--   1 root         6209 Nov 27 2012    UXTerm-color
-rw-r--r--   1 root         6207 Nov 27 2012    XTerm-color

XTermXTerm-color那些应该不需要太多解释:默认类是XTerm,并且自定义资源添加“-color”。其他人使用不同的类。你应该对这个UXTerm类感兴趣,因为它设置了这个

    *VT100.utf8:    1

以及设置对 UTF-8 有用的字体。该uxterm脚本xterm使用该类运行UXTerm,并确保设置了语言环境环境变量。

进一步阅读:

答案3

我假设您收到乱码输出,如果是这种情况,请尝试运行该reset命令,或者也许stty sane.这至少可以治疗症状。

相关内容