# O Manual do &lokalize;

Nick
Shaforostoff

    shaforostoff@kde.ru

José
Pires

    zepires@gmail.com

Tradução
2007-2009
Nick Shaforostoff
&FDLNotice;
2009-05-09
1.0

O &lokalize; é um sistema de traduções auxiliadas pelo computador que se foca na produtividade e na garantia de qualidade. Tem os componentes normais neste tipo de ferramentas: memórias de traduções, glossários, assim como uma capacidade de junção de traduções única (a sincronização). Destina-se para a tradução de aplicações e também integra as ferramentas de conversão externa para tradução de documentos de escritório a regime 'freelance'.

&lokalize;
localização
l10n
internacionalização
i18n
tradução
globalização
g11n
XLIFF
gettext
OpenDocument
KBabel

## Introdução

Quando inicia o &lokalize; pela primeira vez, irá encontrar uma página de Visão Geral do Projecto. O fluxo do Lokalize implica que comece com a criação/abertura de um projecto.

Se estiver a trabalhar sozinho, é provável que esteja a traduzir um ficheiro em OpenDocument. Para o fazer, seleccione a opção Projecto Criar um novo projecto. O assistente perguntar-lhe-á o seu documento de origem, convertê-lo-á para o formato interno do &lokalize; - XLIFF -, e irá criar um projecto para o mesmo. Depois de terminar a tradução, escolha a opção Ferramentas Juntar no ODF para integrar a sua tradução com uma cópia do documento original.

Se estiver a fazer traduções para o KDE, então ou terá já um ficheiro de projecto do &lokalize; na sua pasta de línguas (normalmente chamado `index.lokalize`), ou então poderá seleccionar a opção Projecto Criar um projecto novo, para que o assistente comece a transferir os ficheiros de traduções para a sua língua, criando depois um projecto para si.

Os ficheiros de traduções são abertos numa página separada, com dois editores multi-linhas grandes, assim como um conjunto de janelas ou áreas de ferramentas. Estas áreas poderão ser empilhadas (como se fossem páginas), mostradas em separado ou escondidas. Os ficheiros de traduções consistem em diversos pares Inglês-alvo chamadas unidades. As unidades correspondem tipicamente a um texto simples na interface do utilizador ou a um parágrafo na documentação. O intuito do primeiro campo multi-linhas é mostrar a parte original do par. O intuito do segundo é mostrar a tradução. O utilizador poderá navegar pelas unidades, através das Unidades de Tradução ou usando as teclas Page Down e Page Up.

Recomenda-se que se habitue aos atalhos de teclado, em vez dos menus e das barras de ferramentas, para uma produtividade melhorada. Por exemplo, use a combinação de teclas &Ctrl;L para colocar em primeiro plano a linha de Pesquisa rápida para filtrar a lista de itens na área de Unidades de Tradução. Assim que terminar, poderá carregar em Page Down para começar a percorrer a lista filtrada.

Uma unidade poderá estar traduzida ou não-traduzida. A tradução de uma unidade traduzida poderá estar aprovada ou não-aprovada (também chamada de aproximada ou fuzzy). Se a unidade não estiver aprovada, a sua tradução aparece a itálico. O &lokalize; permite-lhe navegar facilmente pelo estado da sua tradução. Veja o menu Ir para saber os atalhos. Ao navegar, as unidades não-traduzidas são tratadas como não-aprovadas. Do mesmo modo, poderá querer usar a funcionalidade de filtragem da área de ferramentas da Unidades de Tradução. Se carregar em Page Down, irá de facto para a unidade seguinte na lista de filtragens/ordenações dessa área de ferramentas.

Se estiver a trabalhar com ficheiros de traduções no formato XLIFF (que será de facto o caso ao traduzir de ficheiros OpenDocument), então poderá ter outros estados possíveis (novo, necessita de revisão, aprovado, &etc;). A classificação do estado como estando pronto ou não-pronto depende da fase actual do fluxo (tradução, revisão, aprovação). Uma fase predefinida para si depende do seu papel no projecto (definido na configuração do mesmo). Cada unidade normalmente contém informações acerca da fase em que foi alterado da última vez, sendo também registado o dono de cada fase no ficheiro.

## Projectos

Os projectos são um dos conceitos principais no &lokalize;. Um projecto é representado por um ficheiro que contém as pastas com as traduções, os modelos e outros ficheiros: o ficheiro do glossário, os programas de automação e as memórias de tradução. Sempre que o &lokalize; abre um ficheiro sem nenhum projecto carregado, irá procurar por um ficheiro de projecto nas pastas-mãe (até quatro níveis). Em alternativa, poderá indicar o ficheiro do projecto com a opção `--project` ao iniciar o &lokalize; a partir da linha de comandos.

Para cada projecto no qual seleccione o seu papel nele (tradutor, revisor, aprovador), que irá afectar por sua vez uma fase do fluxo, o &lokalize; irá automaticamente recolher os ficheiros que editar.

As memórias de traduções (ao contrário dos ficheiros do projecto, o glossário e os programas) não são partilhadas entre os membros da equipa de tradução, dado que são criados e guardados na pasta pessoal do utilizador, o que significa que as memórias de tradução para todas as pessoas do projecto são guardadas na mesma pasta, pelo que poderão ser usadas quando abrir outros projectos.

### Página da Visão Geral do Projecto

A página de Visão Geral do Projecto mostra uma árvore de ficheiros com estatísticas para o projecto actual, como a percentagem das unidades traduzidas e o último tradutor. Permite-lhe abrir um ficheiro seleccionado numa página nova da janela actual do &lokalize;.

## Glossário

Já alguma vez se cansou de escrever a mesma sequência longa de texto várias vezes, simplesmente porque levaria mais tempo a procurar a sua tradução para a copiar e colar? Agora só terá de encontrar a sequência (frequente) de palavras na Área do Glossário e depois inseri-la com uma combinação de teclas.

Obviamente, o glossário já deverá estar preenchido primeiro com as tais sequências de palavras. O &lokalize; tem um editor de glossários útil que permite uma pesquisa explícita por todo o glossário.

A área do glossário, no canto inferior direito, mostra os itens do glossário adequados para a unidade actual
A área do glossário, no canto inferior direito, mostra os itens do glossário adequados para a unidade actual

## Memória de Traduções

A área das Memórias de Traduções permite-lhe arrastar e largar uma pasta com ficheiros de traduções, proveniente por exemplo do Dolphin, sobre a área para que, ao fim de alguns minutos, apareçam as sugestões de traduções automaticamente para cada item de mensagem. Para inserir as sugestões de traduções no ficheiro, use a combinação &Ctrl;1, &Ctrl;2 e assim por diante, dependendo do número da sugestão.

Se carregar em F7, irá abrir a página da Memória de Traduções, que lhe permite pesquisar à vontade nesta memória. Se carregar num resultado de uma pesquisa, irá abrir o ficheiro e item correspondentes. Se quiser abrir rapidamente um outro ficheiro no projecto (e o adicionar à memória de traduções), então em vez de seleccionar a Visão Geral do Projecto, poderá escrever o seu nome no campo Máscara de ficheiros, acompanhado por um '*'.

O motor da memória de traduções indexa todos os itens, incluindo os aproximados e não-traduzidos. Isto permite-lhe substituir por completo a funcionalidade de Procurar-nos-Ficheiros, que obrigava a que cada ficheiro fosse analisado no projecto, sempre que fosse feita uma pesquisa.

O &lokalize; com o resultado das pesquisa na memória de traduções para a unidade actual
O &lokalize; com o resultado das pesquisa na memória de traduções para a unidade actual

## Capacidades de Sincronização das Traduções

O Modo de Sincronização (anteriormente conhecido como Modo de Reunião) poupa bastante tempo para os editores e para os casos em que dois ou mais tradutores estão a trabalhar em simultâneo no mesmo ficheiro ou a manter traduções ramificadas em várias versões.

O &lokalize; permite a navegação rápida pelas unidades que diferem, mostrando as diferenças palavra por palavra. Do mesmo modo, o &lokalize; tem duas áreas de Sincronização - Sincronização Primária e Sincronização Secundária. São idênticas, mas a primeira é normalmente usada para reunir as traduções e a segunda para sincronizar as traduções entre duas ramificações do 'software'.

Depois de ter copiado a tradução do ficheiro auxiliar (a ter sincronizado), todas as alterações subsequentes nesta unidade replicar-se-ão no ficheiro auxiliar.

### Reunião

Uma utilização do Modo de Sincronização é a revisão das alterações feitas pelos (novos) contribuintes, na altura em que não se pode certificar da qualidade do trabalho feito.

Abra um ficheiro de base, depois largue a sua versão alterada na área Sincronização Primária, seguida de &Alt;Baixo ou &Alt; Cima (lembre-se que as combinações de teclas podem ser, como acontece nas outras aplicações do &kde;, alteradas a seu gosto) para navegar pelos itens que são diferentes.

O &lokalize; usado para reunir as alterações na tradução
O &lokalize; usado para reunir as alterações na tradução

### Replicação

O Modo de Sincronização também pode ser usado para efectuar alterações nas traduções de duas ramificações em simultâneo. Defina a Pasta da Ramificação nas suas opções de projecto como sendo a pasta de base da ramificação, para que a área de Sincronização Secundária abra automaticamente os ficheiros da ramificação. A partir daí, sempre que alterar os ficheiros na sua ramificação principal, estes serão automaticamente replicados na ramificação (obviamente, se esta conter o mesmo texto em Inglês).

Por exemplo, se trabalhar nas traduções do KDE, poderá transferir o 'trunk' para `/home/ze/trabalho/kde/trunk/l10n-kde4/A_SUA_LÍNGUA` e a ramificação estável 'branch' para `/home/ze/trabalho/kde/branches/stable/l10n-kde4/A_SUA_LÍNGUA`. Crie o projecto do &lokalize;: `/home/ze/trabalho/kde/trunk/l10n-kde4/A_SUA_LÍNGUA/projecto.ktp` e definida a `BranchDir=../../../branches/stable/l10n-kde4/A_SUA_LÍNGUA`, podendo depois trabalhar através deste projecto e efectuar as alterações em ambas as pastas.

### Traduções Alternativas

Cada unidade poderá ter várias traduções alternativas associadas a ele. Essas traduções poderão aparecer durante a actualização dos ficheiros, quando o texto original é ligeiramente alterado. Nesse caso, a tradução antiga, em conjunto com o seu texto original (antigo) passará para a lista de traduções alternativas, para que estas não se percam.

Ao traduzir das aplicações, normalmente são usadas as ferramentas do 'gettext' para preparar os ficheiros de traduções. Quando o texto original muda, as ferramentas do 'gettext' actualizam os ficheiros das traduções e marcam os seus elementos com o texto original alterado como sendo fuzzy (ou aproximada noutra terminologia). Eles guardam o texto original, para que os tradutores possam ver as alterações que foram exactamente feitas ao certo. O &lokalize; simplifica a vida do tradutor e realça as partes do texto original que foram alteradas na área de Traduções Alternativas.

O &lokalize; a realçar as partes do texto original que foram alteradas desde que a tradução foi revista da última vez
O &lokalize; a realçar as partes do texto original que foram alteradas desde que a tradução foi revista da última vez

## Programar o &lokalize;

O &lokalize; é extensível através de programas feitos em várias linguagens interpretadas, incluindo o Python e o JavaScript. Os programas são normalmente integrados na interface do &lokalize; como itens do menu (para os quais poderá ter atribuído um atalho do teclado). A localização e o nome do item do menu para o programa é definida no seu ficheiro '.rc' associado. Em cada projecto aberto, o &lokalize; analisa a pasta `PROJECTDIR/lokalize-scripts` à procura de ficheiros '.rc' e adiciona-os a um ficheiro de cache chamado `PROJECTDIR/lokalize-scripts/scripts.rc` (de modo a que não o adicione ao sistema de controlo de versões do projecto). Os ficheiros RC também contêm localizações de programas, os quais poderão ser relativos à pasta do ficheiro '.rc' ou a uma dada pasta de programas do sistema - ambos os casos serão tentados (de facto, eles deverão ser relativos, se quiser partilhar o ficheiro '.rc' com outras pessoas no seu projecto). Por exemplo, poderá indicar `../../scripts/lokalize/opensrc.py` para carregar o programa da pasta global de programas do 'kde4-l10n' (&ie;, não sendo específico para a sua língua).

Poderá encontrar alguns exemplos de ficheiros '.rc' na pasta de instalação do &lokalize; (normalmente em `/usr/share/kde4/apps/lokalize/scripts/`) e no repositório do KDE. Aqui poderá encontrar mais exemplos de programas, incluindo o programa `check-gui.js`, em JavaScript, que é executado automaticamente na gravação de cada ficheiro. Se estiver à vontade com o Python ou o JavaScript, o código deverá ser intuitivo o suficiente.

Por baixo, estão as referências à API. Tudo o que estiver marcado como Q_SCRIPTABLE poderá ser usado a partir dos programas.

- Referência da API do objecto Editor

- Referência da API do objecto Lokalize

- Referência da API do objecto Project

## Créditos e Licença

&lokalize;

Programa com 'copyright' © 2007-2009 de Nick Shaforostoff shaforostoff@kde.ru

Algum código foi retirado do &kbabel;, o antecessor do &lokalize;.

Documentação com 'copyright' © 2007-2009 de Nick Shaforostoff shaforostoff@kde.ru

Autor:

- Nick Shaforostoff shaforostoff AT kde.ru

Veja a página pessoal do &lokalize; para mais detalhes.

Tradução de José Nuno Pires zepires@gmail.com

&underFDL; &underGPL;

&documentation.index;