2008年1月18日金曜日

2ch有志が翻訳をしようと企んでいるようです。

ドキュメント翻訳用のwikiを作った人がいるようです。
http://www13.atwiki.jp/freebsd_manual/
ま、manualって書いてあるぞ……? 
それはさておき、ちょっと見てみると、どかっとリストだけ貼られてる状況。こ、これは滅入る……
wikiだけあってもしょうがないので、とりあえず3つ、提案してみます。
『目標を決めよう。』『とりあえず訳そう。』『訳すのを手伝おう。』です。

■目標を決めよう。

何よりもまず、既に訳されているかどうかを確認する必要があります。実は結構な量のドキュメントがdoc-jp(FreeBSD 日本語ドキュメンテーションプロジェクト)によって訳されているのですが、上記wikiについては、勢いでやっつけてしまいたい! 翻訳には興味あるけどSGMLとかはダルい! くらいのノリが見えます。それはそれでいいんですが、折角doc-jpが数年にわたりノウハウや訳文を積み上げているわけですから、これを活かさない手はないでしょう。

英文については、この中にあるものがターゲットになることでしょう。
/usr/doc/en_US.ISO8859-1/
( http://www.freebsd.org/doc/en/ )
例えばハンドブックであれば
/usr/doc/en_US.ISO8859-1/books/handbook/
( http://www.freebsd.org/doc/en/books/handbook/ )
こうです。分割版をお勧めします。

で、日本語訳があるかどうかは、
/usr/doc/ja_JP.eucJP/
( http://www.freebsd.org/doc/ja/ )
ここを見ることになります。例えばハンドブックであれば
/usr/doc/ja_JP.eucJP/books/handbook/
( http://www.freebsd.org/doc/ja/books/handbook/ )
こうですね。分割版を(ry

で、ハンドブックの場合なら、分割されたHTMLファイルから1つを選び、wikiで翻訳作業をしてみるとよいでしょう。

さて、ハンドブックの英語版と日本語版を見比べてみると、コピーライトもさることながら、一部章立てが違うことに気づきます(例えば二章)。これは、日本語訳した英文ファイルのバージョンと、現在の英文ファイルのバージョンが違うために起こります。なので、翻訳するときには『どのファイルを訳したか』『いつのファイルを訳したか』の2つを明確にすることが重要です。wikiには当面、どのHTMLファイルを、いつ翻訳したか、書いておけばいいと思います。

(ファイルの取扱い方を把握した人なら、バージョンを書いて元ファイルを訳すのがベスト。今は7.0-RELEASE直前なので、今後さらに英文側が変更される可能性が高いことに注意。)

なお、http://www.freebsd.org/doc/ja/ には反映されていない和文もありますので注意して下さい。( /usr/doc/ja_JP.eucJP/ 以下を手元のファイルやcvswebなどで見てみてください。 )

■『とりあえず訳そう。』

どれを訳すか決まったら翻訳作業に入るわけですが、せっかくですのでdoc-jpに合わせた訳文を心がけてみましょう。

http://www.jp.freebsd.org/doc-jp/guide.html
ここから最低限チェックしとくと良さそうなことをピックアップ。

  • 翻訳上の注意
    1. 文体は「ですます調」でお願いします。
    2. ASCII 文字セットにある文字はそれを使ってください。
    3. いわゆる「半角カナ」や「全角英数字」は使わないでください。
    4. 句読点は「、」「。」を使ってください (以前は 1 バイト文字の「,」「.」が利用されていました)。
      また、既存の文書の句読点を変換するときは、 次のことを目安に臨機応変に対応してください。
      • チェックする人の負担を減らすために、diff には句読点の 変換のみを含めるようにしてください。
      • コマンドの出力メッセージ、会社名や単位、英文の参考文献の タイトルや引用の部分はそのままにしておいてください。
      • 英単語区切りには「,」を使ってください。
    5. 日本語ドキュメントのファイル名は英語ドキュメントと 同じにしてください。
         英語版と日本語版は別のディレクトリに入れるので ファイル名で区別する必要はありません。
  • 翻訳する上で参考になるもの
    1. 不完全なものですが 対訳表 があります。
    2. 今までに翻訳されたファイルの英語版と日本語版を比較してみる。
    3. その事について 検索 してみる。
    4. NEC PC98 シリーズ用 FreeBSD の日本語ドキュメントを参考にする。 ftp://daemon.jp.FreeBSD.org/pub/FreeBSD-PC98/ にあります。
    5. ハンドブックや FAQ などは、ある一定の 指針 に沿って作業が進められています。 …が、必ずしも強制されるものではありません。
      文章が必要以上に堅苦しい表現にならない範囲で作業してください。


これくらい? ターゲットを切り分けてくれる人が増えるまでは、自分で目標を宣言しながら翻訳を積み重ねることになると思います。既に訳されてた、なんてことも起こるかもしれません。

■『訳すのを手伝おう。』

英語は苦手だけど技術的なことに興味あり、みたいな人は、まず何を訳すべきなのか、そして、訳されたテキストをどうやってdoc-jpにcontributeするところまでもっていくかを考えたらいいと思います。


  • まずは /usr/doc/ にあるドキュメントをmakeして喜んでみる(必要な知識やツールはこのあたり)。
  • 貢献方法作業手順を読んでみる。
  • ターゲットになっている文章の構造を把握し、wikiに反映することを考える。
  • wikiにどこを訳せばいいかをファイル単位で明示してみる。(未訳・既訳・更新アリのチェックを含む)
  • HTMLベースで訳している人の訳文を元ファイルに落とし込んでみる。
  • (難易度激しく高!)doc-jpプロジェクトが手動でやっている処理を自動化するようなシステムを考える。(翻訳に集中できる環境を整える)


外から見て、ひとりで思いつくのはこれくらい、です。
もっと綺麗な作業分担方法を思いついた人は、ばんばん仕切っちゃっていいと思います。みんな楽になるでしょうし。

はてさて、うまく作業が進むでしょうか? これに慣れたら doc-jp に飛び込んでみるのもよいかと思います。


追記:平成20年1月29日(火)
で、その後どうなったのかというと……
2ch有志かと思ったら一人だけだったみたいです。

2008年1月15日火曜日

send-prしてみる。(mh編)


とりあえず先に進むことにする。
本当なら porttools-0.77 と nbsmtp-1.00 で快適send-pr、の予定だったのですが、
主にネットワーク上の都合によりWebから送付、ということにします。
まずはports全体のpatch作りから、ふたたび。


  1. make update で取り込んだオリジナルの /usr/ports/japanese/mh を、一旦 /usr/ports/japanese/mh.orig にコピー。
  2. /usr/ports/japanese/mh を改めて一から修正。(このへんは過去とったdiffを活用)
  3. port test -l でチェックする。warningが出る……

    WARN: /usr/ports/japanese/mh/pkg-plist: [74]: If and only if your port is
    DOCSDIR-safe (that is, a user can override DOCSDIR when building this port
    and the port will still work correctly) consider using DOCSDIR macro;
    if you are unsure if this this port is DOCSDIR-safe, then ignore this warning

    DOCSDIRを変えても問題はないか、って?
    Makefileには DOCDIR なんてのがあるんだけど、ちょっと違うようなので、
    ここでは見過ごすことにします。(ツッコミ歓迎)
  4. port diff -d .orig | gzip -c > /tmp/ja-mh.080115.diff.gz (オリジナルのディレクトリとdiffをとります。)
  5. cd /tmp/
  6. uuencode ja-mh.080115.diff.gz ja-mh.080115.diff.gz > ja-mh.080115.uu.txt


ということで送るファイルは出来ました。(このパッチには一部Ctrl+Lが
含まれているので、このようにして送るのが安全みたい。)

さて、send-prしてみます。

http://www.freebsd.org/send-pr.html
(なぜか日本語のページからsend-prしようとするとCAPTCHA風味のところで
正しい入力ではない、と撥ねられてしまうので、本家版のほうからやります。)

一部を転載。



One line summary of the problem: [PATCH] japanese/mh for gcc 4.2 on FreeBSD 7.0
: ports
: non-critical
: low

:
I modified this ports to compile with gcc 4.2 on FreeBSD 7.0.
Please review and consider applying the following patch.
(あやしい英語だ!)
:
ここにさきほどuuencodeしたpatchを読ませる。
Finally, please enter the code from the image below to prove you're not a robot:
(CAPTCHA風味の英数字入力をして・・・)


Submit!

Thank you!

おわり。

しばらくするとsend-prした内容を受け付けた旨のメールが届きます。

手順がおかしいところがあったらコメントいただけると幸いです。

次の目標は
http://www.otsune.com/bsd/ports/install_as_user.html
http://uyota.asablo.jp/blog/2006/02/15/254777
これだな……

2008年1月11日金曜日

募集:ja-plain2がbrokenだったけどなおしてみた。

こんな感じで一応解決?




--- src/macro.h.org 2008-01-11 01:36:11.000000000 +0900
+++ src/macro.h 2008-01-11 01:33:10.000000000 +0900
@@ -2,6 +2,8 @@
* Copyright (C) 1992,1993 NEC Corporation.
* $Id: macro.h,v 2.6 1994/04/19 10:16:49 uchida Exp $ (NEC)
*/
+#define MAX_MACRO_LEN 320
+
#define MACRO_MAXARG 10

#define M_DOC_BEGIN 0
@@ -74,5 +76,5 @@

struct macDefs {
int mdef_number;
- char *mdef_def;
+ char mdef_def[MAX_MACRO_LEN];
};



これでとりあえずTeX, HTMLへの変換動作はうまくいってます。
本当ならヘッダ部の怪しいところ全部、ちゃんと配列に置き換えるべきなのかもしれません。



http://www1.odn.ne.jp/taraijpn/japanese_plain2_20080111.diff.txt
http://www1.odn.ne.jp/taraijpn/japanese_plain2_20080111.tar.gz



portsにしたのでとりあえず、動作確認してくれる人を募集します。
FreeBSD関係ない部分とそうでない部分に分ければLinuxのパッケージにも入れられるかな。
分けてくれる人も大募集。