XLIFF 1.1 e 1.2

Nota

XLIFF 2.0 é um formato diferente e não é compatível com a versão anterior XLIFF 1.2.

Formato baseado em XML criado para padronizar ficheiros de tradução, mas no final é um dos muitos padrões, nesta área.

XML Localization Interchange File Format (XLIFF) é normalmente utilizado como bilíngue, mas Weblate também o suporta como monolíngue.

O Weblate tem suporte a XLIFF em várias variantes:

Ficheiro de tradução XLIFF 1.2

Standard XLIFF file. Placeables handling is controlled by the xliff_placeables Parâmetros de formato de ficheiro.

XLIFF 1.2 com complementos gettext

XLIFF enriquecido pelo XLIFF 1.2 Representation Guide for Gettext PO para oferecer suporte a plurais.

XLIFF 1.2 com extensões Apple

XLIFF enriquecido pela Apple para suportar plurais.

Estados de tradução

O atributo state no ficheiro é parcialmente processado e mapeado para o estado «Necessita de edição» no Weblate (os estados seguintes são utilizados para marcar a cadeia como a necessita de edição se houver um alvo presente: new, needs-translation, needs-adaptation, needs-l10n). Caso o atributo state falte, uma cadeia é considerada traduzida assim que um elemento <target> existir.

Se a cadeia de tradução tiver approved="yes", ela também será importada para a Weblate como «Aprovado», qualquer outra coisa será importada como «Aguarda revisão» (que corresponde à especificação XLIFF).

Ao gravar, o Weblate não adiciona esses atributos a menos que seja necessário:

  • O atributo state só é adicionado no caso da cadeia ser marcada como a necessitar de edição.

  • O atributo approved só é adicionado no caso da cadeia ter sido revista.

  • Em outros casos os atributos não são adicionados, mas são atualizados no caso de estarem presentes.

Isso significa que, ao utilizar o formato XLIFF, é fortemente recomendado ativar o processo de revisão do Weblate, de modo a ver e alterar o estado aprovado de cadeias.

Da mesma forma, ao importar tais ficheiros (no formulário de envio), deve escolher Importador como traduzido em A processar as cadeias que necessitam de edição.

Veja também

Revisores dedicados

Espaços em branco e novas linhas em XLIFF

Weblate controls how whitespaces are handled with the xml_whitespace_handling Parâmetros de formato de ficheiro for XLIFF components:

  • Follow xml:space — honor xml:space attributes in the file (and the XLIFF default when the attribute is missing).

  • Always preserve — keep all whitespace and set xml:space="preserve" on units (Weblate’s default for new units).

  • Always normalize — collapse whitespace even when the file sets xml:space="preserve".

To keep newlines or surrounding spaces when following xml:space, mark the string with xml:space="preserve":

    <trans-unit id="10" approved="yes">
        <source xml:space="preserve">hello</source>
        <target xml:space="preserve">Hello, world!
</target>
    </trans-unit>

Placeables in XLIFF

Weblate controls how XML elements inside XLIFF content are handled with the xliff_placeables Parâmetros de formato de ficheiro:

  • Plain text — escape XML elements in the content.

  • Placeables — preserve placeables and other XML elements (the default). Tags then appear as placeholders in the editor.

Especificação de bandeiras de tradução

Pode especificar marcadores de tradução adicionais (veja Personalizando comportamento a usar marcadores) a utilizar o atributo weblate-flags. Weblate também entende os atributos maxwidth e font da especificação XLIFF:

<trans-unit id="10" maxwidth="100" size-unit="pixel" font="ubuntu;22;bold">
   <source>Hello %s</source>
</trans-unit>
<trans-unit id="20" maxwidth="100" size-unit="char" weblate-flags="c-format">
   <source>Hello %s</source>
</trans-unit>

O atributo fonte é analisado para a família de fontes, tamanho e peso, o exemplo acima mostra tudo isso, embora apenas a família de fontes seja necessária. Qualquer espaço em branco na família de fontes é convertido para sublinhado, então Source Sans Pro torna-se Source_Sans_Pro, por favor tenha isso em mente ao nomear o grupo de fontes (veja Gerir letras).

Chaves de cadeias

Weblate identifica as unidades no ficheiro XLIFF pelo atributo resname no caso de estar presente e, do contrário, recorre a id (junto com a tag file se presente).

O atributo resname deveria ser um identificador humanamente amigável da unidade, a tornar-a mais adequada para a exibição de Weblate em vez de id. O resname tem de ser único em todo o ficheiro XLIFF. Isto é exigido pelo Weblate e não é coberto pelo padrão XLIFF – não coloca nenhuma restrição de exclusividade neste atributo.

Ficheiro de exemplo

Exemplo de ficheiro XLIFF:

<?xml version='1.0' encoding='UTF-8'?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.1">
    <file>
        <body>
            <trans-unit weblate-flags="c-format, max-length:100">
                <source xml:space="preserve">Hello, world!
</source>
            </trans-unit>
            <trans-unit>
                <source xml:space="preserve">Orangutan has %d banana.
</source>
            </trans-unit>
            <trans-unit>
                <source xml:space="preserve">Try Weblate at &lt;https://demo.weblate.org/&gt;!
</source>
            </trans-unit>
            <trans-unit>
                <source>Thank you for using Weblate.</source>
            </trans-unit>
        </body>
    </file>
</xliff>
Recursos suportados

Extensões de ficheiro

.mxliff, .poxliff, .sdlxliff, .xlf, .xliff

Lingualidade ⓘ

Ambos monolingue e bilingue

Suporta plural ⓘ

Yes

Suporta descrições ⓘ

Yes

Suporta explicação ⓘ

No

Suporta contexto ⓘ

Yes

Suporta localização ⓘ

Yes

Suporta marcadores ⓘ

Yes

Estados adicionais ⓘ

Approved, Needs editing

Identificador API

apple-xliff, poxliff, xliff

Suporta cadeias de carateres apenas de leitura ⓘ

Yes

Suporta a remoção de cadeias de careteres obsoletas ⓘ

No

Configuração do Weblate

Configuração de componente típica do Weblate para XLIFF bilíngue

Máscara de ficheiros

localizations/*.xliff

Ficheiro de idioma base monolingue

Vazio

Modelo para novas traduções

localizations/en-US.xliff

Formato de ficheiro

Ficheiro de tradução XLIFF

Configuração de componente típica do Weblate para XLIFF monolíngue

Máscara de ficheiros

localizations/*.xliff

Ficheiro de idioma base monolingue

localizations/en-US.xliff

Modelo para novas traduções

localizations/en-US.xliff

Formato de ficheiro

Ficheiro de tradução XLIFF