locale_ja - noonworks/Nursery GitHub Wiki

翻訳について

1. 翻訳の意義

現状、Nurseryは日本語以外での使用はほとんどないと思われます(棒読みちゃんが日本語専用ソフトなので)。

しかし、 翻訳ファイルにはBotの発言するシステムメッセージを簡単にカスタマイズできる というメリットがあります。

  • 例えば「システムメッセージを関西弁にしたBot」や「システムメッセージを特定のキャラクターの口調にしたBot」などを、翻訳ファイルの差し替えで実現できます。
  • 翻訳ファイルはプログラミングの知識がなくても比較的簡単に作成・編集することができます。

2. gettext

NurseryはNGettextを使用しています。これはGnu gettextのC#向け実装です。

gettextをご存知の方は、好きなツールでpoファイルを編集し、moファイルを以下のディレクトリに配置してください。

locale\(CULTURE)\LC_MESSAGES
  • (CULTURE)ja_JPen_USなどです。日本語版Windowsの場合、ほとんどがja_JPに設定されています。
  • ファイル名はlocale\ja_JP\LC_MESSAGESを参考にしてください。

3. より詳しい解説

ここでは、日本語(ja_JP)の翻訳ファイルを差し替える手順を解説します。

3-1. Poeditのインストール

poファイルを編集するためのツールとして、Poeditをインストールします。無償版でかまいません。(その他のエディタを使用してもかまいません。)

3-2. poファイルのダウンロード

poファイルはNurseryのソースコードlocaleディレクトリにあります。cloneするかzipファイルをダウンロードして解凍してください。

3-2-1. zipファイルのダウンロード方法

上記のリンクが使えない場合、以下の手順でダウンロードしてください。

  1. Nurseryのソースコードのページを開きます。
  2. [Clone or download] のボタンを押します。
  3. [Download ZIP] のボタンを押します。

Clone or download ボタンは画面の右端の緑色のボタンです

3-3. poファイルの編集

  1. BasicPlugins.ja_JP.poをダブルクリックして開きます。
  2. 英語と日本語の対応表が表示されます。
  3. 画面の右側のサイドバーに「翻訳者への注記」が表示されます。(サイドバーが表示されていない場合は、右上の「サイドバーを表示・非表示にする」ボタンを押して表示します。)
  4. 「翻訳者への注記」が「Bot Message」で始まる項目が、BotがDiscordに発言するメッセージです。
    • Bot Message : BotがDiscordに発言するメッセージ。
    • Bot-Help Message : helpコマンドで表示されるメッセージ。
    • Log Message : ログに出力されるメッセージ。
    • DebugLog Message : デバッグログに出力されるメッセージ。
  5. 「翻訳者への注記」が「Bot Message」で始まる項目を選択し、最下部の「翻訳」を編集します。
  6. 編集し終わったら「保存」ボタンをクリックします。

3-4. moファイルのコピー

  1. locale\ja_JP\LC_MESSAGES内にあるBasicPlugins.moの名前をBasicPlugins.mo.bakなどに変更します。
  2. BasicPlugins.ja_JP.poと同じフォルダにBasicPlugins.ja_JP.moが生成されているのを確認します。
  3. BasicPlugins.ja_JP.moの名前をBasicPlugins.moに変更します。
  4. 新しいBasicPlugins.molocale\ja_JP\LC_MESSAGESにコピーします。
  5. Nursery.exeの次回起動時から、設定が反映されます。

3-5. 他のファイルについて

同様にして、他のmoファイルも差し替えます。ただし、Nursery.moにはBot Messageの項目がないので、変更しなくてもかまいません。

3-6. 翻訳ファイルのバージョンアップ

Nurseryのバージョンアップによって、翻訳データが変更されたり、新しく翻訳すべき項目が追加されることがあります。

3-6-1. potファイル

potファイルは、poファイルのテンプレートです。poファイルと同様にNurseryのソースコードlocaleディレクトリにあります。

3-6-2. potファイルを使用してpoファイルを更新する

  1. Nurseryの最新のソースコードをダウンロードして、適当な場所に解凍します。
  2. 自作のpoファイルをPoeditで開きます。
  3. メニューの[カタログ] - [POTファイルから更新]を選択します。
  4. 1でダウンロードした最新のソースコード内のpotファイルを選択します。
  5. 変更があった項目が黄色く表示されるので、自作のpoファイルを修正します。
  6. 編集し終わったら「保存」ボタンをクリックします。

poファイルが更新できたら、作成したときと同様にmoファイルを新しいものに差し替えます。