qt_add_lupdate
Qt Linguist .ts ファイルを生成または更新するターゲットを追加します。
このコマンドはQt6
パッケージのLinguistTools
コンポーネントで定義されています。でパッケージを読み込みます:
find_package(Qt6 REQUIRED COMPONENTS LinguistTools)
このコマンドは Qt 6.2 で導入されました。
概要
6.7以降:
qt_add_lupdate(TS_FILES file1.ts [file2.ts ...] [PLURALS_TS_FILE file.ts] [SOURCE_TARGETS target1 [target2 ...]] [SOURCES source1.cpp [sources2.cpp ...]] [INCLUDE_DIRECTORIES directory1 [directory2 ...]] [LUPDATE_TARGET target-name] [NO_GLOBAL_TARGET] [OPTIONS ...])
6.2以降(非推奨):
qt_add_lupdate(target TS_FILES file1.ts [file2.ts ...] [SOURCES source1.cpp [sources2.cpp ...]] [INCLUDE_DIRECTORIES directory1 [directory2 ...]] [NO_GLOBAL_TARGET] [OPTIONS ...])
バージョンレスコマンドが無効になっている場合は、代わりにqt6_add_lupdate()
を使ってください。このコマンドと同じ引数セットをサポートしています。
説明
Qt Linguist.ts
ファイルをlupdate で生成または更新するためのカスタムターゲットを作成します。
カスタムターゲットのデフォルト名は${PROJECT_NAME}_lupdate
です。さらにqt_add_lupdate
を呼び出すと、数字が付加されたターゲット名が作成されます。カスタム・ターゲット名はLUPDATE_TARGET
オプションで指定できます。
SOURCE_TARGETS
引数を使用すると、翻訳可能な文字列を持つソースを含むターゲットのリストを指定できます。SOURCE_TARGETS
が指定されていない場合は、以下で説明するSOURCES
を指定できます。SOURCE_TARGETS
もSOURCES
も指定されていない場合、qt_collect_translation_source_targetsコマンドが呼び出され、ターゲットのリストが取得されます。
.ts
ファイルは、引数TS_FILES
で指定する必要があります。
この関数はqt_add_lreleaseと組み合わせて使うように設計されています。便利なラッパーqt_add_translationsも参照してください。
ソースとインクルードディレクトリ
SOURCES
を使うと、翻訳可能な文字列を含む追加のソースファイルを明示的に指定できます。
INCLUDE_DIRECTORIES
を使用すると、これらのソースファイルのインクルードディレクトリを明示的に指定できます。
オプション
lupdate
が呼び出されたときに渡される追加のOPTIONS
を設定できます。lupdateのドキュメントに可能なオプションがあります。
アンブレラ・ターゲット
ターゲット${target}_lupdate
に加えて、アンブレラ・ターゲットupdate_translations
が作成されます。このターゲットは、qt_add_lupdate
で作成されたすべての${target}_lupdate
ターゲットをビルドします。
この動作を防ぐには、NO_GLOBAL_TARGET
をqt_add_lupdate
に渡します。
このターゲットの名前は、qt_add_lupdate
を呼び出す前に変数QT_GLOBAL_LUPDATE_TARGET
を設定することでオーバーライドできます。
複数形
QT_I18N_SOURCE_LANGUAGEは、ソース・コード文字列が記述される言語を指定します。複数形を正しく扱うには、その言語用に、複数形用の翻訳可能な文字列のみを含む追加の.ts
ファイルを作成してください。詳細は「複数形の処理」を参照してください。
PLURALS_TS_FILE
で、ソース言語の.ts
ファイルを指定できます。このファイルには複数形のみが含まれます。
非推奨のコマンド署名
旧バージョンのqt_add_lupdate
では、第1引数にターゲットを指定しました。これは非推奨です。代わりにSOURCE_TARGETS
引数を使用してください。
例
アプリケーションmyapp
の.ts
ファイルを更新するために、ターゲットmyapp_lupdate
とupdate_translations
を追加します。
qt_add_lupdate( SOURCE_TARGETS myapp TS_FILES myapp_de.ts PLURALS_TS_FILE myapp_en.ts )
LUPDATE_TARGET
引数を渡すことで、作成されるターゲットの名前を指定できます:
qt_add_lupdate( LUPDATE_TARGET update_application_translations TS_FILES myapp_de.ts PLURALS_TS_FILE myapp_en.ts )
ここに含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。