如何在 xterm(或 X,实际上)中禁用 UTF-8?

如何在 xterm(或 X,实际上)中禁用 UTF-8?

我有一个运行 Debian 不稳定的系统,我不想在我的 xterms 中使用 UTF-8(或者根本不想使用)。但我最近发现我的 xterms 和其他窗口中现在有 UTF-8。它可能是在我上次更新时(2 月 24 日)发生的,但直到大约一周前我才注意到。

我的问题是在瑞典语中使用“å”、“ä”和“ö”等特殊字符时。

启动一个新的 xterm,我可以很好地选择并粘贴特殊字符,但是一旦我从另一个 xterm 粘贴特殊字符,我就会得到例如“Á¥”而不是“å”,之后 xterm 中的某些设置发生了更改因为之后选择“å”并将其粘贴到相同的 xterm 中会得到“Á¥”。不过,在 xterm 中写入特殊字符仍然可以正常工作。

启动 xclipboard 我得到奇怪的行为:如果我在 xclipboard 中写“å”,选择它,然后将其粘贴到 xterm 中,我会得到“å”。如果我在 xclipboard 中写入“å”,选择它,将其粘贴到 xclipboard 窗口中,然后将其粘贴到 xterm 中,我会在 xterm 中得到“å”。

如果我在浏览器中选择一些带有特殊字符的文本并按 Ctrl-C 使其出现在 xclipboard 窗口中,然后在 xclipboard 中选择它并将其粘贴到 xterm 中,我会得到例如“à”而不是“å” 。

如果我在浏览器中选择一些带有特殊字符的文本,然后按 Ctrl-C 使其出现在 xclipboard 窗口中,然后在 xclipboard 中选择它并将其粘贴到 xclipboard 中,我会得到“à”而不是“å”。但是,如果我在 xclipboard 中再次选择完全相同的文本并将其粘贴到 xclipboard 或 xterm 中,我会得到“å”。

我的所有区域设置(LANG、LC_CTYPE、LC_NUMERIC 等)均为 en_US.ISO-8859-15。但 LANGUAGE 和 LC_ALL 未设置。将它们设置为 en_US.ISO-8859-15 并不能解决问题。

如果我想使用带有 UTF-8 的 xterm,我有一个菜单选项,可以在启动新的 xterm 之前设置 LANG=en_US.UTF8 和 XTERM_LOCALE=en_US.UTF8,并且多年来一直工作良好,但现在在调查这些时我发现将特殊字符粘贴到 UTF-8 xterm 中会导致打印“�”字符,而在 UTF-8 xterm 中选择特殊字符并将其粘贴到非 UTF-8 xterm 中会导致打印“�”代替”。

所有这些对我来说都很奇怪,我不知道如何进一步解决它。

使用 Debian不稳定的 6.5.0-5-amd64 内核。 xterm 版本是 390-1。 xserver-xorg 版本是 1:7.7+23 xserver-xorg-core 版本是 2:21.1.9-1

因此,内核和我的软件包当然多年来一直支持 UTF-8,但直到几周前,我在选择和粘贴特殊字符方面还没有遇到任何问题。

我没有故意更改任何应该导致这种行为变化的用户或系统范围的设置(或者根本没有,真的;我最近一直在使用这台机器,而无需进行任何配置)。

所以我的简单问题是:如何在 xterms 中摆脱 UTF-8?我不明白为什么突然出现。

现在,我发现有两件事可能有效:运行“xterm -lc”或“xterm -en en_US.ISO-8859-15”,或安装 luit 软件包。初步测试表明它们可能有效,但由于我之前从未使用过它们,所以我希望找到一种解决方案,使事情更接近以前的情况,而不必使用 xterm 的特殊参数或过滤器我所有的 xterm(即 luit)。看来这应该可以通过设置正确的区域设置环境变量来解决,但我不知道它们是什么。

因此,我希望得到不依赖于“xterm -lc”/“xterm -en en_US.ISO-8859-15”或安装 luit 软件包的答案,因为直到几周前这些都不是必需的。

如果解决方案是使用“xterm -lc”/“xterm -en en_US.ISO-8859-15”或安装 luit 软件包,我仍然希望有人能解释几周前我的系统上发生了什么变化导致了这个问题。是否某些 Debian 软件包发生更改导致了这种情况?哪一个?我有一些 xterms 自从我启动系统以来一直在运行,它们也受到影响,而不仅仅是 2 月 24 日最后一次更新后启动的 xterms,所以也许一些共享库发生了更改,但是在以下情况下运行 xterms 会重新加载共享库lib 更新了吗?我认为只有在库升级后启动的 xterms 才会加载新版本的库。

机器最后一次重新启动是在除夕夜,X 从那时起就一直在运行。

抱歉,文字墙很长,但我认为最好详细描述我的问题和我尝试过的内容,而不是只是大喊“啊,我的 xterm 对待特殊字符很奇怪,请帮忙!”。

相关内容