このページについて

ltext2id の使用方法

ltext2id コマンドラインツールは、テキストベースの翻訳を使用しているプロジェクトを、IDベースの翻訳を使用するように変換します。このツールはプロジェクトツリーをスキャンし、ソースコードを更新してIDベースの翻訳APIを呼び出すようにし、関連するTS ファイルを適宜調整します。変換に失敗した場合、ソースコードの失敗箇所には//ltext2id error: というアノテーションが付けられます。

注: ltext2id を実行する前に、完全なバックアップを作成するか (またはクリーンなGitブランチで作業してください)。このツールは、ソースファイルおよびTS ファイルをその場で変更します。

最良の結果を得るには、コードと翻訳の更新が一致するように、ツールに渡すプロジェクトのルートディレクトリにソースファイルとTS ファイルの両方を含めてください。

ltext2id の構文

ltext2id [options] [project-root]

ここで:

  • options は、1つまたは複数のltext2id オプションを表します。
  • project-root は、再帰的に処理するディレクトリです。

最新のヘルプを表示するには、次のように入力してください:

ltext2id -help

ltext2id オプション

オプション動作
-help最新のヘルプ情報を表示して終了します。
-no-labelsID ベースの翻訳に対してラベルを生成しない。デフォルトでは、Qt Linguist での表示形式を統一するために、メッセージコンテキストがラベルとして使用される。
-sort-messagesTS ファイル内のコンテキスト内のメッセージをアルファベット順に並べ替えます。
-source-utf16ソースファイルを UTF-16 エンコードとして扱う (デフォルト: false)。
-quiet進行状況の出力を抑制します。
-only-meta-idメタ文字列を挿入することによってのみ ID を提案し、ID ベースの呼び出しへの実際の変換は実行しません。
-no-auto-idメタ文字列 ID が存在しない場合、ID を自動生成しない。メタ ID を含まない翻訳関数の呼び出しは無視される。
-versionltext2id のバージョンを表示して終了します。

例

プロジェクトをIDベースの翻訳に変換する

プロジェクトのルートディレクトリでツールを実行します。そのディレクトリにあるソースコードおよびTS ファイルは、その場で更新されます。

ltext2id path/to/project

IDの候補のみを生成する(コードの変更は行わない)

-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/project

UTF-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.