  この文書は、coreutils-ja.info の将来の改訂者に宛てた、最初の翻訳者の
メモである。

  po ファイルを "po4a-translate -f texinfo ..." で生成した texi 
ファイルは、日本語化が十分ではない (手元の po4a のバージョンは 0.42)。
たとえば、章の名前など、日本語にしたい部分が英語のままだったりするし、
また逆に、英語のままにしておきたいのに、日本語になってしまうところもある。

  そこで、 po4a-translate が生成した texi ファイルを手作業で修正して、
日本語化をさらに進めた。その上で、前後の texi の diff を取り、patch を
作った。po ファイルを加筆修正したとき、po4a-translate が生成する texi 
ファイルに patch を当てれば、一応ひとに見せられる程度の日本語 texi 
ファイルができるようにしたわけである。

  こんなふうに使用する。

  $ po4a-translate -f texinfo -m perm.texi -p perm-ja.po -l perm-ja.texi -v
  $ patch -p0 <perm-ja.texi.patch

  $ po4a-translate -f texinfo -m parse-datetime.texi \
    -p parse-datetime-ja.po -l parse-datetime-ja.texi -v
  $ patch -p0 <parse-datetime-ja.texi.patch

  $ po4a-translate -f texinfo -m coreutils.texi -p coreutils-ja.po \
    -l coreutils-ja.texi -v
  $ patch -p0 <coreutils-ja.texi.patch

  原文のバージョンが上がって、翻訳の増補改訂をするときでも、ここにある 
前バージョンの po ファイルを使用し、po4a-updatepo コマンドで po ファイルの
バージョンを上げたのなら、 patch の方も使えるかもしれない。おそらく、

  patching file coreutils-ja.texi
  Hunk #1 FAILED at 5.
  Hunk #2 FAILED at 39.
  Hunk #3 succeeded at 166 (offset 1 line).
  Hunk #4 succeeded at 178 (offset 1 line).
  Hunk #5 FAILED at 200.
  Hunk #6 succeeded at 317 (offset 6 lines).
      ...
  Hunk #85 succeeded at 17363 (offset 476 lines).
  Hunk #86 succeeded at 17943 (offset 476 lines).
  3 out of 86 hunks FAILED -- saving rejects to file coreutils-ja.texi.rej

といったメッセージがいっぱい出て、FAILED になる部分がいくつかある
だろうけれど。実際、coreutils-8.17 から coreutils-8.20 のバージョン
アップでは利用することができた。8.20 から 8.22 でも使えた。

  FAILED になった部分の処理が終わったら、patch を作り直しておくとよい
と思う。po ファイルの翻訳を修正したとき、po4a-translate が生成する 
texi ファイルに手を入れる必要がずっと減って、かなり楽ができる。また、
将来の改訂者が、その patch を利用できるかもしれない。

  po4a を使用した方が、後々改訂作業をするときに効率的だろうと思って、
po4a を使ってみたのだが、texi の場合は、po4a を使わずに、直接 texi 
ファイルに対して作業した方が、かえって楽だったかもしれない。

  最初に述べたように、現在の po4a (verison 0.42) は texinfo に対する
対応が不完全である。そのうち po4a のバージョンが上がれば、日本語になる
べきところがきちんと日本語になり、英語のままにしておきたいところが英語に
なってくれるかもしれない。そうなれば、texi ファイルに patch を当てる
必要がなくなるだろう。「翻訳者から御注意」や「About the translation」
のような、翻訳に追加する部分は、man 7 po4a の言う「Addenda (追加内容)」
の方法で処理できるだろうから。今のところ、それでは不十分なのだけれど。

  「翻訳者から御注意」や「About the translation」、それに訳注については、
内容が古くなったり、必要がなくなったりした部分は、どんどん消すなり、
書き変えるなりしてください。ただし、「翻訳履歴」は必ず付けていただきたい 
(形式については、もっと見やすい形があれば、変更してくださって構わない)。
なお、gnumaniak の翻訳に対する謝辞は、できたら残しておいていただきたい。
先人たちの努力と貢献のおかげで、日本における Liunx の現在があるのだから。

    ******************************************************

  私は、8.20 から 8.22 への po ファイルの更新をこんなふうに行った。
8.20 から 8.22 への移行以外では事情が違うかもしれないが、ご参考までに
書いておく。

    まず、原文の coreutils.texi の 8.20 と 8.22 の diff を取った。
  8.20 では @sc{gnu} などであったものが、8.22 では GNU などと、@sc{} を
  使わなくなっているのに気づいたので、po4a-updatepo を実行する前に、
  こうした規則的な変更を修正しておくことにした。fuzzy を減らすためである。
  sed では、何故かうまく行かなかったので、perl を使った (わたしが sed を
  よく知らないせいかもしれない)。8.20 の coreutils-ja.po の最終稿を仮に 
  coreutils-ja.po.20 と名付けよう。 

    perl -p -e 's/\@sc{(...?)}/\U$+\E/g' coreutils-ja.po.20 >coreutils-ja.po.mod

    8.22 の texi があるディレクトリで、この coreutils-ja.po.mod を
  対象に po4a-updatepo を実行すると、エラーになった。そのエラーメッセージ
  を参考にして、coreutils-ja.po.mod を手作業で数ヶ所書き変えた。
  その上で、

    po4a-updatepo -f texinfo -m coreutils.texi -p coreutils-ja.po.mod

    こうして更新された coreutils-ja.po.mod を ja.po ファイルの原型にした
  わけである。

    私は、こうしてできた 8.22 の coreutils-ja.po に対して、fuzzy の
  部分をすべて改訂した後で、1 回目の patch を当てた。これで (FAILED 
  になる部分はあったものの) 一応うまく行った。しかし、fuzzy を改訂する
  前に patch を当てても、大丈夫だったかもしれない。
  
    parse-datetime-ja.po でも同様なことを行った。perm-ja.po については、
  8.20 と 8.22 の perm.texi の間に変更がなかったので、何もしなかった
  ように思う。

2014/10/07 訳者

