Tengo problemas para tratar con caracteres acentuados en los nombres de archivo en la Terminal. Considera lo siguiente:
$ touch leão.png
$ ls > test.txt
$ open -a TextWrangler test.txt
Loscaracteresacentuadosentest.txt
sonincorrectos.Aquíhayalgunoshechosposiblementerelevantes:
- EstoyusandoTerminalconlaconfiguraciónpredeterminada;lacodificacióndecaracteresseestableceenUTF-8ysecomprueba"Establecer variables de entorno de configuración regional en el inicio".
-
la salida de
locale
en el shell es:LANG="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_CTYPE="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_ALL="en_US.UTF-8"
-
La codificación predeterminada de TextWrangler es UTF-8; intentar reabrir el archivo en cualquier otra codificación solo empeora las cosas.
- Estoy ejecutando OS 10.6.8.
Actualizar
En respuesta a los comentarios, aquí hay más información:
-
La salida de
od -tx1 test.txt
es:0000000 6c 65 61 cc 83 6f 2e 70 6e 67 0a 74 65 73 74 2e 0000020 74 78 74 0a 0000024
- Si hago
echo leão.png > test2.txt
, el texto se muestra correctamente en TextWrangler - Al abrir
test.txt
en TextEdit se muestra:leaÃÉo.png
- Al abrir
test.txt
en jEdit se muestra:leaÃÉo.png
- Al abrir
test.txt
en las pantallas AlphaX:leaÃÉo.png
- La apertura de
test.txt
enemacs
desde dentro de el terminal muestra:leão.png
Realmente me gustaría poder trabajar con nombres de archivos que no sean ASCII desde el shell. ¿Cómo puedo hacer que esto funcione?