XQuartz,utf-8和文件名


1

这是继续这个问题: UTF8文件名和shell实用程序:utf-8和文件名的噩梦是.......

如何避免这种混淆,尤其ls是以下列方式创建的filnames上的命令:

$ echo $LANG
en_US.UTF-8
$ mkdir test
$ cd test
$ touch á
$ touch a´
$

第一文件是通过键入来创建alt ⌥+ EA,第二个通过键入Aalt ⌥+ shift ⇧+E

在一个xterm窗口中,我得到:

$ ls -al
total 0
drwxr-xr-x  2 hal  admin   136 Nov 11 15:52 .
drwxr-x---  7 hal  admin  4386 Nov 11 14:25 ..
-rw-r--r--  1 hal  admin     0 Nov 11 15:52 a´
-rw-r--r--  1 hal  admin     0 Nov 11 15:48 a´
$

哪个错了。

在一个Terminal窗口中,我得到:

$ ls -al
total 0
drwxr-xr-x  2 hal  admin   136 Nov 11 15:52 .
drwxr-x---  7 hal  admin  4386 Nov 11 14:25 ..
-rw-r--r--  1 hal  admin     0 Nov 11 15:52 a´
-rw-r--r--  1 hal  admin     0 Nov 11 15:48 á
$

哪个是对的。

结果与我使用的任何shell相同:bashzsh


什么xtermXQuartz设置会避免这两个文件名错误地看起来相同?
小牛队不存在此问题(MacOS X 10.9)。

Answers:


1

好的,最后在这篇文章的帮助下排序:

总之,请到这里:

下载首选项窗格,然后添加以下条目:

Key=LANG Value=en_GB.UTF-8

我已经将此添加到我的.bashrc和我的.profile中,没有结果。但我认为XQuartz不会在那个环境中启动,所以它永远不会看到它,直到为时已晚。


您的提案的第一部分不相关。正如你可能已经从输出中注意到的那样echo $LANG,我处于完全utf-8模式,直到shell级别。
2014年

-1

我遇到了类似的问题(与R文档有关),归结为同样的事情。

在XQuartz窗口中,如果右键单击(或按住CTRL单击)进入VT字体菜单,然后选择UTF8字体和UTF8编码,这可能会解决您的问题。

但是,我还没有找到默认配置它们的方法,虽然我发现了这个:

$ appres XTerm | grep UTF
*fontMenu*utf8-mode*Label:      UTF-8 Encoding
*fontMenu*utf8-fonts*Label:     UTF-8 Fonts
*fontMenu*utf8-title*Label:     UTF-8 Titles

我在黑暗中进行了一次狂刺,并将其添加到我的.Xdefaults中:

xterm*utf8-mode: 1
xterm*utf8-fonts: 1

毫无疑问,这不起作用,因为这两种资源不存在。我仍然在寻找一种默认启用它的方法。


好的,最后在这篇文章的帮助下排序:
Nathan 2014年

1
由于你没有真正为原始问题带来任何解决方案,我建议你把它放在评论中:“这是我测试和失败的”,而不是答案。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.