LimeSurvey の翻訳
From LimeSurvey Manual
LimeSurveyの翻訳
LimeSurvey があなたの母語に翻訳されることはすばらしいことではありませんか? LimeSurveyのチームは、常に新しいものを翻訳したり、既存のもの更新したりすることを手伝ってくれる人を探しています。これらの説明を読んで、疑問や質問がある場合は、ためらわずにtranslations@limesurvey.org にメールしてください。
翻訳のしかた - ステップバイステップ
既存の翻訳のアップデート
- LimeSurvey ウェブサイトにサインアップし、アカウントにログインします。
- https://translate.limesurvey.orgにアクセスし、同じユーザー名・パスワードでログインします。
- 翻訳する対象のLimeSurveyのバージョンを選択し、翻訳を始めます。翻訳が承認されると、週次の安定リリースに自動的に組み込まれ、変更ログにあなたのユーザー名が記録されます。
- 新しく翻訳された文字列を承認する役割を持つ主幹翻訳者に関心をお持ちの場合は、translations@limsurvey.orgあてにメールでコンタクトしてください。あなたがこの役割を果たすため、週に最大1時間ほどの時間を割いていただきます。
その他の翻訳箇所
LimeSurveyは外部のライブラリーを使用しており、独自の翻訳システムがあります。現在使用されているライブラリーは以下のとおりです。
既存の翻訳をカスタマイズする
場合により、既存の翻訳を更新して、特定のアンケートの状況に適合させたいことがあるでしょう。このような場合は次のようにします。
- https://translate.limesurvey.orgにアクセスし、翻訳したいLimeSurveyのバージョンと更新したい言語を選択します。
- 翻訳ページの一番下に、すべての文字列を*.poファイルとしてエクスポートする機能があります。Exportをクリックして、ローカルハードディスクに*.poファイルとして保存します。
- Poeditをダウンロードしてインストールします。
- Poeditを開始し、ダウンロードした.poファイルを編集し、翻訳を行います。
- .poファイルを保存する際、*.moファイルも自動的に作成されます。後者はLimeSurveyが読み込みます。
- 最後のステップとして、*.moファイルを/localeフォルダーの所定の言語のフォルダーに配置(既存のものと入れ替え)します。
注意: LimeSurvey Pro(企業ユーザー向け)を使用している場合、開発チームがファイルを更新します。サポートチケットを発行し、*.poファイルを添付して送信してください。(*.moファイルではありません)
新しい翻訳を作成する
- まずはじめに、LimeSurveyの開発バージョンにアクセスします。詳しくは、ソースコードにアクセスしてください。
- Poeditをダウンロードしてインストールします。
- 該当の言語の言語コードをIANA Language Subtag Registryから検索します。
- /locale directory(LimeSurveyのルートディレクトリー)に入り、言語コードと同じ名前のディレクトリーを作成します。
- 次のリンク[1]にアクセスして、言語テンプレートをダウンロードします。プロジェクトを選択し、次に任意の言語を選択して(たとえば、英語のエントリーに移動)、一番下までスクロールします。そこから、<言語コード>.poファイルとして言語ファイルをエクスポートすることができます。
- <言語コード>.poファイルを/localeディレクトリーの下に新たに作成したフォルダーにコピーします。
- Poeditでファイルを開き、翻訳したいものをすべて翻訳します。
- LimeSurveyに言語を認識させるため、application/helpers/surveytranslator_helper.php(LimeSurveyのルートディレクトリにあります)に追記します。テキストエディターでファイルを開き、他の言語と同じように言語を追加します。
- 保存、すなわち、LimeSurveyが新たな言語を認識するため、修正した".poファイルを保存します。これにより、同じフォルダーに*.moファイルが自動的に生成され、LimeSurveyが読み込みます。
- 新しい*.poファイルとアップデートしたsurveytranslator_helper.phpファイルをtranslations@limesurvey.orgに送信します。
多くの特殊文字を使用する言語の場合: PDF生成に使用するフォントを確認してください(たとえば、dejavusansであるか確認してください)。次に、このフォントファイルをalternatepdffontfileのデフォルト構成に追加します。
新たな言語を追加する場合のサンプルコード
$supportedLanguages['code']['description'] = gT('Language');
$supportedLanguages['code']['nativedescription'] = 'Language in native';
$supportedLanguages['code']['rtl'] = (true|false); // RTL(右から左に書く言語)
$supportedLanguages['code']['dateformat'] = integer; // getDateFormatData機能の説明を参照
$supportedLanguages['code']['radixpoint'] = (0|1); // 小数点の指定 0 : .、1 : ,
$supportedLanguages['code']['cldr'] = 'code';
$supportedLanguages['code']['momentjs'] = 'code'; // moment.jsで使用
その他の翻訳箇所
- LimeSurveyはmoment.jsを使用しています。translations@limesurvey.orgにメッセージを送信する際は、言語コードを確認してください。
- moment.js : moment.jsの翻訳に協力する方法については、moment.js documentationに説明があります。