Beyond the BMP

 [ruby-list:42792]nkfBMP 外を捨てる件について指摘されてしまった。一応 JIS X 0213 対応の準備のために手はつけていたので (もっとも、この手の大規模な改修は手をつけてみるものの失敗して投げ捨てるのを繰り返すのはお約束)、1 日でおおむね動作、2 日で気づいたバグはつぶし終えた。でもきっとまだバグは残っているんだろうなぁ・・・。
 なお、この辺の作業のきっかけでもある JIS X 0213 だけれども、Unicode との変換を行えるようにする予定は今のところ無い。要望があれば検討するけれども、対応に手間もかかるし、テーブルも大きくなる割に、使う人がいなさそうだし・・・。パッチが来れば取り込むけど(ぉ

skf.so

 MinGW でも動くようになったので安心し、ふと NetBSDコンパイルしようとする・・・と、失敗する。えーーー。とりあえず NetBSD の make が skf の Mac OS X 対策に当たってエラーをはいていることが判明。
 しかし、まだエラーは止まらない。なんで RSTRING()->ptr なんかでエラーが出てるんだよと思ったら、Ruby 1.9 では小さな String を VALUE に埋め込むことになったため削除されてた・・・。
 調べたところ、RSTRING(obj)->ptr は RSTRING_PTR(obj)、RSTRING(obj)->len は RSTRING_LEN(obj)、に変えればいいらしい。(この辺のことは README.EXT.ja に書かれているはずなのだが、記述が新しくなっていない) そこで、そのように変更するが・・・、SWIG 自動生成の部分にも RSTRING(obj)->ptr が含まれている罠。生成後に sed で置換するという汚い方法で対策。。。
 まぁ、とりあえず動くようになったからパッチ投げよう。。。