~/.CFUserTextEncoding
armazena a codificação de texto padrão e o idioma preferencial de um usuário. Veja abaixo um trecho da Nota Técnica 2228 da Biblioteca de Referência do Mac OS X, com mais algumas informações:
Core Foundation tries to access the user's home directory to determine their default text encoding (stored in the file ~/.CFUserTextEncoding). If you switch the EUID to the UID of the logging in user and then call CF, you may have problems when Core Foundation accesses this file. You can prevent this access by setting an environment variable that tells Core Foundation the default text encoding to use. The environment variable name is __CF_USER_TEXT_ENCODING. Its value should be constructed with the format string "0x%X:0:0", where %X is replaced by the UID of the logging in user.
Por padrão, minha cópia de ~/.CFUserTextEncoding
continha 0: 0. O primeiro número à esquerda dos dois pontos representa a codificação padrão. O 0 no meu arquivo é para kCFStringEncodingMacRoman. Uma lista de codificações e o número associado pode ser encontrado no Referência do CFString
O valor depois dos dois pontos representa o idioma preferido do usuário. Para alterar o idioma preferido, vá para Idioma & Texto em System Preferences e mova um novo idioma no topo da lista. Para confirmar o que o arquivo mudou, você pode abrir o Terminal e digitar cat ~/.CFUserTextEncoding
, que resultou em 0: 3 quando alterei meu idioma preferido de inglês para alemão.