Sei muito bem que, para substituir as configurações de localidade, podemos usar o LC_ALL
prefixo ao comando que se deseja executar. Eu também sei que C
usa localidade padrão de um sistema. Mas o que C
significa?
Sei muito bem que, para substituir as configurações de localidade, podemos usar o LC_ALL
prefixo ao comando que se deseja executar. Eu também sei que C
usa localidade padrão de um sistema. Mas o que C
significa?
Respostas:
A única dica sólida que pude foi de uma documentação do Slackware escrita pelo grande Patrick Volkerding. No arquivo, /etc/profile.d/lang.sh
ele fez o seguinte comentário:
# 'C' is the old Slackware (and UNIX) default, which is 127-bit ASCII
# with a charmap setting of ANSI_X3.4-1968. These days, it's better to
# use en_US.UTF-8 or another modern $LANG setting (or at least en_US)
# to support extended character sets.
#export LANG=C
Sem revelar o que o 'C' realmente significa, mas eu acho que 'C' é um alias para esse nível mais baixo e mais seguro de localidade .... Não é muito satisfatório, eu sei :(.
Para ver esse comentário você mesmo no pacote Slackware, tente o seguinte:
wget http://slackware.osuosl.org/slackware-14.2/source/a/etc/_etc.tar.gz
tar -zxvf _etc.tar.gz etc/profile.d/lang.sh.new --strip-components 2
E, em seguida, abra o arquivo lang.sh.new
com seu editor de texto favorito ...
C
significa a linguagem de programação C. É um sinônimo para o POSIX
código do idioma.
Consulte http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html#tag_07_02
O código do idioma POSIX pode ser especificado atribuindo às variáveis de ambiente apropriadas os valores "C" ou "POSIX".
gettext
estava na linguagem C. Também não para "localidade padrão de um sistema", mas na verdade "localidade padrão de cada aplicativo". O desenvolvedor pode usar localidades originais / de origem diferentes de en_US
ou en
. Pode ser árabe, chinês, francês, alemão, japonês ... não importa.