このページでは

lcheck を使う

lcheck コマンドラインツールは、QtTS の翻訳ファイルを検証し、人間が読めるレポートを作成します。このツールはQt Linguist ツールチェインの一部で、バッチまたは CI での使用を想定しており、一般的なローカリゼーションの問題を早期に検出します。デフォルトでは、lcheck は一連のチェックを実行し、有効化されたチェックのうち少なくとも1つが失敗した場合、ゼロ以外の終了コードを返します。

デフォルトのチェックは以下の通りです:

  • アクセラレータチェック- 原文と訳文のアンパサンド(ニーモニック)の数が一致していることを確認します。
  • 周囲の空白チェック - ソースと訳文の先頭と末尾の空白が一致するかどうかを確認します。
  • 終了句読点のチェック - ソースと訳文の終了句読点が同じであることを確認します。
  • プレースマーカーのチェック - ソースと訳文の間で、%1%2 などの用法が一貫していることを確認します。

各チェックは、コマンドライン・オプションを使用して個別に無効にできます。

lcheck 構文

lcheck [options] -o report-output-file ts-file
lcheck [options] ts-file

どこで

  • options は1つまたは複数のlcheckオプションを意味する。
  • ts-file は検証するTS ファイル。
  • report-output-file は、レポートを書き込むファイルのパスである。省略された場合、レポートは標準エラー・ストリームに書き込まれる。

最新のヘルプを表示するには、次のように入力する:

lcheck -help

lcheckオプション

オプション動作
-help最新のヘルプ情報を表示して終了する。
-no-acceleratorアクセラレータ(アンパサンド)の一貫性チェックを無効にします。
-no-punctuation終了句読点の一貫性チェックを無効にします。
-no-place-marker原文と訳文の間で、%1%2 、...が一貫して使用されていることを確認するチェックを無効にします。
-no-whitespaces周囲の空白の一貫性チェックを無効にします。
-check-finished完了とマークされたメッセージもチェックします。デフォルトでは、終了した翻訳はチェックされません。
-o <outfile>検証レポートを<outfile> に書き込みます。 指定しない場合、レポートは標準エラーに書き込まれます。
-versionlcheck のバージョンを表示して終了します。

注意: 有効化されたチェックに失敗した場合、プロセスの終了ステータスは 0 以外になります。これにより、lcheck は CI パイプラインでの使用に適しています。

レポートをファイルに書き出す

lcheck -o lcheck_report.txt translations/myapp_de.ts

選択した検査を無効にする

次のコマンドは、アクセラレータと句読点を除くすべてのチェックを実行します:

lcheck -no-accelerator -no-punctuation translations/myapp_de.ts

終了した翻訳もチェックする

lcheck -check-finished translations/myapp_de.ts

CIステップでlcheckを使う

lcheck translations/myapp_de.ts && echo "Translations OK" || echo "Issues found"

CMakeでlcheckを使う

CMakeプロジェクトの設定やビルドの際にlcheck を呼び出すには、Qt6LinguistTools パッケージをロードし、$<TARGET_FILE:Qt6::lcheck> を使ってlcheck 実行ファイルを探します。

次の例では、カスタムターゲットcheck_translations を追加し、TS ファイル上でlcheck を実行し、ビルドアーティファクトの横にレポートを書き込みます。

find_package(Qt6 REQUIRED COMPONENTS LinguistTools)

add_custom_command(
    OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/lcheck_report.txt"
    COMMAND $<TARGET_FILE:Qt6::lcheck>
            -o "${CMAKE_CURRENT_BINARY_DIR}/lcheck_report.txt"
            "${CMAKE_CURRENT_SOURCE_DIR}/translations/myapp_de.ts"
    DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/translations/myapp_de.ts"
    VERBATIM
)

add_custom_target(check_translations
    DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/lcheck_report.txt"
)

qmakeでlcheckを使用する

プロジェクト・ファイルを指定せずに、TSファイル上で直接lcheck

lcheck translations/myapp_de.ts

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