• Home
  • Adicionar um novo idioma de interface ao ONLYOFFICE Docs no Linux

Adicionar um novo idioma de interface ao ONLYOFFICE Docs no Linux

Introdução

A interface do ONLYOFFICE Docs está disponível em diversos idiomas, mas pode ocorrer do seu idioma nativo estar ausente da lista oficial. Se for este o caso e você tiver o interesse de participar da tradução da interface para o seu idioma, será necessário testar a aplicação localmente para verificar se tudo foi traduzido corretamente e se as palavras e frases se encaixam de forma adequada no layout dos menus.

Este artigo explicará como você pode realizar a injeção de idiomas e o teste desse procedimento no ambiente Linux.


Participando da tradução

Existem duas maneiras oficiais de contribuir com o processo de tradução e localização do ecossistema:

  • Traduzir o ONLYOFFICE Docs (juntamente com o ONLYOFFICE Workspace e o ONLYOFFICE Mail, caso queira) utilizando o nosso Sistema de Tradução online. O processo é bastante simples. Assim que a tradução for concluída, os arquivos de idioma da interface serão incluídos na compilação do próximo lançamento oficial (release). Também podemos enviá-los previamente para você homologar de forma isolada. Se você gostaria de participar ativamente, sinta-se à vontade para entrar em contato conosco através do e-mail documentation@onlyoffice.com.
  • Alternativamente, você pode usar o nosso repositório do GitHub para baixar os arquivos brutos de idioma e traduzi-los utilizando o editor de sua preferência. Os arquivos de localidade (locale) estão organizados nos seguintes caminhos estruturais:

    Document Editor (Editor de Textos)

    Presentation Editor (Editor de Apresentações)

    Spreadsheet Editor (Editor de Planilhas)

    Existem arquivos estruturados no formato JSON correspondentes a cada um dos idiomas suportados pelo sistema. Você pode corrigir os arquivos já existentes (via pull request) ou criar um novo arquivo de idioma nomeado estritamente com o código ISO de localidade de duas letras (por exemplo: pt.json).

Verificando arquivos traduzidos no servidor

Para realizar as verificações visuais (homologação), instale a versão de servidor do ONLYOFFICE Docs em uma máquina local. As instruções de instalação passo a passo estão disponíveis aqui para Ubuntu e derivados ou aqui para distribuições baseadas em RPM.

Se você utilizou o nosso sistema online fechado de tradução, entre em contato enviando um e-mail para documentation@onlyoffice.com solicitando que exportemos e enviemos os seus arquivos compilados para o seu endereço.

Assim que tiver os arquivos JSON da interface em mãos, posicione-os seguindo esta árvore de diretórios no seu servidor:

Document Editor

  • documentserver/web-apps/apps/documenteditor/main/locale
  • documentserver/web-apps/apps/documenteditor/mobile/locale

Presentation Editor

  • documentserver/web-apps/apps/presentationeditor/main/locale
  • documentserver/web-apps/apps/presentationeditor/mobile/locale

Spreadsheet Editor

  • documentserver/web-apps/apps/spreadsheeteditor/main/locale
  • documentserver/web-apps/apps/spreadsheeteditor/mobile/locale

Nota: O caminho base documentserver citado acima corresponde fisicamente à pasta principal de instalação do ONLYOFFICE Docs no seu sistema host.

Atenção: Caso tenha optado pela instalação através de contêineres virtuais, lembre-se de que precisará entrar na sessão de terminal (shell) internamente no contêiner Docker para conseguir mapear e modificar esses arquivos ou pastas de destino.

Após injetar os arquivos de idioma, abra o portal web, inicie qualquer documento e adicione manualmente a sintaxe ?lang=seu_codigo_de_idioma como parâmetro na URL exibida na barra de endereços do navegador.

Exemplo prático de chamada: Para forçar o roteamento e abrir os editores utilizando o idioma búlgaro recém-adicionado, defina o parâmetro no final da URL da seguinte maneira:
?lang=bg

Se os arquivos estiverem íntegros, você notará a interface dos editores recarregar e injetar instantaneamente as strings renderizadas da sua tradução.


Atualizando arquivos traduzidos e invalidando caches

Sempre que você revisar ou corrigir alguma linha da sua tradução (ou após a aplicação de patches e atualizações no ONLYOFFICE Docs), será necessário substituir os arquivos `.json` e recarregá-los na instância do servidor web. Como as linguagens de interface são armazenadas ativamente na memória cache para acelerar o desempenho de carregamento dos clientes, você e os demais usuários do servidor não visualizarão as modificações até que o cache do proxy seja devidamente invalidado (flushed).

Isso deve ser feito da seguinte maneira:

Privilégios Administrativos: Todas as ações e comandos de execução abaixo devem ser feitos com acesso root dentro do contêiner Docker ou da máquina hospedeira configurada.
  1. No terminal do servidor, localize e edite os arquivos de diretiva estática em /etc/nginx/includes/ds-docservice.conf e em /etc/nginx/includes/ds-spellchecker.conf.
  2. Estes arquivos de conf mantêm ativas variáveis de data e tempo usadas no build. Altere essas strings de valor numérico para qualquer outro valor livre (a única regra é que a string deve ser exatamente a mesma em todas as substituições).
    Mapeamento da Variável: Você precisa localizar e substituir absolutamente todas as instâncias desses valores numéricos dentro dos arquivos NGINX acima. Para visualizar um modelo claro de como essa configuração se apresenta estruturalmente, consulte os mockups dos arquivos ds-docservice.conf e ds-spellchecker.conf no repositório do GitHub. Qualquer campo gerado nativamente pela variável {{DATE}} na compilação representa os valores exatos de data e hora que devem ser reescritos manualmente para forçar a quebra do cache estático.
  3. Reinicie o serviço daemon do NGINX para aplicar as novas regras:
    sudo service nginx reload

Pronto. Depois de injetar o comando de recarregamento, as informações cacheadas serão purgadas e todos os terminais do servidor já estarão com as traduções mais recentes refletidas de forma persistente.

Artigo com o tag:
Veja todas as etiquetas