============ 翻訳更新方法 ============ JM リポジトリの構成は :doc:`git_repository` に書かれている通りです。 JM の翻訳の管理方法は * roff を直接翻訳 * po4a を使って翻訳 の2つの方法が混在しています。 po4a を使用している場合には、各パッケージのディレクトリに po4a というフォルダが存在します。 存在しない場合は、roff を直接編集して翻訳しています。 roff を直接翻訳 =============== release 版を編集する場合は、必ず draft を編集してから、 release に反映して下さい。 draft 側には、原文がコメントとして入っていますが、release には翻訳済みの文章のみが含まれます。 .. note:: 以下の説明は、各パッケージのディレクトリ (manual/fetchmail など) で作業することを前提に説明します。 #. draft を更新します #. draft の更新が終わったら、release に反映します。 対象ファイルを draft 以下から release 以下にコピーするだけですが、 JM-release.sh コマンドを利用するのが楽です。 .. code-block:: none $ ../../admin/JM-release.sh -f -g draft/man1/fetchmail.1 release draft/man1/fetchmail.1 -> release/man1/fetchmail.1 #. Git でコミットして、sourceforge.jp に push します。 draft 以下の全ファイルを release に反映する場合は、JM-release-all.sh コマンドを実行します。 draft の全ファイルがリリース済みの場合に release への反映もれがないかを確認する際などに使います。 .. code-block:: none $ cd manual/fetchmail $ ../../admin/JM-release-all.sh (git status や git diff で変更内容を確認) (git commit -> git push) po4a を使って翻訳 ================= **LDP\_man-pages と GNU\_coreutils は管理方法が少し複雑です。詳細は下の方にありますので参照して下さい。** 翻訳は po4a ディレクトリ以下の ja.po ファイルで管理しています。 ja.po ファイルは po4a/ja.po の場合と、po4a//ja.po にある場合があります。 #. man ページに対応する ja.po がどれかは ``po4a/**/*.cfg`` を見て判断します。 更新したいファイルが分かっている場合は以下のように grep して下さい。 .. code-block:: none $ grep iptables-save.8 po4a/**/*.cfg #. ja.po を編集します。編集にあたっては Emacs の po-mode, poedit などが利用できます。 #. make または make translate で ja.po の内容を draft 以下に反映します。 #. (参考 make stat で ja.po の翻訳状況を表示できます) #. release に反映する必要がある場合は、「roff を直接翻訳」の場合と同様に JM-release.sh を使用して、release フォルダ以下に反映して下さい。 #. git commit で更新を登録して、git push で sf.jp に送信して下さい po4a 移行後の課題 ----------------- * レビューをどのようにして行うか? * ja.po を投稿してもレビューできない。 できあがった draft でレビューする必要がある。 * translation-list の更新が手動になっている * 複数のファイルが一つの ja.po の変更で更新されることがあり、管理が面倒 LDP man-pages ============= :doc:`LDP_man-pages` を参照。 GNU_coreutils ============= :doc:`GNU_coreutils` を参照。 ``help2man`` の出力と、追加ファイル ``*.x`` の翻訳を合わせて、 日本語マニュアルを生成しています。 そのため、管理が他のものと異なっています。