Verwendung von lconvert
Das Befehlszeilentool „ lconvert “ filtert und konvertiert Übersetzungsdateien.
Es unterstützt die folgenden Dateiformate:
pot- GNU-Gettext-Lokalisierungsvorlagendateienqph- „ Qt Linguist “-Phrasenbuchts- Qt-Übersetzungsquellenpo- GNU-Gettext-Lokalisierungsdateienqm- Kompilierte Qt-Übersetzungenxlf- XLIFF-Lokalisierungsdateien
lconvert-Syntax
lconvert [options] <infile> [<infile>...]Wobei:
optionseine oder mehrere lconvert-Optionen bezeichnet.infileist eine Eingabedatei. Sie können mehrere Eingabedateien angeben.
Wenn Sie mehrere Eingabedateien angeben, werden diese zusammengeführt, wobei Übersetzungen aus späteren Dateien Vorrang haben.
Um die aktuelle „ lconvert “-Hilfe anzuzeigen, geben Sie Folgendes ein:
lconvert -helplconvert-Optionen
| Option | Aktion |
|---|---|
-h -help | Display up-to-date help information and exit. |
-i <infile> -input-file <infile> | Specify an input file. Use this option if <infile> starts with a dash. Use this option several times to merge inputs. May be - (standard input) for use in a pipe. |
-o <outfile> -output-file <outfile> | Specify an output file. Default is - (standard output). |
-if <informat> -input-format <format> | Specify input format for subsequent input files. The format is auto-detected from the file name and defaults to ts. |
-of <outformat> -output-format <outformat> | Specify output format. See -if. |
-drop-tags <regexp> | Beim Schreiben von „ TS “- oder „ XLIFF “-Dateien werden benannte zusätzliche Tags entfernt. Diese Option kann mehrfach angegeben werden. |
-drop-translations | Bestehende Übersetzungen werden verworfen und der Status auf „ unfinished “ zurückgesetzt. Dies impliziert „ --no-obsolete “. |
-source-language <language>[_<region>] | Die Sprache der Quellzeichenfolgen festlegen bzw. überschreiben. Die Standardeinstellung ist „POSIX“, sofern keine Angabe erfolgt und die Datei die Sprache noch nicht benannt hat. |
-target-language <language>[_<region>] | Die Sprache der Übersetzung festlegen oder überschreiben. Standardmäßig wird die Zielsprache aus dem Dateiinhalt ausgelesen oder anhand des Dateinamens erraten. |
-no-obsolete | Veraltete Meldungen unterdrücken. |
-no-finished | Fertiggestellte Meldungen verwerfen. |
-no-untranslated | Entferne nicht übersetzte Meldungen. |
-sort-contexts | Kontexte in der Ausgabedatei „ TS “ alphabetisch sortieren. |
-sort-messages | Meldungen in einem Kontext in den „ TS “-Dateien alphabetisch sortieren. |
-locations {absolute|relative|none} | Überschreiben Sie die Art und Weise, wie Quellcode-Verweise in den „ TS “-Dateien gespeichert werden. Die Standardeinstellung lautet „ absolute “. |
-no-ui-lines | Zeilennummern aus Verweisen auf „ UI “-Dateien entfernen. |
-pluralonly | Meldungen in Nicht-Pluralform entfernen. |
-verbose | Erläutere, was gerade geschieht. |
Beispiele
TS-Datei in XLIFF konvertieren
Um eine einzelne TS-Datei in XLIFF zu konvertieren, führen Sie im Terminal den folgenden Befehl aus:
lconvert -o myapp_de.xlf myapp_de.tsMehrere QM-Dateien zusammenführen
Der folgende Befehl führt mehrere QM-Dateien zu einer „ full_de.qm “-Datei zusammen:
lconvert -o full_de.qm qtbase_de.qm myapp_de.qm mylib_de.qmVerwendung von „lconvert“ mit CMake
Um „ lconvert “ beim Konfigurieren oder Erstellen Ihres CMake-Projekts aufzurufen, laden Sie das Paket „ Qt6LinguistTools “ und verwenden Sie „ $<TARGET_FILE_NAME:Qt6::lconvert> “, um die ausführbare Datei „ lconvert “ zu finden.
Das folgende Beispiel fügt ein benutzerdefiniertes Ziel „ xlf_de “ hinzu, das eine einzelne TS-Datei in das XLIFF-Format konvertiert.
find_package(Qt6 REQUIRED COMPONENTS LinguistTools)
add_custom_command(
OUTPUT myapp_de.xlf
COMMAND $<TARGET_FILE:Qt6::lconvert> -o myapp_de.xlf myapp_de.ts
DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/myapp_de.ts"
VERBATIM
)
add_custom_target(xlf_de
DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/myapp_de.xlf"
)PO-formatspezifische Optionen
Bei der Konvertierung ins PO-Format können Sie den automatischen Zeilenumbruch deaktivieren, indem Sie das Flag „ no-wrap “ im zusätzlichen Metadatenfeld „ po-flags “ setzen. Standardmäßig werden Zeilen, die länger als 79 Zeichen sind, umgebrochen. Setzen Sie dieses Feld im Quellcode mithilfe der Meta-Zeichenkette „//~“ (zum Beispiel „ //~ po-flags no-wrap “) oder direkt in TS-Dateien mithilfe des Elements „ <extra-po-flags> “.
Andere PO-Flags (siehe die GNU-gettext-Dokumentation) bleiben bei der Konvertierung zwischen den Formaten TS und PO erhalten, haben jedoch keinen Einfluss auf die Verarbeitung von „ lconvert “.
Hinweis: Die po-flags -Metadaten bleiben nur bei einer direkten Konvertierung vom TS- ins PO-Format erhalten.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.