Mit diesem Formular können Sie fehlende, unklare oder fehlerhafte Inhalte in der Dokumentation melden und Verbesserungsvorschläge machen. Ihr Feedback hilft uns, die Qualität und Vollständigkeit kontinuierlich zu verbessern.
Xliff Sync
Xliff Sync dient zur Pflege von .xlf Sprachdateien in der laufenden Entwicklung bzw. vor allem in der Weiterentwicklung von Extensions. Bei Anpassungen an bereits fertig übersetzten Extensions können neue Felder hinzukommen oder Felder entfallen.
Da der Compiler aber einfach eine neue .xlf Datei ohne Übersetzungen generiert, müssen die neu hinzugekommenen Felder in die bereits übersetzte .xlf Datei gemerged werden, damit die vorhandenen Übersetzungen erhalten bleiben. Ebenso müssen die Übersetzungen für entfallende Felder aus der übesetzten .xlf Datei entfernt werden.
Desweiteren bietet Xliff Sync die Möglichkeit Comments automatisch in Übersetzungen umzuwandeln und die vorhandenen Übersetzungen technisch zu validieren.
Installation und Konfiguration
Xliff Sync kann ganz einfach über den Extension Marketplace von VS Code bezogen werden und wird auch in den empfohlenen Extensions im Workspace aufgeführt.
Die Konfiguration ist bereits im unitop-apps Workspace vorgegeben und im Normalfall muss nichts weiter beachtet werden. Der Vollständigkeit halber, hier die notwendige Konfiguration:
"xliffSync.copyFromSourceForSameLanguage": true,
"xliffSync.baseFile": "",
"xliffSync.needWorkTranslationRules": [
"OptionMemberCount",
"OptionLeadingSpaces",
"Placeholders",
"SourceEqualsTarget",
"ConsecutiveSpacesConsistent"
],
"xliffSync.autoCheckNeedWorkTranslations": true,
"xliffSync.parseFromDeveloperNote": true,
"xliffSync.autoCheckMissingTranslations": true
Eine ausführliche Entwicklungsrichtlinie aller Einrichtungsmöglichkeiten und Features findet sich im GitHub Repository der Extension.
Verwendung
Im Folgenden sind die für die AL Entwicklung hilfreichen Befehle aufgeführt. Jeder dieser Befehle kann über die Kommandopalette von VS Code ausgeführt werden.
Erstellung von Zieldateien
Befehl: XLIFF: Create New Target File(s)
Es folgt eine Abfrage nach der vom Compiler erzeugten globalen Sprachdatei <Name der Extension>.g.xlf. In der Regel findet Xliff Sync diese Datei selbstständig für die aktuell im Editor aktive Extension. Der Vorschlag muss dann nur noch bestätigt werden.
Im nächsten Schritt müssen die beiden Sprachcodes en-US und de-DE angehakt werden.
Merge der Sprachdateien
Befehl: XLIFF: Synchronize Translation Units
Bevor dieser Befehl ausgeführt wird, muss die gewünschte Extension kompiliert werden, damit die globale Sprachdatei alle aktuellen Änderungen enthält.
Bei der Ausführung dieses Befehls werden mehrere Prozesse in den .xlf Dateien gleichzeitig durchgeführt:
- Entfallene Übersetzungen werden entfernt
- Neue Texte werden hinzugefügt
- Neu hinzugefügte Texte werden automatisch übersetzt (aus dem Comment oder der technischen Caption)
- Fehlende Übersetzungen werden mit dem Status
"needs-translation"gekennzeichnet - Fehlgeschlagene technische Validierungen werden mit dem Status
"needs-adaptation"gekennzeichnet
Überprüfung von Sprachdateien
Befehl: XLIFF: Check for Missing Translations
Befehl: XLIFF: Check for Need Work Translations
Die Prüfungen auf fehlende Übersetzungen und die technische Validierung können mit diesen Befehlen auch manuell angestoßen werden.
Arbeiten innerhalb einer Sprachdatei
Befehl: XLIFF: Next Missing Translation
Befehl: XLIFF: Next Needs Work Translation
Um sich innerhalb einer Sprachdatei schnell zu bewegen, können diese Befehle verwendet werden. Damit springt der Editor jeweils zu der nächsten Übersetzung mit Handlungsbedarf. Dies ist sehr nützlich, wenn man mehrere in der Sprachdatei verteilte Übersetzungen bearbeiten möchte.
Hinweis
In Projekten hat es sich als nützlich herausgestellt, die Übersetzungen nicht in den Sprachdateien, sondern direkt in den AL Objekten anzupassen und anschließen neu zu synchronisieren. So gehen keine Arbeiten verloren (oder werden überschrieben), wenn jemand die Sprachdateien neu aufbaut.