~/.CFUserTextEncoding
almacena la codificación de texto predeterminada y el idioma preferido para un usuario. A continuación se muestra un extracto de la Nota técnica 2228 de la Biblioteca de referencia de Mac OS X con más información:
Core Foundation intenta acceder al directorio de inicio del usuario para determinar su codificación de texto predeterminada (almacenada en el archivo ~ / .CFUserTextEncoding). Si cambia el EUID al UID del usuario que inicia sesión y luego llama a CF, puede tener problemas cuando Core Foundation acceda a este archivo. Puede evitar este acceso configurando una variable de entorno que le indique a Core Foundation la codificación de texto predeterminada que debe usar. El nombre de la variable de entorno es __CF_USER_TEXT_ENCODING. Su valor debe construirse con la cadena de formato "0x% X: 0: 0", donde% X se reemplaza por el UID del usuario que inicia sesión.
Por defecto, mi copia de ~/.CFUserTextEncoding
contenido 0: 0. El primer número a la izquierda de los dos puntos representa la codificación predeterminada. El 0 en mi archivo es para kCFStringEncodingMacRoman. Se puede encontrar una lista de codificaciones y el número asociado en la Referencia de CFString
El valor después de los dos puntos representa el idioma preferido del usuario. Para cambiar el idioma preferido, vaya a Idioma y texto en Preferencias del sistema y mueva un nuevo idioma al principio de la lista. Para confirmar a qué cambió el archivo, puede abrir Terminal y escribir cat ~/.CFUserTextEncoding
, que produjo 0: 3 cuando cambié mi idioma preferido de inglés a alemán.