
Quero usar C.UTF-8
localidade no MacOS (10.15.3) que não existe por padrão. E não há locale-gen
comando no Mac.
Como posso criar uma localidade no MacOS?
Eu só uso a localidade do banco de dados Postgresql.
Responder1
Você não está usando o Debian Linux. locale-gen
é uma ferramenta Debian, um script de shell que envolve a ferramenta padrão real para a criação de localidades. Esta ferramenta é localedef
, conforme descrito noEspecificação Unix únicae conforme disponível no MacOS.
É preciso um localarquivo fontee um arquivo de mapa de caracteres como entrada. OSUSespecifica os formatos para ambos e de acordo com o manual do Apache C++ parapróprio localedef
costumava ser o caso (mas aparentemente não é mais) de que era possível baixar arquivos de origem local do The Open Group.
Observe que uma maneira relatada de configurar C.UTF-8
no MacOS é usar o código de idioma C e sobrepor o código de idioma UTF-8, que o MacOS possui, apenas para digitação de caracteres, ou seja
exportar LANG=C LC_CTYPE=UTF-8
Isso ésupostamente o que os emuladores de terminal MacOS configuram em seus ambientes de processos filhos. Costumava ser assim que as coisas funcionavam no FreeBSD também. (Definir uma localidade *.UTF-8 para LANG
efetivamente fez a mesma coisa, graças ao LC_CTYPE
arquivo de localidade ser um link simbólico para ../UTF-8/LC_CTYPE
essas localidades.)
Observe que a mklocale
ferramenta 4.4BSD énãopara criar localidades. É para criar especificamente as porções de tipo de caractere de localidades.
Leitura adicional
man localedef
localedef
. As especificações básicas do grupo aberto. Padrão IEEE 1003.1-2017.localedef
.Guia de referência da biblioteca padrão Apache C++. apache.org.