Extraherar strängar för översättning
- Ämnen:
- Developing
Skapat för:
- Developer
Använd xgettext-maven-plugin för att extrahera strängar från källkoden som behöver översättas. Plugin-programmet Maven extraherar strängar till en XLIFF-fil som du skickar för översättning. Strängar extraheras från följande platser:
- Java-källfiler
- Javascript-källfiler
- XML-representationer av SVN-resurser (JCR-noder)
Konfigurerar strängextrahering
Konfigurera hur xgettext-maven-plugin-verktyget extraherar strängar för ditt projekt.
/filter { }
/parsers {
/vaultxml { }
/javascript { }
/regexp {
/files {
/java { }
/jsp { }
/extjstemplate { }
}
}
}
/potentials { }
Avsnitt | Beskrivning |
---|---|
/filter | Identifierar de filer som tolkas. |
/parsers/vaultxml | Konfigurerar parsning av vaultfiler. Identifierar de JCR-noder som innehåller externa strängar och lokaliseringstips. Identifierar också JCR-noder som ska ignoreras. |
/parsers/javascript | Identifierar de JavaScript-funktioner som gör strängar externt. Du behöver inte ändra det här avsnittet. |
/parsers/regexp | Konfigurerar tolkningen av Java-, JSP- och ExtJS-mallfiler. Du behöver inte ändra det här avsnittet. |
/potentials | Formeln för identifiering av strängar som ska internationaliseras. |
Identifiera filerna som ska tolkas
Avsnittet /filter i i18n.any identifierar filerna som xgettext-maven-plugin-verktyget tolkar. Lägg till flera inkluderings- och exkluderingsregler som identifierar filer som tolkas respektive ignoreras. Du bör inkludera alla filer och sedan exkludera de filer som du inte vill analysera. Vanligtvis utesluter du filtyper som inte bidrar till användargränssnittet, eller filer som definierar användargränssnittet men som inte översätts. Reglerna include och exclude har följande format:
{ /include "pattern" }
{ /exclude "pattern" }
Mönsterdelen av en regel används för att matcha namnen på de filer som ska inkluderas eller exkluderas. Mönsterprefixet anger om du matchar en JCR-nod (dess representation i Vault) eller filsystemet.
Prefix | Effekt |
---|---|
/ | Anger en JCR-sökväg. Det innebär att det här prefixet matchar filer under katalogen jcr_root. |
* | Anger en vanlig fil i filsystemet. |
ingen | Inget prefix, eller ett mönster som börjar med en mapp eller ett filnamn, anger att filen är en vanlig fil i filsystemet. |
Vid användning i ett mönster anger tecknet / en underkatalog och det &sista; tecken matchar alla. I följande tabell visas flera exempelregler.
Exempelregel | Effekt |
---|---|
{ /include "*" } | Inkludera alla filer. |
{ /exclude "*.pdf" } | Uteslut alla PDF-filer. |
{ /exclude "*/pom.xml" } | Uteslut POM-filer. |
{ /exclude "/content/*" } { /include "/content/catalogs/geometrixx/templatepages" } { /include "/content/catalogs/geometrixx/templatepages/*" } |
Uteslut alla filer under noden /content. Inkludera noden /content/catalogs/geometrixx/templatesPages. Inkludera alla underordnade noder för /content/catalogs/geometrixx/templates. |
Extrahera strängarna
ingen 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=.
Med POM: Lägg till detta i 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>
kommandot:
mvn xgettext:extract
Utdatafiler
-
raw.xliff
: extraherade strängar -
warn.log
: varningar (om sådana finns), omCQ.I18n.getMessage()
API används felaktigt. De behöver alltid en fix och sedan en omstart. -
parserwarn.log
: parservarningar (om sådana finns), t.ex. problem med js-parsern -
potentials.xliff
: "potentiella" kandidater som inte extraheras, men som kan vara läsbara strängar som behöver översättas (kan ignoreras, men ändå skapa en enorm mängd falskt positiva resultat) -
strings.xliff
: förenklad xliff-fil, som ska importeras till ALF -
backrefs.txt
: möjliggör snabb sökning av källkodsplatser för en given sträng
Experience Manager
- Utveckla användarhandboken - översikt
- Introduktion för utvecklare
- Komma igång med utveckling i AEM Sites – WKND-självstudiekurs
- AEM kärnbegrepp
- Struktur för det AEM användargränssnittet med pekskärm
- Koncepten i det AEM användargränssnittet med pekskärm
- AEM - riktlinjer och bästa praxis
- Använda bibliotek på klientsidan
- Developing and Page Diff
- Begränsningar för redigerare
- CSRF Protection Framework
- Datamodellering - David Nueschelers modell
- Bidrar till AEM
- Dokumentskydd
- Referensmaterial
- Skapa en webbplats med alla funktioner (Classic UI)
- Designer och Designer (Classic UI)
- Plattform
- Fusklapp för Sling
- Använda Sling-adaptrar
- Taggbibliotek
- Mallar
- Använda Sling Resource Merger i AEM
- Övertäckningar
- Namnkonventioner
- Skapa en ny GRE-fältkomponent
- Query Builder
- Taggar
- Anpassa sidor som visas av felhanteraren
- Anpassade nodtyper
- Lägga till teckensnitt för grafikåtergivning
- Ansluta till SQL-databaser
- Extern URL
- Skapa och använda jobb för avlastning
- Konfigurerar cookie-användning
- Så här programmässigt kommer du åt AEM JCR
- Integrera tjänster med JMX-konsolen
- Developing the Bulk Editor
- Utveckla rapporter
- eCommerce
- Komponenter
- Kärnkomponenter
- Formatsystem
- Komponenter - översikt
- AEM - Grunderna
- Utveckla AEM
- Utveckla AEM - kodexempel
- JSON-exporterare för innehållstjänster
- Aktivera JSON-export för en komponent
- Bildredigeraren
- Dekoration-tagg
- Använda Dölj villkor
- Konfigurera flera redigerare på plats
- Utvecklarläge
- Testa användargränssnittet
- Komponenter för innehållsfragment
- Hämta sidinformation i JSON-format
- Internationalisering
- Klassiska gränssnittskomponenter
- Headless Experience Management
- Headless och Hybrid with AEM
- Aktivera JSON-export för en komponent
- Enkelsidiga program
- SPA introduktion och genomgång
- SPA WKND - självstudiekurs
- Getting Started with SPA in AEM - React
- Komma igång med SPA i AEM - Angular
- Implementera en React Component for SPA
- SPA djupdykning
- SPA
- Utveckla SPA för AEM
- SPA Blueprint
- SPA
- Dynamisk mappning av modell till komponent för SPA
- SPA
- SPA och Adobe Experience Platform Launch Integration
- SPA- och serveråtergivning
- SPA referensmaterial
- HTTP-API
- Innehållsfragment
- Experience Fragments
- Utvecklingsverktyg
- Utvecklingsverktyg
- AEM Modernization Tools
- Dialogruteredigeraren
- Verktyget Dialogkonvertering
- Utveckla med CRXDE Lite
- Hantera paket med Maven
- Utveckla AEM projekt med Eclipse
- Skapa AEM projekt med Apache Maven
- Utveckla AEM projekt med IntelliJ IDEA
- Så här använder du VLT-verktyget
- Så här använder du proxyserververktyget
- AEM Brackets Extension
- AEM Developer Tools for Eclipse
- AEM
- Personanpassning
- Utöka AEM
- Anpassa sidredigering
- Anpassa konsolerna
- Anpassa vyer av Sidegenskaper
- Konfigurera din sida för gruppredigering av sidegenskaper
- Anpassa och utöka Content Fragments
- Utöka arbetsflöden
- Utöka Multi Site Manager
- Spårning och analys
- Cloud Services
- Skapa anpassade tillägg
- Forms
- Integrera tjänster med JMX-konsolen
- Developing the Bulk Editor
- Utöka Classic UI
- Testning
- Bästa praxis
- Mobil webb