文字列の翻訳
翻訳のために、Qt Linguist で翻訳ソース(TS)ファイルを開きます。TSファイルは、ソースフレーズとその翻訳を含む、人間が読めるXMLファイルです。TS ファイルは通常、lupdate
によって作成および更新されます。TS ファイルがない場合は、翻訳ファイルの作成を参照して、TS ファイルを作成してください。
他のプログラムによって生成された国際的な XML Localization Interchange File Format (XLIFF)のファイルを翻訳するには、Qt Linguist を使用することもできます。ただし、標準的な Qt プロジェクトでは、TS ファイル形式のみを使用します。現在、XLIFF バージョン 1.1 と 1.2 のみがサポートされています。
Qt Linguist は、翻訳エリアにターゲット言語を表示し、それに応じて複数形の入力フィールドの数を調整します。複数のTSファイルを開いて同時に翻訳する場合、 と フィールドが各言語ごとに表示されます。位置情報の設定については、Translator Translator comment ターゲットロケールを変更するを参照してください。
開発者が曖昧さをなくすコメントを提供している場合は、Developer comments フィールドに表示されます。
文字列を翻訳するには
- File >Open を選択してTSファイルをロードする。
- Strings ビューに翻訳可能な文字列を表示するには、Context ビューでコンテキストを選択します。
- 文字列を選択して、翻訳エリアのSource text フィールドに表示します。原文内の空白が視覚化されます。
- Translation フィールドに現在の文字列の翻訳を入力します。
Phrases and guesses フィールドの既存の翻訳をダブルクリックして、現在の文字列の翻訳として使用します。Qt Linguist は、フレーズブックからフレーズを読み取り、TS ファイル内の類似したフレーズの既存の翻訳に基づいて推測します。
- オプションで、Translator comment フィールドに他の翻訳者のためのコメントを入力します。
- 翻訳を受け入れるには、Ctrl+Enter キーを押すか、 を選択するか、文字列リストで選択したソース文字列の左側にある アイコンをクリックします。
- File >Save を選択して、作業を保存します。
文字列リストのすべての文字列に (Accepted/Correct) または (Accepted/Warnings) が付くまで、この手順を繰り返します。次に、次のコンテキストを選択し、続行します。
原文と訳文の単語数と文字数を表示するには、View >Statistics を選択します。
File >Release を選択すると、現在の翻訳元ファイルと同じベース名の QM ファイルが作成されます。lrelease
ツールは、アプリケーションのすべての翻訳ソース ファイルに対して同じ機能を実行します。
翻訳ソースと翻訳を印刷するには、File >Print を選択します。
Qt Linguist を終了するには、File >Exit を選択してください。
翻訳可能な文字列間の移動
次の未完成の翻訳に移動するには、 (Next Unfinished) を選択するか、Ctrl+J キーを押します。
次の原文に移動するには、 を選択するか、Ctrl+Shift+J キーを押すか、Translation >Next を選択します。
文脈によって複数の翻訳が必要になるフレーズ
同じフレーズが複数の文脈で矛盾なく現れることがあります。翻訳されたフレーズの別の出現場所に到達すると、Qt Linguist は、Phrases and guesses のビューで可能な翻訳として前の翻訳を提供します。
フレーズが特定の文脈で複数回出現する場合、Context のビューでは一度だけ表示され、文脈内のすべての出現に翻訳が適用されます。同じ文脈の中で同じ語句が異なる意味を持つ場合、開発者はその語句が現れるたびにコメントを書かなければなりません。重複したフレーズはContext ビューに表示されます。開発者のコメントは翻訳エリアに水色の背景で表示されます。
キーボードショートカットの変更
キーボードショートカットは、アクションを実行するキーの組み合わせです。
Altキーのショートカット
メニュー項目やボタンのテキストでは、ニーモニック文字(下線が引かれている)は、AltまたはCtrlを下線文字と一緒に押すと、メニュー項目をクリックしたりボタンを押したりするのと同じアクションを実行することを示します。
例えば、アプリケーションでは、File メニューのニーモニック文字としてF がよく使われます。そのため、メニュー項目をクリックするか、Alt+F を押してメニューを開きます。翻訳可能な文字列のニモニック文字は、アンパサンドを先頭に付けます:\&File
。その文字列の翻訳文にもアンパサンドを、できれば同じ文字の前に付ける必要があります。
アンパサンドを含むフレーズから、Altキーのショートカットの意味を判断できます。翻訳されたフレーズに現在のニーモニック文字が含まれていない場合、またはコンテキスト内の他のショートカットの翻訳で使用されている場合は、別のニーモニック文字を使用できます。一部のショートカットキー(通常はメニューバーにあるショートカットキー)は、他のコンテキストでも適用できる場合があります。
Ctrlキーのショートカット
Ctrlキーのショートカットは、ビジュアルコントロールとは無関係に存在できます。一般的には、複数のキーストロークやマウスクリックを必要とするメニューのアクションや、どのメニューにもボタンにも表示されないアクションを呼び出します。例えば、File メニューには New Ctrl+Nという項目があり、File メニューが閉じていてもCtrl+Nを押すことで呼び出すことができます。
各Ctrlキーのショートカットは、別々の文字列としてStrings ビューに表示されます。例えば、Ctrl+Enter。この文字列には、Altキーのショートカットが表示されるフレーズの文脈のように、意味を与える文脈がないため、Ctrlキーのショートカットが実行する動作を説明するdisambiguation comment 。このコメントは、Source text フィールドの下にある翻訳エリアのDeveloper comments の下に表示されます。
理想的には、Translation >Copy from source text を選択して、Ctrlキーショートカットの翻訳をコピーできます。しかし、その文字がターゲット言語で意味をなさない場合は、変更してください。どちらの文字(アルファベットまたは数字)を選択するにしても、Ctrl+ の後に大文字を続けます。Qtは実行時に自動的に正しい名前を表示します。Altキーのショートカットと同様に、文字を変更する場合は、他のCtrlキーのショートカットと競合しないようにしてください。
注意: ショートカットのAlt、Ctrl、Shift の部分は翻訳しないでください。
番号付き引数と複数形の扱い
番号付き引数は、実行時にテキストに置き換えられるプレースホルダーです。ソース文字列では、パーセント記号の後に数字が続く形で表示されます。例えば、After processing file %1, file %2 is next in line
の文字列では、%1
と%2
が番号付き引数で、実行時に最初と 2 番目のファイル名に置き換えられます。同じ番号の引数が翻訳にも現れる必要がありますが、必ずしも同じ順序である必要はありません。この文字列をドイツ語に翻訳する場合、Datei %2 wird bearbeitet, wenn Datei %1 fertig ist
のように、フレーズを逆にすることができます。どちらの番号の引数も翻訳文に現れますが、順序は逆です。番号付き引数は、ソース文字列の引数列の位置に関係なく、翻訳では常に同じテ キストで置き換えられます。
番号付き引数の使用は、多くの場合、原文での複数形の使用を伴います。多くの言語では、テキストの形式は表示される値によって異なり、複数の翻訳が必要になります。開発者がソース・テキストを正しい方法でマークアップしている場合、翻訳領域で、複数形の可能性がある各形式のフィールドが利用可能になります。詳細については、「翻訳用ソースコードの記述」を参照してください。
ターゲットロケールの変更
Edit >Translation File Settings で、ロケール情報を明示的に設定できます。翻訳ソースファイルを開いたときに、ターゲット言語とターゲット国が明示的に設定されていない場合、Qt Linguist 、翻訳ソースファイル名からそれらを推測しようとします。このため、翻訳ファイルは次のファイル名規則に従う必要があります:appname_language[_country].ts
ここで
language
はISO 639言語コードを小文字で表します。country
はISO 3166の2文字の国コードで、大文字です。
ターゲット言語とターゲット国の解決に失敗すると、Translation File Settings ウィンドウが開きます。
たとえば、app_de.ts
はターゲット言語をドイツ語に、app_de_CH.ts
はターゲット言語をドイツ語に、ターゲット国をスイスに設定します。これは、現在のロケールの翻訳を自動的に読み込むのにも役立ちます。詳しくは、翻訳を有効にするをご覧ください。
© 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.