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 Analysieren 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 Parsing von Java-, JSP- und ExtJS-Vorlagedateien. 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. |
none | Kein Präfix oder ein Muster, das mit einem Ordner oder einem Dateinamen beginnt, gibt eine reguläre Datei im Dateisystem an. |
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.
Beispielregel | Ergebnis |
---|---|
{ /include "*" } |
Einschließen aller Dateien. |
{ /exclude "*.pdf" } |
Ausschließen aller PDF-Dateien. |
{ /exclude "*/pom.xml" } |
Ausschließen von POM-Dateien. |
{ /exclude "/content/*" }
{ /include "/content/catalogs/geometrixx/templatepages" }
{ /include "/content/catalogs/geometrixx/templatepages/*" } |
Ausschließen aller Dateien unter dem Knoten /content. Den Knoten /content/catalogs/geometrixx/templatepages einbeziehen. Einschließen aller untergeordneten Knoten von /content/catalogs/geometrixx/templatepages. |
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
: Warnmeldungen (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 Quell-Code