Como nos comentários acima, a definição de Terminal.app Escape non-ASCII characters
parece ter resolvido o problema. Embora eu fique confuso com a direção em que o movimento foi necessário para fazer isso funcionar corretamente.
Eu tenho uma listagem de diretórios com arquivos como:
drwxr-xr-x 2 nobody nogroup 4096 2011-01-11 21:06 Капкан
drwxr-xr-x 3 nobody nogroup 4096 2011-11-17 08:40 СБПЧ
Quando copio / colo ou insiro diretamente esses nomes de arquivos no prompt, espero poder trabalhar com eles exatamente como as letras do Latin-1.
Em vez disso, obtenho resultados como:
# Pasting "Капкан"
$ :?апкан
Você vê a primeira letra é substituída por " :?
". Então, não consigo percorrer os caracteres à esquerda, exceto excluindo-os. Entrada baseada em teclado produz os mesmos resultados. tmux
ou screen
yank / paste produz os mesmos resultados.
Não sei como diagnosticar esta situação! Esta é uma distribuição muito antiga do 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
), mas eu ainda acho que há uma maneira de fazer com que os nomes de arquivos UTF-8 se comportem como eu esperava.
Estou usando Terminal.app
e TERM
do OS X como xterm-color
.
Eu acredito que esses nomes de arquivos são codificados usando UTF-8. Estou usando o Bash 3.1.17 e aqui está minha saída de 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
Aqui está minha saída de $ 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
Eu consideraria a instalação de ru_RU.UTF-8
de /etc/locale.gen
, mas também estou tendo problemas com caracteres latinos básicos, como á
.