Resposta rápida: O Windows usa essa configuração como uma diretriz para converter entre caracteres ASCII de 8 bits mais antigos e caracteres Unicode de 16 bits modernos. Alguns aplicativos abusam dessa configuração para determinar qual interface do usuário do idioma deve ser mostrada.
The treatment of text files is application-specific , so this setting will not affect that.
Não é inteiramente verdade. Aqui estão alguns exemplos: (quando definido para o idioma coreano para programas não-Unicode '\' (barra invertida) é substituído por '₩' (símbolo da moeda coreano))
- Em muitos aplicativos, todos os '\' aparecem como '₩' Dê uma olhada no gVim (um editor de texto). Nota: os dados subjacentes ainda são os mesmos de quando "\" aparece. Se você abrir este arquivo em outro computador, ele se parecerá com '\' novamente.
- Todos os caminhos de arquivo são delimitados por '₩'.
- Alguns aplicativos, como os drivers de vídeo da Intel, pegam essa configuração para decidir qual interface do usuário de idioma exibir.
Informaçõesdeplanodefundo:
WindowsusadoparaarmazenarstringscomcaracteresASCIIde8bits.Ouseja,cadacaractereusou8dígitosbinários.Issopermitiaapenas256caracteresdiferentes;nãoésuficientepararepresentartodasaslínguasescritasdomundo.Assim,diferentesregiõeslinguísticasdecidiraminterpretaroscaracteresde8bitsdeformadiferenteparaseadequaremàsuapróprialíngua(adicionandovogaisacentuadas,sinaldemoedaprópriaalémde'$',etc).Essassãochamadasdecodificações.OsaplicativosdeveminformarespecificamenteaoWindowsqualcodificaçãousar;muitosprogramasnão,portanto,oWindowsassumeacodificaçãolocalparaessaversãodoWindows.
AgoraoWindowsarmazenastringscomcaracteresUnicodede16bits.Cadacaractereusaodobrodebits.Issopermiteaté(quase)65.536caracteresdiferentes.Aindanãoésuficientepararepresentartodososidiomasescritosdomundo,masoUnicodetambémespecificaumamaneiradeescolhercertosconjuntosdecaracteresdeumconjuntomuitomaiordecaracteres.
Agora,oqueoWindowsfazquandoexecutaumprogramaantigoquenãosabesobreUnicode?OWindowsprecisaconverterentrecaracteresASCIIde8bitsecaracteresUnicodede16bits.OWindowspodefazerissomuitobemseoaplicativoantigoespecificarexplicitamenteacodificação,masmuitosaplicativosnão.Então,oWindowsassumecomopadrãoaconfiguraçãoemquestão:LanguageforNon-UnicodePrograms.
Editar:respondendoaoscomentáriosdeJoshua
So,inadditiontochoosingtheencodingforGUIstrings,thissettingcanaffectfontchoice(Iguessthe₩issimplyafontrepresentationforwhatappearsasbackslashinEuropeanfonts,no?)
Simenão.Algochamado" vinculação de fontes " está ocorrendo para exibir o '₩' quando uma fonte TrueType não inclua esse caractere. Somente '₩' é exibido em uma fonte diferente. No entanto, no caso de fontes não TrueType, uma fonte totalmente diferente é usada (por exemplo, no console do cmd.) Além disso, os símbolos de moeda são um caso muito especial. O Windows faz um trabalho extra para substituir '\' pelo símbolo da moeda local para manter o comportamento das versões anteriores do Windows.
As fontes do sistema do Windows também são alteradas por meio de algo chamado " substituição de fonte ." Nesse caso, as fontes do sistema são totalmente substituídas por uma nova fonte (embora o nome da fonte permaneça o mesmo). Da minha experiência com a localidade coreana, a nova fonte substituída não parece tão agradável quanto a fonte original.
Does this setting affect anything else?
Eu tive experiências raras em que o uso do idioma coreano fez com que um aplicativo não funcionasse corretamente. Um aplicativo que lembro foi uma ferramenta de visualização de expressão regular. Ele simplesmente não produzia os resultados corretos quando na localidade coreana (ou talvez nem sequer fosse iniciado?) Eu tive que mudar para a localidade dos EUA sempre que eu desejava usar este programa.