青山です。

On Fri, 10 Sep 1999 20:03:19 +0900,
Minero Aoki <aamine / dp.u-netsurf.ne.jp> wrote:

> =begin...=endをぐるぐる入れかえながら.rbをさわるということで。

この点は同じなのですが、ちょっと違うのは、エディタで見る事が出来るのは
*.rb だけで、*.rbd は完全に自動生成、更新になるという事です。

=begin RD LANG=ja
日本語の文章
=end

ソースはこんな感じで今までと同じく書くだけですね。で、日本語の文章のま
までよければ、これをそのまま配布。日本語を含めてはまずければ、
rd none foo.rb これで foo.rb は

=begin RD LANG=none
=end

となりますので、この状態で配布。英語の文章も含めるのならば、
rd en foo.rb のようにすると、foo.rb は

=begin RD LANG=en
=end

のようになりますので、後はやはり普通に文章を書くだけです。

mime ヘッダ案がありましたが、それのダウンスケール版みたいな感じでしょ
うか。LANG をみれば、そこにどの言語が使われているかわかるわけです。

で、日本語だけの場合は LANG=ja とかしておけば、たとえそのまま英語圏の
人が見てしまっても、そのパートにある謎のデータは日本語のドキュメントだ
とわかりますよね。

ですから、それで無視してもらってもいいですし、もし他の言語のデータが用
意されていて、かつその人が読みたいと思ったら、適当なツールで入れ換えて
読み書き出来るわけです。

入れ換えたくなければそのままでもよし。入れ換えたければ入れ換えてどうぞ。
と、このぐらい適当な取り決めだと気楽ではないかと。

> 修正案1
>   code+英+日 のファイルから、(Code+英) と (日) を生成する。

この案の問題は、code+英+日 のファイルはそのまま配布しにくい、従って、
ほぼかならず生成の行程が必要になり、面倒。また、生成後に修正をする場合
には、元のcode+英+日に戻すのか、もしそうならば、さらに手間は増えて面倒。

と、こんなあたりかと。で、それへの対策案として、code にはどの言語を含
めても OK。ただし、どの言語であるかを記述する。他言語の情報はツールに
よって管理、修正もツールによって自動反映。

> 修正案2
>   修正案1では最初にひとつのファイルをつくることになっていたが、
>   最初から複数のファイルを作ってもよいことにする。RDヘッダが
>   つかないかわりに、RD部分はすべての言語で同じ構造になるように
>   書いてもらう。そうやってつくられたファイルならあとから
>   対応する部分を探してRDだけ別の言語にいれかえることができる。

この案の問題は、複数のファイルを作るのが面倒。修正を行った場合、各ファ
イルをチェックしなければならないので、さらに面倒。

と、いったあたりではないかと。で、対策として、人が書くのは *.rb だけ。
他言語情報についてはツールで自動生成。不要ならば、その生成さえも不要。
修正についても、ツールによって自動的に反映。

こんな感じで、それぞれの問題と思われる点にも対応させてみたつもりです。

>   * やっぱりrdを使った処理が入る(これがめんどくさいらしい)
>   * 言語別のドキュメントはrdを使わないととりだせない。つまりそのまま
>     見られないし書けない(これも「めんどくさい」のうち)

これは多言語を扱う場合には避ける方法が無いように思われます。ただし、元
もとドキュメントが1つの言語しか無い場合については、LANG を見てくれと
いう事で、そのままという手はありかなと。

もし、それだけではいやだとなれば、それこそ mime パート分けみたいな手に
なると思いますが、エディタがつらそう。

>   * =begin...=endの数が変わったときにドキュメントが行方不明になりそう
>   * 見比べながら書きたい。

先のサンプルコードの場合、番号を自動で付けて対応しています。簡易版なの
で、削除した場合の処理等は考えていませんが、移動や追加に関しては追いか
けてくれると思います。

見比べてというのは、見比べたいファイルをコピーしておけばいいかな、と、
その程度しか考えていませんでした。エディタによりますが、切替えツールを
呼び出すようにすれば、書きながら見比べる事もできるかも。


-- 
青山 和光 Wakou Aoyama <wakou / fsinet.or.jp>