Localisation/jp

ローカライゼーションとは、複数の言語のユーザーインタフェースをソフトウェアに与える一般的なプロセスです。FreeCADでは、編集→設定→アプリケーションを編集するで、ユーザーインターフェイスの言語を設定することができます。FreeCADは、Qtを使用して複数の言語のサポートを可能にしています。Unix / Linuxシステム上では、FreeCADはシステムの現在の地域設定を使用するよう初期設定されています。

FreeCAD翻訳の支援

プログラマ以外の人々がFreeCADのためにできる最も重要な事の一つが、プログラムの翻訳を助けることです。オンライン共同翻訳システムCrowdinの採用により、翻訳作業は以前よりとても簡単になりました。

翻訳のやり方

 :あなたがFreeCADの翻訳に活発に参加しており、次のリリースの開始準備を事前に知って翻訳のレビューを行いたい場合には、以下に登録してください。 http://www.freecadweb.org/tracker/view.php?id=137

Qt-Linguistによる翻訳(昔の方法)

以下の情報は今後使用される必要がなく、おそらく廃れていくでしょう。この情報は、プログラマがその動作をよく理解する手助けになる可能性があるため残されています。

利用可能な翻訳ファイル

独自モジュール/アプリケーションの翻訳の準備

必要なもの

独自のアプリケーションモジュールをローカライズするにはQtの助けが必要になります。これらはTrolltech-ウェブサイトからダウンロードすることができますし、また、LibPackにも含まれています:

qmake
プロジェクトファイルを生成します
lupdate
ソースコードを調べてプロジェクトからオリジナルテキストを抽出したり更新したりします
Qt-Linguist
Qt-Linguistは非常に使いやすく、一般的な文章の慣用表現集のような便利な機能を持ち、あなたの翻訳を手助けします

プロジェクトのセットアップ

プロジェクトのローカライゼーションを始めるために、モジュールのGUI部分に移動し以下のコマンドを実行してください:

qmake -project

このコマンドはあなたのプロジェクトのディレクトリにあるテキスト文字列を含んでいるファイルを調べ、次の例のようなプロジェクトファイルを作成します:

######################################################################
# Automatically generated by qmake (1.06c) Do 2. Nov 14:44:21 2006
######################################################################

TEMPLATE = app
DEPENDPATH += .\Icons
INCLUDEPATH += .

# Input
HEADERS += ViewProvider.h Workbench.h
SOURCES += AppMyModGui.cpp \
           Command.cpp \
           ViewProvider.cpp \
           Workbench.cpp
TRANSLATIONS += MyMod_de.ts

手動でファイルを追加することができます。TRANSLATIONSセクションには言語ごとに翻訳されたファイルのリストがあります。上記の例ではMyMod_de.ts はドイツ語に翻訳されたファイルです。

次にlupdateを実行し、GUIに含まれる文字列リテラルを抽出する必要があります。ソースコードの変更後にlupdateを実行しても翻訳ファイルから文字列を削除することは決してないため、常に安全です。lupdateは新しい文字列を追加するだけです。

次にVisualStudioのプロジェクトへ.ts-filesを追加する必要があります。次のカスタムビルドメソッドを指定してください:

python ..\..\..\Tools\qembed.py "$(InputDir)\$(InputName).ts"
                "$(InputDir)\$(InputName).h" "$(InputName)"

注意:1行のコマンドラインで入力してください。ここではレイアウトのために改行しているだけです。

上記の例のように.ts-fileをコンパイルすることによって、ヘッダーファイル MyMod_de.hが作成されます。このファイルをインクルードする最適な場所はApp<Modul>Gui.cppです。今回の例ではAppMyModGui.cppになります。このファイルに次の行を追加してあなたの翻訳をアプリケーション内で公開しましょう。

new Gui::LanguageProducer("Deutsch", <Modul>_de_h_data, <Modul>_de_h_len);

pythonファイルの翻訳設定

pyファイルのローカライゼーションを簡単にするために複数のpyファイルにも対応できる"pylupdate4"ツールが利用できます。-ts オプションをつけることで複数の.tsファイルの作成や更新が可能です。例えばフランス語のための.tsファイルを作成するには、コマンドラインに次のように入力するだけです:

pylupdate4 *.py -ts YourModule_fr.ts 

pylupdateツールは、pyファイルからtranslate()かtr()関数をスキャンし、YourModule_fr.tsファイルを作ります。このファイルはQLinguistによる翻訳が可能であり、QLinguistまたは次のコマンドでYourModule_fr.qmが作成されます:

lrelease YourModule_fr.ts

pylupdate4ツールはtranslate()関数をあまり精度よく認識しないことに注意してください。この関数は詳細な書式を必要とします(例としてドラフトモジュールファイルを参照してください)。ファイル内では以下のようにして翻訳システムを組み入れることが可能です(QApplicationのロード後、Qtウィジェットの作成前に行います):

translator = QtCore.QTranslator()
translator.load("YourModule_"+languages[ln])
QtGui.QApplication.installTranslator(translator)

必要に応じて、以下の内容のXMLファイルDraft.qrcを作成することができます:

<RCC>
<qresource prefix="/translations" > 
<file>Draft_fr.qm</file> 
</qresource> 
</RCC> 

pyrcc4 Draft.qrc -o qrc_Draft.py を実行すると、全てのリソースを含む大きなPythonファイルを作成します。またこの方法で複数のアイコンファイルを1つのリソースファイルに入れることも可能です。

wikiを翻訳する

このwikiは多数のコンテンツを提供しています。最新の興味深い内容はマニュアルに集められています。

まず最初のステップはあなたの言語でのマニュアルの翻訳がすでに始まっているかどうかを確認することです("マニュアル"の下の左側のサイドバーを見てみください)。

開始されていなければフォーラムに行き、新しい翻訳を始めたいと発言してください。我々はあなたが取り組みたい言語のための基本的な設定を作成します。

次にwikiの編集の許可を得なければなりません

もしあなたの言語の翻訳が既に開始されている場合、まだ翻訳されていないページを見つけてください(リストに赤色で表示されています)。手順は単純です:赤いページに行き、対応する英語ページの内容をコピーして貼り付けます、そして翻訳を開始します

もとの英語ページのすべてのタグとテンプレートを入れるのを忘れないでください。いくつかのテンプレートは、あなたの言葉の相当するテンプレートを持っているでしょう(例えば、Docnav/frはフランス語版のDocnavテンプレートです)。ほとんどの全てのリンクに対してスラッシュとあなたの言語コードを使わなければならないでしょう。やり方は翻訳済みの他のページを参考にしてください。

また[[Category:Developer Documentation/fr]]のようにカテゴリーにスラッシュとあなたの言語コードを追加してください。

ページの翻訳を終えたら、元の英語ページにあなたの翻訳へのリンクを加えなければなりません。これによって読者は {{languages}}テンプレートからそのページの翻訳版が利用できることがわかります。他の翻訳者のやり方を見て同じようにしましょう。

もし自信がない場合、フォーラムに行き、正しいかどうかのチェックを依頼してください。

マニュアルページでよく使用される3つのテンプレートがあります。これら3つのテンプレートはローカライズバージョンを持っています。

ページの命名規則

MediaWikiエンジンのSourceforge実装の制限のために、あなたのページの名前を、元の英語ページの名前にスラッシュとあなたの言語コードを追加した名前にする必要があるので注意してください。例えばAbout FreeCADの翻訳されたページは、スペイン語ならAbout FreeCAD/es、ポーランド語ならAbout FreeCAD/plといった具合になります。この理由は単純に翻訳者が去った場合にwikiの管理者が(すべての言語を話せるわけではないので)それらのページが何であるかを知るためです。またメンテナンスを容易にしてページが失われるのを避けるためでもあります。

Docnavテンプレートのリンク先のページ名をあなたの言語で表示したい場合、リダイレクトページを使用します。これは基本的には実際のページへのショートカットリンクです。以下はAbout FreeCADのフランス語のページの例です。

#REDIRECT [[About FreeCAD/fr]]
{{docnav/fr|Bienvenue sur l'aide en ligne|Fonctionnalités}}

ページ"Bienvenue sur l'aide en ligne"はOnline Help Startpage/frにリダイレクトし、ページ"Fonctionnalites"はFeature list/frへリダイレクトします.

不明な点があれば遠慮しないでフォーラムで聞きましょう 。


Online version: "http://www.freecadweb.org/wiki/index.php?title=Localisation/jp&oldid=211340"

Navigation menu