ltext2id の使用方法
ltext2id コマンドラインツールは、テキストベースの翻訳を使用しているプロジェクトを、IDベースの翻訳を使用するように変換します。このツールはプロジェクトツリーをスキャンし、ソースコードを更新してIDベースの翻訳APIを呼び出すようにし、関連するTS ファイルを適宜調整します。変換に失敗した場合、ソースコードの失敗箇所には//ltext2id error: というアノテーションが付けられます。
注: ltext2id を実行する前に、完全なバックアップを作成するか (またはクリーンなGitブランチで作業してください)。このツールは、ソースファイルおよびTS ファイルをその場で変更します。
最良の結果を得るには、コードと翻訳の更新が一致するように、ツールに渡すプロジェクトのルートディレクトリにソースファイルとTS ファイルの両方を含めてください。
ltext2id の構文
ltext2id [options] [project-root]ここで:
optionsは、1つまたは複数のltext2id オプションを表します。project-rootは、再帰的に処理するディレクトリです。
最新のヘルプを表示するには、次のように入力してください:
ltext2id -helpltext2id オプション
| オプション | 動作 |
|---|---|
-help | 最新のヘルプ情報を表示して終了します。 |
-no-labels | ID ベースの翻訳に対してラベルを生成しない。デフォルトでは、Qt Linguist での表示形式を統一するために、メッセージコンテキストがラベルとして使用される。 |
-sort-messages | TS ファイル内のコンテキスト内のメッセージをアルファベット順に並べ替えます。 |
-source-utf16 | ソースファイルを UTF-16 エンコードとして扱う (デフォルト: false)。 |
-quiet | 進行状況の出力を抑制します。 |
-only-meta-id | メタ文字列を挿入することによってのみ ID を提案し、ID ベースの呼び出しへの実際の変換は実行しません。 |
-no-auto-id | メタ文字列 ID が存在しない場合、ID を自動生成しない。メタ ID を含まない翻訳関数の呼び出しは無視される。 |
-version | ltext2id のバージョンを表示して終了します。 |
例
プロジェクトをIDベースの翻訳に変換する
プロジェクトのルートディレクトリでツールを実行します。そのディレクトリにあるソースコードおよびTS ファイルは、その場で更新されます。
ltext2id path/to/projectIDの候補のみを生成する(コードの変更は行わない)
-only-meta-id を使用すると、ID ベースの API への呼び出しを書き換えることなく、メタ文字列による ID の候補を挿入できます。その結果、翻訳呼び出しには、提案された ID(メタ ID)を指定する '//~ meta-id <id>' (cpp) メタ文字列が注釈として付加されます。
ltext2id -only-meta-id path/to/projectラベル生成を無効にする
Qt Linguist 内でコンテキストがラベルとして反映されるのを防ぎたい場合は、ラベル生成を無効にしてください:
ltext2id -no-labels path/to/project自動生成されるIDを回避する
メタIDが欠落している呼び出し、すなわちメタ文字列 '//~ meta-id <id>' を使用してすでにIDが指定されている呼び出しについては、自動生成をスキップします (cpp):
ltext2id -no-auto-id path/to/projectUTF-16 ソースファイルの処理
ソースがUTF-16でエンコードされている場合は、次のオプションを有効にしてください:
ltext2id -source-utf16 path/to/project終了ステータス
ltext2id 失敗した場合(たとえば、ファイルの変換中に回復不可能なエラーが発生した場合など)、ゼロ以外の終了コードを返します。//ltext2id error: でマークされたインプレースのソース注釈を確認し、残りの問題を修正してください。
© 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.