Tekenreeksen uitnemen voor vertaling extracting-strings-for-translating
Gebruik de xgettext-maven-plug-in om tekenreeksen uit uw broncode te extraheren die moeten worden vertaald. Met de plug-in Maven worden tekenreeksen geëxtraheerd naar een XLIFF-bestand dat u verzendt voor vertaling. Tekenreeksen worden geëxtraheerd van de volgende locaties:
- Java-bronbestanden
- JavaScript-bronbestanden
- XML-representaties van SVN-bronnen (JCR-knooppunten)
Tekenreeksovername configureren configuring-string-extraction
Configureer hoe de functie voor het insteekmodule xgettext-maven tekenreeksen voor uw project extraheert.
/filter { }
/parsers {
/vaultxml { }
/javascript { }
/regexp {
/files {
/java { }
/jsp { }
/extjstemplate { }
}
}
}
/potentials { }
De te parseren bestanden identificeren identifying-the-files-to-parse
Het /filter gedeelte van het i18n.any-bestand identificeert de bestanden die met het gereedschap Xgettext-maven-plugin worden geparseerd. Voeg verschillende include- en uitsluitingsregels toe die respectievelijk geparseerde en genegeerde bestanden identificeren. Neem alle bestanden op en sluit de bestanden uit die u niet wilt parseren. Gewoonlijk sluit u bestandstypen uit die geen bijdrage leveren aan de gebruikersinterface, of bestanden die wel UI definiëren maar niet worden omgezet. De regels include en exclude hebben de volgende indeling:
{ /include "pattern" }
{ /exclude "pattern" }
Het patroongedeelte van een regel wordt gebruikt om de namen van de bestanden die moeten worden opgenomen of uitgesloten, te benaderen. Het patroonvoorvoegsel geeft aan of u overeenkomt met een JCR-knooppunt (de weergave in de vault) of met het bestandssysteem.
Bij gebruik in een patroon geeft het teken / een submap en het teken &ast aan; het teken komt overeen met alles. In de volgende tabel staan verschillende voorbeeldregels.
De tekenreeksen extraheren extracting-the-strings
geen 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=.
Met POM: dit toevoegen aan 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>
de opdracht:
mvn xgettext:extract
Uitvoerbestanden output-files
-
raw.xliff
: geëxtraheerde tekenreeksen -
warn.log
: waarschuwingen (indien aanwezig) als deCQ.I18n.getMessage()
API onjuist wordt gebruikt. Deze moeten altijd worden opgelost en vervolgens opnieuw worden uitgevoerd. -
parserwarn.log
: parserwaarschuwingen (indien aanwezig), bijvoorbeeld bij problemen met de parser van JS -
potentials.xliff
: 'potentiële' kandidaten die niet zijn geëxtraheerd, maar leesbare tekenreeksen zijn die vertaald moeten worden (kan worden genegeerd, levert nog steeds een enorme hoeveelheid fout-positieven op) -
strings.xliff
: afgevlakt xliff-bestand, te importeren in ALF -
backrefs.txt
: hiermee kunt u snel broncodelocaties voor een bepaalde tekenreeks opzoeken