Escribir caracteres especiales en el portapapeles con la línea de comando

3

Estoy tratando de escribir la cadena あいうえお en mi portapapeles usando el pbcopy herramienta de línea de comando como esta

echo あいうえお | pbcopy

Pero lo que estoy recibiendo en mi portapapeles es completamente diferente: „ÅÇ„ÅÑ„ÅÜ„Åà„Åä .

Supuse que esto tenía algo que ver con la codificación, pero la documentación dice que la codificación se basa en la variable de entorno LANG y la mía está configurada en en_EN.UTF-8 .

    
pregunta Louis Boux 15.05.2014 - 03:55

2 respuestas

3

Creo que tu LANG=en_EN.UTF-8 es el problema.

Cuando ejecuto este comando

printf あいうえお | LANG=en_EN.UTF-8 pbcopy

y péguelo en un nuevo documento TextEdit obtengo „ÅÇ„ÅÑ„ÅÜ„Åà„Åä (por cierto, esto es lo que obtiene si toma la codificación UTF-8 de su texto original y la decodifica como MacRoman; debería Poder verificar esto haciendo printf あいうえお | iconv -f macroman ).

Cuando ejecuto este comando

printf あいうえお | LANG=en_US.UTF-8 pbcopy

y péguelo en un nuevo documento de TextEdit obtengo あいうえお , como es de esperar.

Estoy bastante seguro de que en_EN.UTF-8 no es una configuración regional válida (por lo tanto, pbcopy está por defecto en MacRoman). ¿Tal vez quisiste usar en_US.UTF-8 (es decir, US , no EN )? Puede enumerar las configuraciones regionales válidas ejecutando locale -a . Si solo está interesado en las configuraciones regionales de UTF-8 en inglés, puede filtrar la lista de esta manera:

locale -a | grep '^en_.*\.UTF-8$'
    
respondido por el Chris Johnsen 15.05.2014 - 09:16
0

Más que probable es su terminal. Ingrese el comando locale y vea lo que dice allí. Si no enumera alguna codificación japonesa, eso es probablemente lo que es. Además, intente seleccionar "Unicode (UTF-8)" como la codificación de caracteres de Preferencias ..., Configuración, Avanzada, Internacional. También juegue con Preferencias / Codificaciones, habilitando las codificaciones japonesas (¿es ese japonés? Idk! LOL).

También asegúrate de establecer LANGUAGE="en_US.UTF-8" en tu .bash_profile si no aparece cuando usas el comando locale .

    
respondido por el chillin 15.05.2014 - 04:53

Lea otras preguntas en las etiquetas