あおきです。

  In mail "[ruby-list:16648] RD and internationalization"
    wakou / fsinet.or.jp wrote:

> 青山です。

> ちょっと例として。
> 
> 例えば、こんな感じで言語指定を加えて、
(略)
> 配布するのは、この形式の状態。

この案は、ぼくが提案した新しいほうの案とほとんど同じに見えます。
ruby-talkといったりきたりしながら話していたのでわかりにくかった
かもしれません(まつもとさんごめんなさい…)ので、簡単にこれまでの
経緯をまとめます。

発端
  [ruby-talk:00737] RD with multi charset
  [ruby-list:16338] maillib? 0.5.0

  ソースコードでも日本語を使いたいよーと提案
  同じ内容のドキュメントを複数の言語(スクリプト)で用意し、「危険な」
  スクリプトは全部base64して格納する

  ruby-(list|talk)ではおおむね不評。主な理由は
    * めんどくさい
    * どれがエンコードされてるのかわからない
    * ビューアやエディタでそのまま見えるのがRDのいいところ

  この理由に納得したので最初の提案をちょっと修正する。

修正案1
  [ruby-list:16338] maillib? 0.5.0
  [ruby-talk:00760] RD with multi charset

  code+英+日 のファイルから、(Code+英) と (日) を生成する。
  このとき、日本語ファイルには「RDヘッダ」を残しておき、
  元のファイルを復元できるようにする。
  あとからツールで処理すれば、(Code+日) や (英) を作ることができる

  しかしまつもとさんのメールに「エンコードの過程を通るのが好きでない」
  とあったのをあとから発見、このままではきっと納得してくれないと思い
  さらに修正

修正案2
  [ruby-list:16344] maillib? 0.5.0
  [ruby-talk:00764] RD with multi charset

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

  ちなみにtalkでは修正案1と2の区別をほとんどせず適当に話をまるめこんだ。
  また [ruby-talk:00773] では \cle 氏がこの入れかえ作業を行う
  rdswap.rb を提供してくれた。

結局、ぼくの修正案2は最初にまつもとさんがおっしゃった
「ソースには英語RDでドキュメントをつけて日本語は別ファイル」
とほとんど同じで、RD構造を各国語ドキュメントで同じにするという
ところだけが違います。
しかしこの案ではRDのスペックにはまったく関係がないので、
結局無駄な提案だったなあ、反省、というのが現状です。
-------------------------------------------------------------------
あおきみねろう