小澤です。

On Fri, 16 Nov 2001 22:38:35 +0900 (JST)
Masahiro Sakai (酒井政裕) <zvm01052 / nifty.ne.jp> wrote:

> int wcswidth(const wchar_t *pwcs, size_t n);
> はpwcsの最初のn文字のターミナル出力幅(カラム数)を調べる関数です。
> (文字列がn文字よりも短い場合はその長さだけしか調べない)
> ただし、表示可能でないワイド文字が検出された場合は-1を返します。

wcswidthが何をするのかは、Googleで検索してわかったのですが(manは意味不
明だった)、これをどのような状況で使うのでしょうか?

> # ただ、僕自身は、wchar_tはCSI(CodeSet Independent)を保ったまま
> # 内部で文字列処理をするための抽象度の高いAPIだと思っているので、

確かに。そう言われてみると、UTF関連のメソッドがあるのは気持ち悪いですね。
ということで、locale=とUTF系のメソッドは実装しないことにします。

> ところで、to_utf16もStringオブジェクトを返すのでしょうか?

はい。

> 個々の文字集合やエンコーディングについては
> 個別にクラスを作るよりも、ruby_m17nのフレームワーク上で
> サポートする事を考えた方が良いと思います。

ruby_m17nについては、全然知らないのですが、Unicodeをサポートすることもで
きるんですね。それなら、なおさらUTF系のメソッドはWStringには必要ないです
ね。