Como funciona a tradução do OJS

A internacionalização do software é um recurso importante para que ele esteja disponível em diferentes países e amplie-se os potenciais usuários. Ser internacionalizado significa que o software adota recursos que permitem sua tradução em diferentes idiomas, especificamente, os termos que aparecem na interface do usuário ficam codificados de forma separada do código que contém a lógica do programa.

Diferentes formatos podem ser usados para armazenar os termos, como XLIFF e Gettext PO, além dos apresentados em http://docs.translatehouse.org/projects/translate-toolkit/en/latest/formats/ 

No caso do OJS, o Public Knowledge Project adota um formato XML próprio, onde os termos apresentados nas telas do OJS estão distribuídos em diferentes arquivos XML, localizados em pastas locale/pt_BR. Por exemplo, os arquivos principais do software estão em

<diretorio de instalação do OJS>/locale/pt_BR.

Nessa pasta é possível encontrar os arquivos mostrados na figura 1.

Figura 1: Arquivos XML com a tradução do OJS

Além destes, também existem termos dentro da pasta <diretorio de instalação do OJS>lib/pkp//locale/pt_BR.

Os termos estão dentro dos arquivos XML dentro da etiqueta <message>, identificados por uma chave de tradução, como o termo referente a edição atual da revista, “Atual”, contido na etiqueta de chave “navigation.current”.

Para alterar termos já traduzidos basta editar o conteúdo do arquivo XML.

A cada nova versão do OJS o PKP pode incluir novos termos em determinadas partes do software, ou então determinados plugins são implementados e incorporados a nova versão sem a tradução para o português.

Quando isso ocorre, os novos termos aparecem na forma de código mostrando a chave que está faltando. Por exemplo, o termo referente a chave “submission.submit.availableUserGroups”, que aparece na tela de submissão de artigos, como na figura  abaixo.

Há cometários sobre um script que permite identificar os termos que estão faltando:

http://forum.ibict.br/t/solucao-traducao-ojs-3-1-submission-list-filter/1185/20 e

https://www.dropbox.com/s/j1gs9600j7v872m/missing.txt?dl=0


Traduzindo o OJS

Para incluir a tradução da chave que está faltando, primeiramente é necessário descobrir seu conteúdo original em inglês e sua localização nos arquivos de tradução.

Isso pode ser feito com a busca pela chave de tradução nos arquivos de tradução da versão em inglês ou outra que já apresente o termo traduzido.

No Linux isso pode ser feito usando o comando:

grep -Ril "submission.submit.availableUserGroups" <diretorio de instalação do OJS>

Outra forma de descobrir qual o conteúdo e localização do termo a ser traduzida é buscando no código do repositório do PKP.

Por meio da busca ao termo “submission.submit.availableUserGroups”, é possível identificar que este está localizado no arquivo “submission.xml”, no pacote pkp/pkp-lib, correspondente a pasta <diretorio de instalação do OJS>lib/pkp, e contém o literal “Submit As”, que pode ser traduzido como “Enviar como”.

Assim a tradução arquivo da versão do termo em português deve ser inserido em <diretório de instalação do OJS>lib/pkp/locale/pt_BR/submission.xml

Assim, editamos o arquivo lib/pkp/locale/pt_BR/submission.xml.

Note que o termo aparece logo após a chave “submission.confirm.message”,sendo interessante adotarmos a mesma ordem na versão em português brasileiro. Assim, inserimos logo após esta chave, a nova chave “submission.submit.availableUserGroups” com seu conteúdo, como ilustrado na figura.

Pronto, agora o termo não traduzido deve aparecer na interface gráfica do usuário no local do código da chave anteriormente apresentada.

Pronto!

Enviando sua contribuição para a comunidade

Agora, pode ser interessante enviar sua versão da tradução para o repositório oficial do PKP.

  1. 1 Para incluir uma tradução ausente na versão em português brasileiro, vc deve criar uma conta no github https://github.com/;
  2. Ir até o repositorio do OJS https://github.com/pkp/ojs e criar um ‘fork’ da versão para a qual deseja contribuir.

  1. Isso irá criar uma cópia do código na qual você terá permissões de escrita.
  2. Agora é preciso baixar esse código na sua máquina para poder editá-lo. Isso é feito clonando o seu repositório localmente. Para isso obtenha a URL do seu repositório remoto, copiando a URL do botão “Clone or download”.

  1. Agora execute o comando git abaixo:

git clone https://github.com/<sigla do meu repositorio>/ojs.git

TO BE CONTINUED...