Extrahieren von Zeichenfolgen zum Übersetzen extracting-strings-for-translating
Verwenden Sie xgettext-maven-plugin , um Zeichenfolgen aus Ihrem Quellcode zu extrahieren, die übersetzt werden müssen. Das Maven-Plug-in extrahiert Zeichenfolgen in eine XLIFF-Datei, die Sie zur Übersetzung senden. Zeichenfolgen werden aus den folgenden Speicherorten extrahiert:
- Java-Quelldateien
- JavaScript-Quelldateien
- XML-Darstellungen von SVN-Ressourcen (JCR-Knoten)
Konfigurieren der Zeichenfolgenextrahierung configuring-string-extraction
Konfigurieren Sie, wie das xgettext-maven-plugin-Tool Zeichenfolgen für Ihr Projekt extrahiert.
/filter { }
/parsers {
/vaultxml { }
/javascript { }
/regexp {
/files {
/java { }
/jsp { }
/extjstemplate { }
}
}
}
/potentials { }
Identifizieren der zu analysierenden Dateien identifying-the-files-to-parse
Der /filter -Abschnitt der Datei i18n.any identifiziert die Dateien, die das xgettext-maven-plugin-Tool analysiert. Fügen Sie mehrere ein- und ausschließende Regeln hinzu, um Dateien anzugeben, die geparst bzw. ignoriert werden sollen. Sie sollten alle Dateien einbeziehen und dann die Dateien ausschließen, die Sie nicht parsen möchten. Normalerweise schließen Sie Dateitypen aus, die nicht zur Benutzeroberfläche beitragen, oder Dateien, die die Benutzeroberfläche definieren, aber nicht übersetzt werden. Die Ein- und Ausschlussregeln haben das folgende Format:
{ /include "pattern" }
{ /exclude "pattern" }
Der Musterteil einer Regel wird verwendet, um mit den Namen der Dateien abzugleichen, die ein- oder ausgeschlossen werden sollen. Das Musterpräfix gibt an, ob Sie mit einem JCR-Knoten (dessen Darstellung in Vault) oder dem Dateisystem übereinstimmen.
In einem Muster steht das Zeichen / für ein Unterverzeichnis und das Zeichen * ist ein Platzhalter für eine beliebige Zeichenfolge. In der folgenden Tabelle sind einige Beispielregeln aufgeführt.
Extrahieren der Zeichenfolgen extracting-the-strings
kein 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=.
Mit POM: Fügen Sie dies zu POM hinzu:
<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>
den Befehl:
mvn xgettext:extract
Output Files output-files
-
raw.xliff
: extrahierte Zeichenfolgen -
warn.log
: Warnmeldungen (falls vorhanden), wenn dieCQ.I18n.getMessage()
-API falsch verwendet wird. In diesen Fällen ist immer eine Fehlerbehebung und anschließend eine Wiederholung erforderlich. -
parserwarn.log
: Parser-Warnungen (falls vorhanden), z. B. js-Parser-Probleme -
potentials.xliff
: „potenzielle“ Kandidaten, die nicht extrahiert werden, aber möglicherweise von Menschen lesbare Zeichenfolgen sind, die übersetzt werden müssen (kann ignoriert werden, da es noch eine große Menge an falsch positiven Ergebnissen findet) -
strings.xliff
: Zusammengefasste xliff-Datei für den Import in ALF -
backrefs.txt
: ermöglicht ein schnelles Nachschlagen der Position bestimmter Zeichenfolgen im Quell-Code