我有一个包含如下文件的目录列表:
drwxr-xr-x 2 nobody nogroup 4096 2011-01-11 21:06 Капкан
drwxr-xr-x 3 nobody nogroup 4096 2011-11-17 08:40 СБПЧ
当我复制/粘贴或直接将这些文件名输入到提示中时,我希望能够像使用 Latin-1 字母一样使用它们。
相反,我得到如下结果:
# Pasting "Капкан"
$ :?апкан
您会看到第一个字母被“ :?
”替换。然后,我无法遍历左侧的字符,除非删除它们。基于键盘的输入会产生相同的结果。tmux
或screen
复制/粘贴也会产生相同的结果。
我不知道该如何诊断这种情况!这是一个相当古老的 Debian 发行版 ( $ uname -a Linux weezy 2.6.37.6.RNx86_32.1.4 #1 Thu Jul 26 04:49:29 PDT 2012 i686 GNU/Linux
),但我仍然认为有一种方法可以让 UTF-8 文件名按照我期望的方式运行。
我正在使用 OS XTerminal.app
并且TERM
设置为xterm-color
。
我相信这些文件名是使用 UTF-8 编码的。我使用的是 Bash 3.1.17,以下是我的输出locale
:
$ locale
LANG=
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=en_US.utf8
这是我的输出$ locale -a
:
C
de_DE.utf8
en_US.utf8
ja_JP.utf8
ko_KR.utf8
nl_NL.utf8
POSIX
zh_CN.utf8
zh_TW.utf8
我会考虑ru_RU.UTF-8
从安装/etc/locale.gen
,但我对基本的拉丁字符也遇到了麻烦,例如á
。
答案1
根据上述评论,调整 Terminal.appEscape non-ASCII characters
设置似乎解决了问题。但我对需要调整哪些方面才能使其正常工作感到困惑。