最新の日本語翻訳を開発版に反映させる

Last-modified: 2017-04-27 (木) 19:22:47

あらかじめ、次のページを読んでおいてください。

Wesnothの日本語翻訳はTransifex上で行われています。

現在の日本語翻訳のフローは次のようになっています。

Wesnoth本体のメッセージの修正・更新
↓
Transifexでの翻訳作業 → GitHubへバックアップ(更新履歴の保存)
↓
Wesnoth本体へ反映

※各作業のタイミングによって、若干のタイムラグが生じることを承知しておいてください、

Transifex上からファイルを取得するにはTransifexのアカウント(翻訳への参加)が必要となります。
しかし、それでは敷居が高すぎるので、TransifexのバックアップであるRatArmyさんのGitHub
https://github.com/fujimo-t/wesnoth-ja
からファイルを取ってきて、Wesnoth開発版に反映させます。

作業は以下のようになります。

最初の一回だけ

git clone https://github.com/fujimo-t/wesnoth-ja

「wesnoth-ja」というフォルダが作成され、リポジトリの中身がコピーされます。

二回目以降

cd wesnoth-ja
git pull

最新のリポジトリの内容に更新されます。

さて、msgfmt を使って .poファイルから .moファイルを作成するわけですが、次のようなMakefile を作成しておくと便利です。
なお、字下げは必ずタブ(tab)で行ってください(Makefileの仕様です)。

Makefile

MSGFMT  = /usr/bin/msgfmt
LOCALE  = ja
FILES = $(wildcard */$(LOCALE).po)
DIRS  = $(foreach file, $(FILES), $(dir $(file)))
MO  = $(foreach mo, $(DIRS), $(mo:%/=%.mo))
all: $(MO)
%.mo : %/$(LOCALE).po
	$(MSGFMT) -o $@ $<
install
	cp $(MO) ~/git_src/wesnoth/translatons/$(LOCALE)/LC_MESSAGES/
clean:
	rm -f $(MO)

使い方は、

make

または

make all

で、.poファイルを元に .moファイルを作成します。
全ての .poファイルをまとめて処理します。

make install

で、.moファイルをコピーします。
インストール先は、ご自身の環境に合わせて変更してください。
aptでインストールしたファイルを入れ替えるなど管理者権限が必要な場合は

sudo make install

としてください。
このとき、wesnoth は起動しておかないでください。
インストール(.moファイルのコピー)が終わってからwesnothを起動すると、最新の日本語翻訳が反映されているはずです。

make clean

でmoファイルを削除します。

環境設定ができたら、日常の作業としては、

cd wesnoth-ja # 作業フォルダに移動
git pull      #  github から最新の poファイルを取ってくる
make          #  poファイルからmoファイルを作成
make install  #  moファイルを組み込む

となります。