Identificação dos arquivos a serem analisados

A seção /filter do arquivo i18n.any identifica os arquivos que a ferramenta xgettext-maven-plugin analisa. Adicione várias regras de inclusão e exclusão que identificam arquivos que são analisados e ignorados, respectivamente. Você deve incluir todos os arquivos e, em seguida, excluir os arquivos que não deseja analisar. Normalmente, você exclui tipos de arquivos que não contribuem para a interface do usuário ou arquivos que definem a interface do usuário, mas não estão sendo traduzidos. As regras de inclusão e exclusão têm o seguinte formato:

{ /include "pattern" }
{ /exclude "pattern" }

A parte do padrão de uma regra é usada para corresponder aos nomes dos arquivos a serem incluídos ou excluídos. O prefixo de padrão indica se você está correspondendo a um nó JCR (sua representação no Vault) ou ao sistema de arquivos.

PrefixoEfeito
/Indica um caminho JCR. Portanto, esse prefixo corresponde arquivos abaixo do diretório jcr_root.
*Indica um arquivo regular no sistema de arquivos.
nenhumaNenhum prefixo ou padrão que começa com uma pasta ou nome de arquivo indica um arquivo normal no sistema de arquivos.

Quando usado em um padrão, o caractere / indica um subdiretório e o &último; corresponde a todos. A tabela a seguir lista vários exemplos de regras.

Exemplo de regraEfeito
{ /include "*" }Inclua todos os arquivos.
{ /exclude "*.pdf" }Exclua todos os arquivos PDF.
{ /exclude "*/pom.xml" }Exclua arquivos POM.
{ /exclude "/content/*" } { /include "/content/catalogs/geometrixx/templatepages" } { /include "/content/catalogs/geometrixx/templatepages/*" }

Exclua todos os arquivos abaixo do nó /content.

Inclua o nó /content/catalogs/geometrixx/templatepages .

Inclua todos os nós secundários de /content/catalogs/geometrixx/templatepages.

Extração das cadeias de caracteres

Sem POM:

mvn -N com.adobe.granite.maven:xgettext-maven-plugin:1.2.2:extract  -Dxgettext.verbose=true -Dxgettext.target=out -Dxgettext.rules=i18n.any -Dxgettext.root=.

Com POM: Adicione ao POM:

<build>
    <plugins>
        <plugin>
            <groupId>com.adobe.granite.maven</groupId>
            <artifactId>xgettext-maven-plugin</artifactId>
            <version>1.1</version>
            <configuration>
                <rules>i18n.any</rules>
                <root>jcr_root</root>
                <xliff>cq.xliff</xliff>
                <verbose>true</verbose>
            </configuration>
        </plugin>
    </plugins>
</build>

o comando:

mvn xgettext:extract

Arquivos de saída

  • raw.xliff: strings extraídas

  • warn.log: avisos (se houver), se CQ.I18n.getMessage() A API é usada incorretamente. Eles sempre precisam de uma correção e, em seguida, uma nova execução.

  • parserwarn.log: avisos do analisador (se houver), por exemplo problemas do analisador js

  • potentials.xliff: candidatos "potenciais" que não são extraídos, mas podem ser strings legíveis para humanos que precisam de tradução (podem ser ignorados, ainda produzem uma enorme quantidade de falsos positivos)

  • strings.xliff: arquivo xliff nivelado, a ser importado para ALF

  • backrefs.txt: permite pesquisa rápida de locais do código-fonte para uma determinada string

Experience Manager