Verwenden Sie xgettext-maven-plugin, um Zeichenfolgen, die übersetzt werden müssen, aus Ihrem Quellcode zu extrahieren. Das Maven-Plug-in extrahiert Zeichenfolgen in eine XLIFF-Datei, die Sie zur Übersetzung senden. Zeichenfolgen werden aus den folgenden Quellen extrahiert:
Konfigurieren Sie, wie xgettext-maven-plugin Zeichenfolgen für Ihr Projekt extrahiert.
/filter { }
/parsers {
/vaultxml { }
/javascript { }
/regexp {
/files {
/java { }
/jsp { }
/extjstemplate { }
}
}
}
/potentials { }
Abschnitt | Beschreibung |
---|---|
/filter | Identifiziert die analysierten Dateien. |
/parsers/vaultxml | Konfiguriert das Parsen von Vault-Dateien. Gibt die JCR-Knoten an, die externalisierte Zeichenfolgen und Lokalisierungshinweise enthalten. Gibt außerdem JCR-Knoten an, die ignoriert werden sollen. |
/parsers/javascript | Identifiziert die JavaScript-Funktionen, die Zeichenfolgen externalisieren. Sie müssen diesen Abschnitt nicht ändern. |
/parsers/regexp | Konfiguriert das Parsen von Java-, JSP- und ExtJS-Vorlagendateien. Sie müssen diesen Abschnitt nicht ändern. |
/potentials | Die Formel zur Erkennung von Zeichenfolgen, die internationalisiert werden sollen. |
Der /filter-Abschnitt der Datei i18n.any gibt die Datei an, die xgettext-maven-plugin parst. 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 sollten Dateitypen ausgeschlossen werden, die nicht Teil der Benutzeroberfläche sind oder die die Benutzeroberfläche definieren, jedoch nicht übersetzt werden. Die ein- und ausschließenden Regeln haben das folgende Format:
{ /include "pattern" }
{ /exclude "pattern" }
Das Muster einer Regel wird verwendet, um die Namen der Dateien abzugleichen, die ein- bzw. ausgeschlossen werden sollen. Das Musterpräfix gibt an, ob Sie einen JCR-Knoten (seine Darstellung in Vault) oder das Dateisystem abgleichen.
Präfix | Ergebnis |
---|---|
/ | Gibt einen JCR-Pfad an. Daher gleicht dieses Präfix Dateien unter dem Verzeichnis jcr_root ab. |
* | Gibt eine reguläre Datei im Dateisystem an. |
keine | Kein Präfix oder ein Muster, das mit einem Ordner oder Dateinamen beginnt, zeigt eine reguläre Datei im Dateisystem an. |
Wenn es in einem Muster verwendet wird, zeigt das Zeichen / ein Unterverzeichnis und das Zeichen &ast an. entspricht allen Zeichen. In der folgenden Tabelle sind einige Beispielregeln aufgeführt.
Beispielregel | Ergebnis |
---|---|
{ /include "*" } |
Schließen Sie alle Dateien ein. |
{ /exclude "*.pdf" } |
Schließen Sie alle PDF-Dateien aus. |
{ /exclude "*/pom.xml" } |
Ausschluss von POM-Dateien. |
{ /exclude "/content/*" }
{ /include "/content/catalogs/geometrixx/templatepages" }
{ /include "/content/catalogs/geometrixx/templatepages/*" } |
Schließen Sie alle Dateien unter dem Knoten /content aus. Schließen Sie den Knoten /content/catalogs/geometrixx/templatepages ein. Schließen Sie alle untergeordneten Knoten von /content/catalogs/geometrixx/templatepages ein. |
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>
der Befehl:
mvn xgettext:extract
raw.xliff
: extrahierte Zeichenfolgen
warn.log
: (falls vorhanden), wenn die CQ.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-Parserprobleme
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 Quellcode