lconvert verwenden

Das Kommandozeilenwerkzeug lconvert filtert und konvertiert Übersetzungsdateien.

Es unterstützt die folgenden Dateiformate:

  • pot - GNU Gettext-Lokalisierungsvorlagendateien
  • qph - Qt Linguist Phrase Book
  • ts - Qt-Übersetzungsquellen
  • po - GNU Gettext-Lokalisierungsdateien
  • qm - Kompilierte Qt-Übersetzungen
  • xlf - XLIFF-Lokalisierungsdateien

lconvert-Syntax

lconvert [options] <infile> [<infile>...]

Wo:

  • options eine oder mehrere lconvert-Optionen bedeutet.
  • infile ist eine Eingabedatei. Sie können mehrere Eingabedateien angeben.

Wenn Sie mehrere Eingabedateien angeben, werden diese zusammengeführt, wobei die Übersetzungen aus den späteren Dateien Vorrang haben.

Um die neueste Hilfe von lconvert anzuzeigen, geben Sie ein:

lconvert -help

lconvert Optionen

OptionAktion
-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>Verzicht auf benannte zusätzliche Tags beim Schreiben von TS oder XLIFF Dateien. Sie können diese Option wiederholt angeben.
-drop-translationsVorhandene Übersetzungen verwerfen und den Status auf unfinished zurücksetzen. Dies impliziert --no-obsolete.
-source-language <language>[_<region>]Geben Sie die Sprache der Quellzeichenketten an/überschreiben Sie sie. Der Standardwert ist POSIX, wenn er nicht angegeben wird und die Datei noch keinen Namen hat.
-target-language <language>[_<region>]Geben Sie die Sprache der Übersetzung an oder setzen Sie sie außer Kraft. Standardmäßig wird die Zielsprache aus dem Dateiinhalt gelesen oder aus dem Dateinamen erraten.
-no-obsoleteÜberholte Nachrichten verwerfen.
-no-finishedBeendete Nachrichten verwerfen.
-no-untranslatedNicht übersetzte Nachrichten verwerfen.
-sort-contextsKontexte in der Ausgabedatei TS alphabetisch sortieren.
-sort-messagesAlphabetische Sortierung von Nachrichten in einem Kontext in TS Dateien.
-locations {absolute|relative|none}Überschreiben Sie, wie Quellcode-Referenzen in TS Dateien gespeichert werden. Standard ist absolute.
-no-ui-linesZeilennummern aus Verweisen auf UI Dateien entfernen.
-pluralonlyNachrichten, die nicht im Plural geschrieben sind, werden gelöscht.
-verboseErläutern Sie, was getan wird.

Beispiele

TS-Datei in XLIFF konvertieren

Um eine einzelne TS-Datei in XLIFF zu konvertieren, führen Sie den folgenden Befehl im Terminal aus:

lconvert -o myapp_de.xlf myapp_de.ts

Mehrere QM-Dateien zusammenführen

Mit dem folgenden Befehl werden mehrere QM-Dateien in full_de.qm zusammengeführt:

lconvert -o full_de.qm qtbase_de.qm myapp_de.qm mylib_de.qm

Verwendung 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 nach XLIFF 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"
)

© 2025 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.