quais são as obrigações dos comandos locale e locale-gen?

11

Eu sei que, para entender como os comandos funcionam, devemos usar a página de manual. Mas para comando locale e locale-gen. Não entendi exatamente o significado e o dever deles. Preciso de mais algumas descrições sobre seus trabalhos e a relação entre localidade e localidade-gen . Com base no local do homem:

locale - Obtenha informações específicas do local.

ok o que é localidade ??

DESCRIÇÃO O programa de localidade grava informações sobre o ambiente local atual, ou todos os locais, na saída padrão.

o que é ambiente de localidade?

Mohammad Reza Rezwani
fonte

Respostas:

14

Da Wikipedia:

Na computação, um código de idioma é um conjunto de parâmetros que define o idioma, o país e quaisquer preferências de variantes especiais que o usuário deseja ver em sua interface com o usuário. Normalmente, um identificador de localidade consiste em pelo menos um identificador de idioma e um identificador de região.

Os localeprogramas produzirão um conjunto de variáveis ​​de shell e seus valores. Essas são as variáveis ​​que alteram o comportamento de alguns comandos em relação ao idioma, uso de conjuntos de caracteres e assim por diante. Do meu sistema:

benoit@thorgal:~s locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
benoit@thorgal:~$

Isso diz aos comandos que ouvem usar o inglês americano e a codificação UTF8 para caracteres especiais. Se eu alterar o valor de LANG e colocar fr_FR.UTF-8, os comandos que o suportam escreverão sua saída em francês, em vez de inglês. Obviamente, apenas se a tradução em francês estiver instalada.

Para o locale-gencomando, acho que o primeiro parágrafo de sua página de manual é autoexplicativo:

Os arquivos de código de idioma compilados ocupam cerca de 50 MB de espaço em disco, e a maioria dos usuários precisa apenas de alguns códigos de idioma. Para economizar espaço em disco, os arquivos de localidade compilados não são distribuídos no pacote de localidades, mas as localidades selecionadas são geradas automaticamente quando esse pacote é instalado executando o programa locale-gen.

Ao executar locale-genou locale-gen <locale code>compilar o (s) arquivo (s) de código de idioma necessário, permitindo que os comandos usem o código de idioma especificado nas variáveis ​​de ambiente exibidas por locale.

Exemplo: locale-gen en_US.UTF8

Você pode obter os códigos locais disponíveis usando o comando locale -a.

Benoit
fonte
O que esses arquivos de localidade que ocupam megabytes de espaço contêm?
Flimm