Integrando com Weblate

Básico do Weblate

Estrutura de projetos e componentes

No Weblate, as traduções são organizadas em projetos e componentes. Cada projeto pode conter vários componentes, os quais contêm traduções para idiomas individuais. O componente corresponde a um ficheiro traduzível (por exemplo, GNU gettext ou Recurso de cadeias de Android). Os projetos existem para ajudá-lo a organizar componentes em conjuntos lógicos (por exemplo, para agrupar todas as traduções usadas dentro de uma aplicação).

Internamente, cada projeto tem traduções para cadeias comuns propagadas em outros componentes dentro dele por predefinição. Isso alivia o fardo da tradução repetitiva e de várias versões. A propagação da tradução pode ser desativada por Configuração de componente a utilizar Permitir propagação da tradução caso as traduções devam divergir.

Importar projeto de localização para o Weblate

O Weblate foi desenvolvido com a integração VCS em mente como seu recurso principal, então a maneira mais fácil é conceder ao Weblate o acesso ao seu repositório. O processo de importação o guiará pela configuração das suas traduções em componentes.

Alternativamente, pode usar o Weblate para configurar um repositório local a conter todas as traduções sem integração.

Obtendo traduções atualizadas do Weblate

Para buscar cadeias atualizadas do Weblate, pode simplesmente buscar o repositório Git subjacente (tanto do sistema de ficheiros ou pode ser disponibilizado através de Exportador git). Antes disso, pode querer submeter quaisquer alterações pendentes (veja Commits adiados). Pode fazer isso na interface do utilizador (em Manutenção do repositório) ou na linha de comando a usar o Cliente Weblate.

Isso pode ser automatizado se conceder acesso push do Weblate ao seu repositório e configurar URL de submissão do repositório na Configuração de componente. Veja Fazendo push das alterações do Weblate.

Alternativamente, pode usar API REST do Weblate para atualizar as traduções para corresponder às suas versões mais recentes.

Buscando alterações remotas para o Weblate

Para buscar as cadeias recém-atualizados no seu repositório para o Weblate, apenas deixe-o fazer pull do repositório upstream. Isso pode ser feito na interface do utilizador (em Manutenção do repositório) ou na linha de comando a usar o Cliente Weblate.

Isso pode ser automatizado a configurar um webhook no seu repositório para acionar o Weblate sempre que houver um novo commit. Veja Atualizar repositórios para mais detalhes.

Se não estiver a usar uma integração VCS, pode usar a UI ou API REST do Weblate para atualizar as traduções para corresponder à sua base de código.

A adicionar novas cadeias

No caso que os seus ficheiros de tradução serem armazenados num VCS com o código, provavelmente tem um fluxo de trabalho existente para os programadores introduzirem novos textos. Qualquer forma de adicionar cadeias será escolhida, mas considere usar Portal de qualidade para cadeias fonte para evitar a introdução de erros.

Quando os ficheiros de tradução são separados do código, existem as seguintes maneiras de introduzir novas cadeias no Weblate.

Nota

A disponibilidade de adicionar cadeias no Weblate depende de Gerir cadeias.

Atualizar ficheiro de idioma de destino

Para ficheiros monolingues (veja Formatos de ficheiros suportados), o Weblate pode adicionar novas cadeias de tradução não presentes no Ficheiro de idioma base monolingue e não nas traduções reais. No entanto, ele não executa nenhuma limpeza automática de cadeias obsoletas, pois isso pode ter resultados inesperados. Se quiser fazê-lo, instale a extensão Limpeza de ficheiros de tradução que fará a limpeza conforme os seus requisitos.

Weblate também não tentará atualizar ficheiros bilíngues de nenhuma forma, então se precisar que os ficheiros po sejam atualizados de pot, precisa fazer isso sozinho a usar Métodos de importação de Atualizar cadeias fonte: ou a usar a extensão Atualizar ficheiros PO para coincidir com POT (msgmerge).

Managing version control repository

Weblate stores all translation the version control repository. It can be either connected to upstream one, or it can be only internal. The Repository maintenance lets you manipulate with the repository.

Dica

With Tradução contínua the repository is automatically pushed whenever there are changes and there is usually no need to manually manipupate with it.

../_images/component-repository.png

Following operations are available:

Commit

Commits any pending changes present in Weblate database and not in the repository, see Commits adiados.

Push

Pushes changes to the upstream repository, if configured by URL de submissão do repositório.

Update, Pull, Rebase

Updates Weblate repository with upstream changes. It uses Estilo de união when choosing Update or you can choose different one from the dropdown menu.

Lock

O bloqueio impede que os tradutores façam alterações

Reset from Maintenance

Resets any changes done in Weblate to match upstream repository. This will discard all translations done in Weblate and not present in the upstream repository.

Cleanup from Maintenance

Removes untracked files from the repository. These could be result of misbehaving add-ons or bugs.

Force synchronization from Maintenance

Forces writing all strings to the translation files. Use this when repository files became out of sync with Weblate for some reason.