PySide Internationalization/ja: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
'''日本語''' [[PySide Internationalization|English]]
[[Category:LanguageBindings::PySide]]<br />[[Category:LanguageBindings::PySide Japanese]]<br />'''日本語''' [[PySide_Internationalization|English]]


=PySideプログラムの国際化=
= PySideプログラムの国際化 =


まず、次のようにプロジェクトファイルを作成します。<br />'''kalam.pro'''<br />
まず、次のようにプロジェクトファイルを作成します。<br />'''kalam.pro'''<br /><code>SOURCES = main.py<br />TRANSLATIONS = i18n/en_GB.ts  i18n/eo_EO.ts<br /></code>


TRANSLATIONSでは、これから作成する翻訳したい言語の翻訳ファイルを指定します(この例ではイギリス英語とエスペラント語)。
TRANSLATIONSでは、これから作成する翻訳したい言語の翻訳ファイルを指定します(この例ではイギリス英語とエスペラント語)。


次のコマンドを実行します。<br />
次のコマンドを実行します。<br /><code># Ubuntuの場合、このツールはpyside-toolsパッケージに含まれています<br />$ pyside-lupdate kalam.pro</code>


これでQt Linguist( [http://doc.qt.nokia.com/4.7/linguist-translators.html Linguistのチュートリアル] ''[doc.qt.nokia.com]'' )で使用する翻訳ファイルが作成されました。 Qt Linguistで.tsファイルを読み込み、各項目をダブルクリックして訳を入力します。翻訳が済んだら「?」アイコンをクリックして完了アイコンに切り替えます。最後に「ファイル」→「リリース」を実行してqmファイルを作成します。Qtのtranslatorはこのqmファイルを使ってアプリケーションの翻訳を行います。
これでQt Linguist( &quot;Linguistのチュートリアル&amp;quot;:http://doc.qt.nokia.com/4.7/linguist-translators.html )で使用する翻訳ファイルが作成されました。 Qt Linguistで.tsファイルを読み込み、各項目をダブルクリックして訳を入力します。翻訳が済んだら「?」アイコンをクリックして完了アイコンに切り替えます。最後に「ファイル」→「リリース」を実行してqmファイルを作成します。Qtのtranslatorはこのqmファイルを使ってアプリケーションの翻訳を行います。


アプリケーションの翻訳対応は次のように簡単に追加できます。<br /> 上の例ではエスペラント語の翻訳をロードしています。
アプリケーションの翻訳対応は次のように簡単に追加できます。<br /><code><br /> translator = QtCore.QTranslator()<br /> translator.load('i18n/eo_EO')<br /> app = QtGui.QApplication(sys.argv)<br /> app.installTranslator(translator)<br /></code><br />上の例ではエスペラント語の翻訳をロードしています。


QObjectは翻訳された文字列を返す関数trをもっています。先ほど使用したpyside-lupdateコマンドはソースコードをスキャンして、関数trを呼んでいるインスタンスの場所を探しています。<br />
QObjectは翻訳された文字列を返す関数trをもっています。先ほど使用したpyside-lupdateコマンドはソースコードをスキャンして、関数trを呼んでいるインスタンスの場所を探しています。<br /><code><br />self.tr('sksddsl')<br />QObject.tr('xyz')<br />MyClassX.tr('nanana')
 
===Categories:===
 
* [[:Category:LanguageBindings|LanguageBindings]]
** [[:Category:LanguageBindings::PySide|PySide]]
* [[:Category:LanguageBindings::PySide-Japanese|PySide Japanese]]

Revision as of 10:42, 24 February 2015



日本語 English

PySideプログラムの国際化

まず、次のようにプロジェクトファイルを作成します。
kalam.pro

SOURCES = main.py<br />TRANSLATIONS = i18n/en_GB.ts  i18n/eo_EO.ts<br />

TRANSLATIONSでは、これから作成する翻訳したい言語の翻訳ファイルを指定します(この例ではイギリス英語とエスペラント語)。

次のコマンドを実行します。

# Ubuntuの場合、このツールはpyside-toolsパッケージに含まれています<br />$ pyside-lupdate kalam.pro

これでQt Linguist( "Linguistのチュートリアル&quot;:http://doc.qt.nokia.com/4.7/linguist-translators.html )で使用する翻訳ファイルが作成されました。 Qt Linguistで.tsファイルを読み込み、各項目をダブルクリックして訳を入力します。翻訳が済んだら「?」アイコンをクリックして完了アイコンに切り替えます。最後に「ファイル」→「リリース」を実行してqmファイルを作成します。Qtのtranslatorはこのqmファイルを使ってアプリケーションの翻訳を行います。

アプリケーションの翻訳対応は次のように簡単に追加できます。

<br /> translator = QtCore.QTranslator()<br /> translator.load('i18n/eo_EO')<br /> app = QtGui.QApplication(sys.argv)<br /> app.installTranslator(translator)<br />


上の例ではエスペラント語の翻訳をロードしています。

QObjectは翻訳された文字列を返す関数trをもっています。先ほど使用したpyside-lupdateコマンドはソースコードをスキャンして、関数trを呼んでいるインスタンスの場所を探しています。

self.tr('sksddsl')
QObject.tr('xyz')
MyClassX.tr('nanana')