Toshです。

In message "[ruby-list:20245] Re: (rd2) nl in Japanese chars"
    on 00/01/18, GOTO Kentaro <gotoken / math.sci.hokudai.ac.jp> writes:
>>正直、僕にもよくわかってません。RDtoolが、日本語と英語をちゃんと
>>扱い分けられるようになってないといけないのでしょうが。
>># こういうのには"RD Header"が必要でしょうか?
>
>どうなんでしょうねぇ。このような、いわゆるメタデータの記述は
>WWW Consortium だと外に置くRDFになってますが、RDの場合は
>ASCIIのスーパーセットであるような文字集合(今はせいぜい日本語)
>の言語で書かれていることは分かってますから RD Header で解決
>するという手は有効ですね。HTMLみたいにlang属性をつけてまわる
>のはRDには向いてないように思いますし。

ふむふむ、そうですね。
やはりそのうちRD Headerも本格的に考えないといけないでしょうね。

>><URL:http://www2.pos.to/~tosh/ruby/rdtool/rd2html-ja.rb>
>>
>>ろくにテストしてないのでバグがありそうですが。
>
>いえいえ参考になりますです。感謝感謝。
>
>ただ、僕の書いたやつは元の文字列が短すぎるとコードを判定でき
>ないという問題がありますのでそのまま採用するには良くないです。
>ごめんなさい。
>
>これは rb_nkf_guess() と kanji_convert() のアルゴリズムが違
>うためで、Kconv::guess の値が Kconv::UNKNOWN のときは少なく
>とも処理せずに返したほうがよいです。あと除去するパターンも 
>\n\s*でなくて \s*\n\s* のほうが世間一般的かも。

む、なるほど。
今回のコードは間に合わせのものですが、ちゃんとしたものに書き換える時に
はそのようにします。
ところで、最終的な出力はISO-2022-JPに変換してしまって、metaタグで
文字コード指定してしまった方が良かったかも知れませんね。

>>フィルターはRDで扱わない部分の処理をする為のモノなのでこのような
>>用途には使えません。
>
>そうなんですか。分かってなかった(汗)

なんせドキュメントがありませんので、スクリプト読まないと存在にすら
気付かないはずです。
中田さんがフィルタの部分の話をふってこられた時には、かなりびっくり
しました。予想外に早く見付かってしまったものですから。(^^;;

>>この正規表現の"[、-瑤]"の部分は「前の行の最後と次の行の最初が非ASCIIな
>>時だけ」というのを示している、って理解であってますでしょうか?
>
>そのつもりです。「、」と「瑤」は日本語EUCの最初と最後の文字です。

なるほど。ありがとうございました。

---
Tosh
Toshiro Kuwabara