Web site Debian em diferentes idiomas

Obviamente, nem todo mundo fala a mesma língua. Enquanto a web cresce, torna-se mais comum encontrar páginas que estão disponíveis em múltiplos idiomas. Um padrão foi então introduzido, chamado negociação de conteúdo, que permite a uma pessoa definir o idioma na qual prefere receber os documentos. A versão atual entregue é negociada entre seu navegador e o servidor; seu navegador envia suas preferências e o servidor decide que versão enviar baseado nas suas preferências e nas versões disponíveis do documento.

Note que selecionando um idioma diferente (a partir da lista de traduções listada no rodapé da página) você verá apenas a página atual naquele idioma. Isto não muda o idioma padrão. Se você clicar em um link para uma página diferente, ela será exibida no idioma original novamente. Para mudar seu idioma padrão, você precisa mudar suas preferências de idioma na configuração do seu navegador, conforme explicado abaixo.


O que fazer se uma página do Debian está no idioma errado

A primeira e mais comum razão para um documento ser recebido no idioma errado de um servidor web Debian é um navegador mal configurado. Por favor veja a seção sobre como definir o idioma preferido para saber como consertar isso.

A segunda razão são os caches quebrados ou mal-configurados. Esse é um problema crescente quanto mais os ISPs vêem o caching como uma maneira de diminuir o tráfico de rede. Leia a nota sobre servidores web com cache mesmo se você não acha que usa um.

A terceira razão é haver um problema com o www.debian.org. Apenas poucos problemas com o recebimento de idioma errado relatados a nós nos últimos anos foram causados por um problema no nosso lado. Nós, por isso, sugerimos que você investigue bem as duas principais fontes de problemas antes de contatar-nos. Se você descobrir que o http://www.debian.org/ está funcionando mas um dos mirrors não, relate isso a nós e nós contataremos os mantenedores do mirror.

Depois de consertar qualquer que seja o problema, sugerimos que você limpe o cache local (de disco e memória) no seu navegador antes de tentar visualizar as páginas de novo. Também sugerimos que você use o lynx ao testar. Ele é o único navegador que sabemos que segue 100% as especificações HTTP de negociação de conteúdo.

Problemas em potencial com servidores de cache (também conhecidos como proxies)

Servidores proxy são, essencialmente, servidores que não têm conteúdo próprio. Eles ficam entre os usuários e os servidores web reais. Eles pegam suas chamadas a páginas web e pegam a página. Depois disso, eles enviam a página a você fazendo uma cópia local, que fica no cache, para requisições posteriores. Isso pode realmente baixar o tráfego de rede quando muitos usuários requisitam a mesma página.

Isso é uma grande idéia na maior parte do tempo, mas falha quando o cache é bugado. Em particular, muitos proxies antigos não entendem negociação de conteúdo. Isso resulta em caches de uma página em uma língua e o servimento dela, mesmo se uma língua diferente for solicitada depois. A única solução é atualizar ou substituir o software de cache.

Historicamente, as pessoas apenas usavam um proxy quando configuravam seus navegadores para passar por um proxy transparente. Se o cache não lida com negociação de conteúdo apropriadamente, então os usuários podem receber páginas no idioma errado. O único jeito de consertar isso é reclamar com seu ISP para que eles atualizem ou troquem de software.


Como definir as configurações de idioma

Você deve definir o idioma preferido para todos os idiomas que você fala, ordenados por sua preferência. É uma boa idéia adicionar o inglês ('en') como um salva-guarda (último da lista) porque o idioma original das páginas do Debian são o inglês e pode ser que nem todos os documentos estejam traduzidos no(s) seu(s) idioma(s) preferido(s).

Por exemplo, se você é um falante nativo de português, você pode querer definir sua variável de idioma para incluir primeiro o português (com o código 'pt' ), seguido pelo inglês (com o código 'en').

Veja abaixo para instruções exatas sobre como fazer isso em navegadores específicos.

Como você pode ver aqui, a maioria dos navegadores irá apresentar-lhe alguma espécie de interface para o usuário que esconde alguns dos detalhes sobre a definição do idioma preferido. Se este não for o caso, note uma simplificação importante no parágrafo anterior: se você está apenas especificando uma lista de idiomas como 'pt, en', isto ainda não define uma preferência; define opções com o mesmo nível, e o servidor pode decidir ignorar a sua ordem. Se você quer especificar prefrências reais, você tem que usar "valores de qualidade" que são valores decimais entre 0 e 1, onde valores mais altos indicam uma preferência maior. Assim, no exemplo acima você provavelmente usaria algo como 'pt; q=1.0, en; q=0.5'.

Uma coisa que você precisa tomar cuidado é usar sub-categorias de idiomas. Usar 'pt-BR, en', por exemplo, não faz o que a maioria das pessoas esperam (se elas não tiverem lido a especificação do HTTP).

Nós recomendamos fortemente que você não adicione extensões de países a um idioma a menos que tenha boas razões. Se você adicionar, assegure-se de que você também inclua o idioma sem a extensão.

Explicação: um servidor que recebe um pedido para um documento com o idioma preferido definido como 'pt-BR, en' não irá servir a versão em português ('pt') antes da versão em inglês ('en'). Ele só servirá a versão em português se houver uma versão do arquivo com 'pt-br' como extensão de idioma.

Portanto, você deve configurar seu navegador para enviar 'pt-BR, pt, en', ou simplesmente 'pt, en'. Isso funciona numa situação contrária, no entanto. Por exemplo, um servidor pode retornar 'pt-br' se 'pt' for requisitado.

Para maiores informações sobre configurar o idioma preferido, veja a documentação do Apache sobre negociação de conteúdo.

Configurando o idioma preferencial em um navegador

Para configurar um idioma padrão do seu navegador você tem de configurar uma variável que é passada para o servidor de web. Como isso é feito depende do navegador que você está usando.

Mozilla / Netscape 4.x e versões mais novas
     Edit -> Preferences -> Navigator -> Languages
  
Nota: com o Netscape 4.x você precisa se assegurar de selecionar o idioma a partir das escolhas disponíveis. Muitas pessoas relatam problemas porque digitaram o idioma por si próprios.
Mozilla Firefox
Versão 0.9 ou superior:
Linux:
     Edit -> Preferences -> General -> Languages
  
Windows:
     Tools -> Options -> General -> Languages
  

Versão 1.5 ou superior:
Linux:
     Edit -> Preferences -> Advanced -> General -> Edit Languages
  
Windows:
     Tools -> Options -> Advanced -> General -> Edit Languages
  
Em versões mais antigas você tem que ir em about:config e alterar o valor de intl.accept_languages.
Internet Explorer
Windows:
     Ferramentas ou Visualizar ou Extras -> Opções da Internet -> (Geral) Idiomas
  
MacOS:
     Edit -> Preferences -> Web Browser -> Language/Fonts
  
Pocket Internet Explorer
     Crie a chave de registro AcceptLanguage em
     HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International\
     com o valor pt; q=1.0, en; q=0.5 (sem aspas).
  
Opera
A maioria das versões :
     Arquivo -> Preferências -> Linguagens
  
Linux/*BSD versões 5.x e 6.x:
     Arquivo -> Preferências -> Documento -> Linguagens
  
Navegador web Nokia 770: Edite o arquivo /home/user/.opera/opera.ini e adicione a seguinte linha na seção [Adv User Prefs]:
     HTTP Accept Language=pt;q=1.0,en;q=0.5
  
Galeon
     Configurações -> Preferências ->  Renderização -> Idiomas
  
Epiphany
     Editar -> Preferências -> Idioma -> Idiomas
  
Konqueror
Se você deseja definir somente um idioma, isto será fácil assim que o bug #358459 estiver corrigido, apenas selecione a opção no Centro de Controle KDE e reinicie sua sessão KDE para aplicar as mudanças.
Se você deseja ter múltiplos idiomas ou precisa de uma alternativa para o bug mencionado, atualmente você tem que editar o arquivo ~/.kde/share/config/kio_httprc e incluir uma linha como esta:
     Languages=pt;q=1.0, en;q=0.5
  
lynx
Você pode ou editar a variável preferred_language no seu .lynxrc ou definí-la usando o comando 'O' enquanto estiver no lynx.

Por exemplo, use o seguinte no seu .lynxrc

  preferred_language=pt; q=1.0, en; q=0.5
  
W3 (navegador do emacs)
(setq url-mime-language-string  "preferred_language=pt; q=1.0, en; q=0.5")
ou usar o pacote customizado (assumindo que a versão do URL seja p4.0pre.14):
Hypermedia -> URL -> Mime -> Mime Language String...
iCab
     Edit -> Preferences -> Browser -> Fonts,Languages
  
W3M
     Options (o) -> Other Behavior -> Accept-Language
  
Safari
O Safari usa o sistema de preferências do MacOS X para determinar seu idioma preferido:
    Preferências de sistema -> Internacional -> Idioma
  
ELinks
Você pode configurar o idioma default da interface em:
    Setup -> Language
  
Isto também irá alterar o idioma requisitado em sites web. Você pode alterar este comportamento e configurar a variável HTTP de idiomas aceitos em :
    Setup -> Options manager -> Protocols -> HTTP
  
Netscape 3.x
Adicionar
     *httpAcceptLanguage: [idioma_preferido]
  
ao app-defaults do Netscape ou ao ~/.Xresources
IBrowse
Vá em preferências (Preferences), Configurações (Settings), Rede (Network). Em "Accept language", um "*" provavelmente será exibido por padrão. Se você clicar no botão "Locale", ele deve adicionar seu idioma preferido. Caso contrário, você pode entrá-lo manualmente. Quando terminar, clique em "OK".
Voyager
Vá em Configurações (Settings), Idiomas (Languages). Você pode entrar manualmente ou clicar em "Obter do locale" ("Get from locale"). Clique em "OK" quando terminar.

Se você tem informações sobre como configurar um navegador que não está listado acima, por favor envie para debian-www@lists.debian.org.