続・wcwidth と East Asian Ambiguous Character Width 問題
[NetBSD][Cygwin] wcwidth(3)より:
そもそもL prefixはC localeつまりPortable Character Set以外ダメで、multibyteは扱えないでっせ
動けばいいやーレベルのテストコードなんで大目に見てつかーさい(^^;
# 文字コードも表示してるのは、期待通りにコンパイルされなかったときに検出するためだったり。
対応するのは定義ファイル書けばすぐなんですが、/usr/share/localeの
容量問題というのがあるので、誰か文句言ってくるまでは放置しようかと思ってたとこ。
なるほど。単に容量の問題であって、積極的に「1でなければならない」と判断してそうなってるわけでないんですね。
ちなみに、直すとしたら「LC_CTYPE=ja, ko, vi, zhなら2を返す」になると思っていいですか?
I'm not happy with the idea of a cygwin-specific solution (or workaround).
なんて言われて、このやろー、と思ったりしてたので、ある程度反論できるネタが欲しいな、と。
そもそもUnicodeとwcwidth(3)って結合文字とかとも食い合わせ悪いですしねぇ、困ったもんだ。
まったくで。┐('〜`;)┌ その割には意外といろんなとこで使われてるんだよな……。
もうwcwidth(3)はobsoleteにすべきですが、替わりになるlayout engineの標準が無いという。
どこに向かって叫べば改善されるんでしょーねぇ……。
個別パッチに付き合うのはもう嫌だポ……。