Ele obtém sabendo como as configurações de localidade são processadas, com base nos valores das variáveis de ambiente correspondentes.
Tomando a versão GNU como exemplo, ela começa por chamando setlocale (LC_ALL, "")
para definir a localidade atual. Em seguida, ele passa por todas as localidade categorias , imprimindo o valor de cada um, com exceções especiais para LANG
(impresso primeiro) e LC_ALL
(impresso por último). Os valores são determinados observando os valores do ambiente e seguindo as regras que se aplicam às configurações de localidade:
- se
LC_ALL
estiver definido, todas as categorias receberão o valor correspondente; - se uma categoria não tiver um valor definido no ambiente, utilizará o valor de
LANG
se tiver um, "POSIX" e o valor estiver entre aspas duplas .