LDP man-pages では、翻訳に po4a を利用しています。 そのため、手順が他の翻訳方法と少し異なっています。

準備作業

前提条件

1. 作業環境が Linux であること

作業用環境は Linux を想定しています。ディストリビューションは特に問いません。使用するコマンド類がインストールされていれば大丈夫です。

2. アカウントがあること

すでに osdn にアカウントがあり、jm プロジェクトに参加しているものとします。

本説明における環境等

1. アカウント名 foobar

2. ホームディレクトリ /home/foobar

3. 作業ディレクトリ /home/foobar/linuxjm  なお、コマンドプロンプトは % とします。

初期設定

1. 作業用ディレクトリの準備

任意の場所に作業用ディレクトリを作成します。たとえば ~/linuxjm とします。

2. コマンド類の導入

GNU Make と po4a が必要です。インストールしてください。多くのディストリビューションではすでにパッケージ化されていますので、リポジトリからのインストールコマンドを実行するだけでインストール出来ると思います。 なお、po4a のバージョンにより roff マクロの認識や文字列抽出方法に違いがあることを 確認しています。以下の環境で動作を確認しています (2021年3月時点)。
    • po4a 0.57 (Ubuntu 20.04 focal)
    • po4a 0.55 (Debian 10 buster)
    • po4a 0.52 (Ubuntu 18.04 focal/openSUSE 15.3)

3. リポジトリのクローンを取得

リポジトリは git.osdn.net:/gitroot/linuxjm/jm.git です。以下のコマンドを使用してリポジトリのクローンを取得してください。
カレントディレクトリが /home/foobar/linuxjm として、

% git clone foobar@git.osdn.net:/gitroot/linuxjm/jm.git

動作確認

翻訳更新の動作確認を行っておきます。 全ファイルを処理するので多少時間がかかります (2〜3分くらい)。

カレントディレクトリが、 /home/foobar/linuxjm/jm として
% cd manual/LDP_man-pages
% make setup
% make
% git status
全部のコマンドがエラーなく終了すること、 最後の git status コマンドで更新されているファイルがないこと、 を確認してください。 git status の出力で更新されているファイルがある場合は、 そのまま翻訳作業を進めると、意図しないファイルも更新してしまうことがあるので、 メーリングリストで相談するなどして対応を検討しましょう。 作業漏れ以外の可能性もあり、たとえば、 po4a のバージョンが変わって PO ファイルへの抜き出し方法が変わることもあります。

jm リポジトリの構成

jm リポジトリは以下のような構成になっています。

翻訳前処理

翻訳対象の選定

翻訳を開始するにあたっては、まず翻訳対象を決めます。以下では、at を翻訳対象として説明していきます。また、既存翻訳データの更新作業をするということを前提としています。新しく翻訳対象を追加する場合は別項目を参照してください。

翻訳更新作業

翻訳予約宣言

翻訳作業は、他の方とかち合わないようにしないと、後の調整が大変になります。そのため、以下の作業を行います。

  1. linuxjm-discuss にどのソフトウェアを翻訳するかを宣言 linuxjm-discuss メーリングリストに、翻訳対象のソフトウエアが何であるかを宣言します。宣言の書式はこちらをご覧下さい。
  2. translation_list を編集 git リポジトリの当該パッケージディレクトリ直下(今回の例では /home/foobar/linuxjm/jm/manual/at 以下同様) にある、translation_list に、て校正依頼することを示す記号や名前等を書き加えてコミットします。編集方法はこちらをご覧下さい。

翻訳更新対象ソースの準備

  1. 翻訳更新対象のオリジナルパッケージを入手します。入手方法は種々あり、オリジナル配布サイトから持ってきたり、既存のSRPMファイルからソース部分を抜き出したりして入手します。
  2. 翻訳更新対象のマニュアルを所定のディレクトリにコピーします。at の場合には、当該パッケージディレクトリ直下の original ディレクトリにコピーします。この時、カテゴリごとのサブディレクトリを作成し、コピーします。at の場合は man1,man5,man8 の3つのサブディレクトリにコピーします。

翻訳内容の更新

po4a-updatepo コマンドで翻訳データを更新したら、更新されたオリジナルデータを元に、po ファイルを編集します。po ファイルを編集するツールは複数ありますので、お好みのものをお使いください。KDE 環境下であれば、Qt Linguist がありますし、翻訳メモリや翻訳支援機能を備えた OmegaT などを使っても良いでしょう。 当該パッケージのディレクトリ直下には ChangeLog ファイルが存在する場合があります。このファイルは過去試用していたものですが、現在は使用していませんので特に編集する必要はありません。
翻訳が完了したら、翻訳のCopyrightも追記しておきます。Copyright記述部分は単独のファイルとなっており、当該パッケージ直下の po4a/add_ja/copyright ディレクトリ配下に、各マニュアルページ毎にファイルが用意されています。そのファイルを修正します。既存の記述を見ながら同じように追記してください。

翻訳結果の生成

翻訳データの編集が終わったら、翻訳結果を生成します。

  1. *.cfg ファイルの修正(必要であれば)を行います。*.cfg ファイルには、翻訳結果を生成する先のディレクトリ名が記載されています。既存のものは、生成先が release ディレクトリになっていますので、これを draft ディレクトリに変更します。たとえば、 at パッケージの場合は、当該ディレクトリのpo4a ディレクトリ配下の man1 ディレクトリには at-man1.cfg と言うファイルがあります。この中に release と書かれているところがあれば、 draft に変更します。
  2. translation_list を修正します。別途修正方法を記したページ https://linuxjm.osdn.jp/guide/translation_list.html がありますので参照してください。項目の順番は、作成したファイルのアルファベット順とします(man1の中でアルファベット順、man2の中でアルファベット順... というように)。
  3. 履歴情報を修正します。これは、翻訳した各ファイルの先頭部分にコメントで付加するものです。履歴情報は当該ディレクトリの po4a/add_ja/copyrightディレクトリ配下に、各マニュアル毎に用意されています。そのファイルを修正します。
  4. 翻訳結果を生成します。これは、当該ディレクトリ直下 で、 make を実行します。
  5. 翻訳が仕上がったことをメーリングリストで通知します。形式は http://linuxjm.osdn.jp/guide/mail_format.html に説明があります。キーワードは DP で良いでしょう。

リリース版の公開と通知

校正作業が終わったら、リリースを行います。

  1. 当該パッケージの draft ディレクトリにある内容を release ディレクトリにコピーして、git で commit を行います。
  2. リリースを行った旨をメーリングリストで通知します。キーワードは RO で良いでしょう。