ものがたり(旧)

atsushieno.hatenablog.com に続く

monoのEdit & Continueの話がまだMLで続いているとは思わなかった。そんなにほしいなら一人でhackすりゃあいいのに。MonoDevelopサポートについて一言も言及しないでIDE統合がどうのと書ける不思議。debugger開発を助けるのが先だっていうアドバイスをまるっきり無視しているところを見ると、自分の持ち物を使えるようにすることにしか興味がないのだろう。「黙ってコードを書け」っていうESRの言葉を思い出す。

i18nの人も何か勘違いしているなあ。素人でも分かる間違いを主張するような言語学者などにいくら聞いたって無駄だ。僕の2本目の記事で分かりそうなものだが。

i18nといえば、.NET 2.0のCultureAndRegionInfoBuilderはLDMLが読める。少なくともAPI上はそういうことになっている(試してないので本当に機能するのかは不明)。最初LDMLをサポートしているのを見て、お、これは実装する価値のあるクラスかも、という印象をもったのだけど、書き出しをあんましまともにやってくれない。大半が拡張要素special内の独自タグになっている。ちなみにLDMLが読めると言っても、.NETにはUCAの実装が無いので、collation情報は読んでくれない。

カスタムCultureInfo/RegionInfoはマシン上にRegisterすることができて、まあレジストリと同じような設計をアプリケーションに要求することになるけど、%SYSTEMROOT%\Globalizationという謎のディレクトリに*.nlpファイルが保管されるようだ。まあ、サーバアプリでさえ使えれば十分なのだろう。

また、territory情報(MS方言で言えばRegionInfo)もLDMLから読めることになっているけど、実はterritory情報って単一のファイルから読めるというわけではない。そのregionを対象とするldmlに加えて、en.xmlとかsupplementalData.xmlなどもソースになっている(と思う)ので、何だって出来るというわけではなさそうだ。いまいちである。

まあこの辺を実装するとしたら、もちっと設計を慎重に考えて、このクラスはあくまでそのサブセットとして実装する程度がいいだろうな。