Extracción de cadenas para traducir extracting-strings-for-translating
Utilice xgettext-maven-plugin para extraer cadenas del código fuente que necesiten traducción. El complemento Maven extrae cadenas a un archivo XLIFF que envía para su traducción. Las cadenas se extraen de las siguientes ubicaciones:
- Archivos de origen Java
- Archivos de origen JavaScript
- Representaciones XML de recursos SVN (nodos JCR)
Configurar la extracción de cadenas configuring-string-extraction
Configure cómo la herramienta xgettext-maven-plugin extrae cadenas para su proyecto.
/filter { }
/parsers {
/vaultxml { }
/javascript { }
/regexp {
/files {
/java { }
/jsp { }
/extjstemplate { }
}
}
}
/potentials { }
Identificación de los archivos a analizar identifying-the-files-to-parse
La sección /filter del archivo i18n.any identifica los archivos que analiza la herramienta xgettext-maven-plugin. Añada varias reglas de inclusión y exclusión que identifiquen archivos analizados y omitidos, respectivamente. Debe incluir todos los archivos y luego excluir los archivos que no desee analizar. Normalmente, se excluyen los tipos de archivo que no contribuyen a la interfaz de usuario o los archivos que definen la interfaz de usuario, pero que no se están traduciendo. Las reglas de inclusión y exclusión tienen el siguiente formato:
{ /include "pattern" }
{ /exclude "pattern" }
La parte de patrón de una regla se utiliza para hacer coincidir los nombres de los archivos que se van a incluir o excluir. El prefijo de patrón indica si coincide con un nodo JCR (su representación en Vault) o con el sistema de archivos.
Cuando se utiliza dentro de un patrón, el carácter / indica un subdirectorio y el carácter * coincide con todos. En la tabla siguiente se enumeran varias reglas de ejemplo.
Extracción de cadenas extracting-the-strings
no hay 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=.
Con POM: Agregar esto al 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>
el comando:
mvn xgettext:extract
Archivos de salida output-files
-
raw.xliff
: cadenas extraídas -
warn.log
: advertencias (si las hay), siCQ.I18n.getMessage()
La API de se utiliza incorrectamente. Estos siempre necesitan una corrección y luego una nueva ejecución. -
parserwarn.log
: advertencias del analizador (si las hay), por ejemplo, problemas con el analizador de js -
potentials.xliff
: candidatos "potenciales" que no se extraen, pero que pueden ser cadenas legibles por humanos que necesiten traducción (se pueden ignorar, y siguen produciendo una gran cantidad de falsos positivos) -
strings.xliff
: archivo xliff aplanado, que se importará en ALF -
backrefs.txt
: permite la búsqueda rápida de ubicaciones de código fuente para una cadena determinada