# Guia de tradução do Moodle

Traduzir o Moodle não é tão difícil, mas é bom que você saiba algumas coisas antes de começar.

## Estrutura de um pacote de linguagem do Moodle

Todos os pacotes de linguagem do Moodle são localizados no diretório lang, com cada linguagem em um diretório específico com o nome abreviado da linguagem (pt_br, pt, en, fr, nl, es ...).

Todos os arquivos principais estão neste diretório, com extensão .php (ex.: moodle.php, resource.php etc). . Estes arquivos contêm expressões curtas, geralmente chamadas de "strings".

Poderá haver também algumas pastas contendo páginas HTML:

- help: contendo os arquivos de ajuda sensíveis ao contexto que aparecem quando se clica nos ícones de ajuda em todo o Moodle.
- docs: contendo as páginas básicas de documentação (como esta!)

## Criando um pacote de linguagem completamente novo

Se a sua língua ainda não é suportada pelo Moodle ou se você quiser fazer algumas adaptações na interface do seu site, você pode querer iniciar uma nova tradução.

Tudo que você precisa fazer é criar uma nova pasta no diretório lang utilizando o código da sua língua com as duas letras padrão. Você poderá encontrar estas letras padrão em lib/languages.php. Se você estiver realizando uma alteração pontual da sua língua utilize o código da sua língua com um underscore( _ ) e uma extensão significativa de duas letras (ex.: pt para o português de Portugal e pt_br para o pacote de linguagem do português brasileiro). Se você estiver fazendo uma versão para Unicode adicione _utf8 no final (ex.: sr_utf8).

A seguir, crie na sua pasta de linguagem o arquivo "moodle.php", contendo as seguintes linhas:
`<?PHP
$string['thischarset'] = 'iso-8859-1';
$string['thisdirection'] = 'ltr';
$string['thislanguage'] = 'new language pack';
?>`
ou copie o arquivo moodle.php de outra linguagem no seu novo diretório. Aquele da pasta "en" geralmente é o melhor, mas isto não importa já que você irá sobrescrevê-lo. Quando se cria um arquivo moodle.php novo, há a vantagem de começar com um pacote de linguagem completamente novo e vazio.

Agora você está pronto para inserir novas strings editando a sua linguagem... veja abaixo detalhadamente como fazer isto.

Para um novo pacote de linguagem, a primeiríssima coisa que você precisa fazer é editar a string denominada "thischarset" no arquivo moodle.php. Precisa conter os caracteres válidos da sua linguagem. Após você mudar essa string, salve o arquivo moodle.php e então recarregue a página. . Você poderá então continuar com o restante das strings.

## Editando um pacote de linguagem existente

### Fazendo pequenas adaptações

Se você quer modificar apenas poucas coisas na sua interface para que a interface do seu site seja personalizada, não edite os pacotes de linguagem padrão. Pois se assim o fizer as mudanças serão sobrescritas na próxima vez que você fizer a atualização para uma nova versão do Moodle.

Ao invés disso, utilize as instruções acima para construir um pacote de linguagem inteiramente novo e configurar o atributo parent language (no arquivo moodle.php) para a linguagem mais semelhante à sua. Por exemplo: um bom nome para a versão português brasileiro local seria "pt_br_local", e o atributo parent language (linguagem associada) seria "pt_br".

Observe que para que todos visualizem este novo pacote de linguagem você terá que seleciona-lo como a linguagem padrão do site e restringir as outras linguagens disponíveis em Administração >> Configuração >> Variáveis.

### Como traduzir os arquivos de linguagem do Moodle (os arquivos que contêm "strings")

1. Faça o Login no seu servidor de Moodle como administrador.
2. Vá para Administração >> Configuração >> Idioma , que é a página de administração das linguagens.
3. Nesta página, você poderá escolher a sua linguagem a partir do menu, então escolha "Compare e Edite a Linguagem".
4. Você deverá visualizar telas aonde você poderá editar cada arquivo. Se não conseguir editá-los, assegure-se de que os arquivos tenham permissão de escritura.
5. As telas consistem em três colunas, a primeira contém o nome de cada string, a segunda o valor da string em Inglês e a última é a tradução na linguagem atual.
6. Edite as strings vazias em cada arquivo (evidenciadas em uma outra cor), lembrando de clicar no botão "Salvar mudanças" no fim de cada tela.
7. Strings poderão ser deixadas vazias - O Moodle simplesmente buscará o valor desta string na linguagem pai definida no arquivo moodle.php. Caso você não defina a linguagem mãe no moodle.php, a linguagem adotada será o Inglês.
8. Uma maneira rápida de verificar todas as strings que faltam traduzir é através do botão "Verifique se estão faltando expressões". Deixe as strings não traduzidas completamente vazias ou esta útil ferramenta não funcionará.

### Como traduzir os arquivos de ajuda e de documentação

O Moodle 1.4 não possui um editor para tradução dos arquivos de ajuda, mas na versão 1.5 é possível editar os documentos html de ajuda e documentação online. É importante utilizar o pacote de linguagem en como referência. Se você ainda não atualizou o seu Moodle ou prefere utilizar outros programas para traduzir os documentos, copie o arquivo de ajuda do pacote de linguagem en e cole-o no mesmo local relativo do seu pacote de linguagem. Então utilize um editor de texto simples para traduzi-lo, com o cuidado de não modificar nenhum código (geralmente não há outro código a não ser tags HTML, xhtml e php). (Não utilize um processador de texto para escrever arquivos de ajuda porque estes programas adicionam muita codificação desnecessária aos arquivos).
Não deixe arquivos de ajuda não traduzidos no seu pacote de linguagem.

Cuidado ao escrever em arquivos compatíveis com XHTML. Resumidamente, isto significa:

- Todas as tags deverão estar fechadas: <p>lalala</p>
- Todos os elementos deverão estar aninhados: <p> lalala <em>lalala</em> </p>
- Todos os elementos e atributos deverão ser escritos em letras minúsculas.
- Todos os atributos deverão ser escritos por extenso e entre aspas duplas : <p align="right"> lalala </p>
- Elementos vazios precisam ser terminados com />: <br /> <hr />. Coloque um espaço antes do símbolo "/" .
- Uma tag <img deverá possuir um atributo alt="" (pode ser deixado vazio) e tem que ser fechada como todos os outros elementos vazios com espaço e /> como <img alt="" src="picture.gif" />
- As tags <?= e <? deverão ser <?php
- Não poderá haver tags FONT de forma alguma. <p><em> <h1> <h2> etc deverão ser o bastante para arquivos de ajuda ...
- O nome da linguagem no pacote de linguagem ($string['thislanguage'] no arquivo moodle.php) deverá geralmente utilizar caractere de referência Unicode Numeric Character References (NCR) se possível, porque isto permite que o nome funcione em QUALQUER contexto de codificação (veja o pacote chinês como exemplo).

Nenhum dos arquivos da pasta de ajuda precisa de atributos doc type, html, body, head abrindo e fechando tags - estes atributos já estão no arquivo help.php. Este script cuidará de formatar as páginas. Isto significa que não há muito espaço para criatividade com HTML! Por favor veja o exemplo da ajuda em Inglês.

Os arquivos da pasta docs têm que ser totalmente compatíveis com XHTML, incluindo doc type, header etc.

Clicando em "Verifique se estão faltando expressões" na tela de administração também serão mostrados os arquivos que estão faltando. Se houver arquivos faltando então o Moodle utilizará os arquivos da linguagem associada. Porisso não deixe cópias de arquivos de ajuda não traduzidos no seu pacote de linguagem ou esta útil ferramenta não funcionará.

## Submetendo o seu pacote de linguagem ao projeto Moodle

Ao compartilhar a sua tradução com o projeto Moodle você contribui com outras pessoas que falam a sua língua. A sua interface fará parte de futuras versões do Moodle.

Simplesmente compacte todo o diretório da sua nova linguagem ou os arquivos pt_br atualizados em formato zip e envie-o para paula@dynamiclab.com .

A comunidade agradece a sua contribuição.

Lista de controle antes do envio:

- Não há arquivos vazios?
- Não há arquivos ou strings não traduzidas?
- Os Arquivos de ajuda não foram traduzidos com processador de texto?
- O arquivo README contém o nome, a língua e o email do tradutor?
- O nome da pasta é o código padrão da língua (verifique em moodle\lib\languages.php)?
- O pacote foi testado em um site sem erros?
- Quando a string "thislanguage" contém letras que não sejam latinas, é escrita em notação NCR?
- Todas as strings e os arquivos são compatíveis com XHTML?

## Manutenção de um pacote de linguagem padrão

Se você tem o compromisso de manter uma linguagem no Moodle, é melhor utilizar o Moodle CVS de forma que você sempre tenha uma versão atualizada do Moodle.

Você precisa também inscrever-se em Languages Forum para obter novidades e discussões sobre assuntos que afetam traduções.

Finalmente, para manter-se em contato com as alterações no projeto Moodle diariamente é uma boa idéia se inscrever no CVS mailing list. Isto ajuda a manter a sua tradução tão próxima do Inglês quanto possível.

Documentação do Moodle

Versão: $Id$