Not only is the Internet dead, it's starting to smell really bad.:2006年06月上旬

2006/06/03(Sat)

pkgsrc/Cygwin

@ほんのちょっとだけ更新

あんまりきれいな方法じゃないけど、pkg_deleteがCygwinでも動くようにしてみた。
/distfiles/citrus/NetBSD/bootstrap-pkgsrc-cygwin.tar.bz2
とりあえずmake install deinstallは問題なく動いてる模様。

@TODO

  • pkgsrc/bootstrap/bootstrapを直して/usr/pkg/share/mk/*などが正しいownerでインスコされるようにする
  • やる気をだしてpkgsrc/mk/*を読む
  • USE_LIBTOOL=YESのとき、shared library(cyg*.dll)がビルドされるようにする
  • pkgsrc/mk/plist/shlib-dll.awkを書いてPLISTでcyg*.dll が認識されるようにする
  • pkgsrc/sysutils/user_cygwinを作ってuseradd/groupaddを実装
  • UNPRIVILEDGE=YES でなしに、Administratorsグループのユーザでインスコする

最近のcygwinのsu(1)ってどのあたりまで実装されてんだろ。
http://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-setuid をそのうち読むも追加。

先週~今週

会社の開発マシンのディスクまで㌧だ、IBM IC35 40G。

2006/06/07(Wed)

Citrus iconv

@TODO

iconv_std moduleはいまんとこ1:1変換しかサポートしないので
ligatureのことを考えてm:n変換できるモジュール書かないとな。
mkcsmapper(1)あたりからいじらんとならんだろうからから非常にやる気がでない。

@m:n

LIGATURE_MAXはいくつぐらいが妥当なんだろね。
♀ = "The Artist Formaly Known As Prince"はligatureじゃないからパス。

libISO2022

@

すっかり忘れてたんだけど、libISO2022のバグを修正したやつをcommit。
これでkoi7-switchedにちゃんと動くようになる、って使ってる人はおらんと思うけど。

@

それとJISX0208-1990が1区29点がHORIZONTAL BAR(U+2015)なのは
Unicode.orgのobsoleteな変換表だからだと思うけど、JISX0221ではEM DASH(U+2014)なのでこれも修正。

@ISO-2022-JP-3(JISX0213)

いまのlibISO2022だと

$ iconv -f iso-2022-jp-3 -t iso-2022-jp-3-strict hoge.txt

とかやるとまずいことになりそうな悪寒。

α8700iをあと10年は使う会

ktkr
http://www.sony.jp/CorporateCruise/Press/200606/06-0606/
http://plusd.itmedia.co.jp/lifestyle/articles/0606/06/news062.html
これでαレンズの心配はなくなったけど、高けーよ。

2006/06/08(Thu)

JISX0213:2004

@

実装してみた、差分はこちら↓
/distfiles/citrus/NetBSD/patch-jisx0213.gz
EUC-JISX0213、Shift_JISX0213、ISO-2022-JP-3、ISO-2022-JP-3-strict、ISO-2022-JP-3-compatibleが利用できまふ。
制限事項

  1. iconv_stdモジュールはm:n変換をサポートしないので
    Unicodeでligatureにmappingされてる文字(ex: 白丸付き数字の21~50)は変換できない。
  2. iso-2022-jp-3からiso-2022-jp-3-(strict|compatibe)に変換するとき
    ESC$(Oの文字は可能な限りESC$(Bへ変換しなければならないが、うまいこといかない。
    iso-2022-jp-3-strictなどの解説はこちら↓
    http://www.m17n.org/m17n2000_all_but_registration/proceedings/kawabata/jisx0213.html
  3. libMSKanjiモジュールのcstowc/wctocs内で拡張外字領域(0xF040-0xFCFC)に対して別csidを振るようにしたので
    iconv dataとモジュールの組み合わせがあってないと正しい変換をしない。

つーわけで1と2が解消するまでcommitできまへん。