I know I believe in nothing but it is my sweet nothing.:2008年06月23日分

2008/06/23(Mon)

[NetBSD] 4.99.66

あれ?やっぱり電源抜き差しで刺さるわ。

[NetBSD] debugging nvi-1.81.6(24bit wchar_t problem)

nvi-1.81.6のメンテナの方からお返事北。
とりあえずtypedef unsigned long sopをRCHAR_Tとuint8_t operatorに分割の方向でいきましょと。
ところで誰が修正するのかな(こっちみAA略)
Control-Xについてはバイナリ入力を想定ちゅう事で、wchar_tを直入力したいのではないちゅうこと。
ぐるぁーそうすっとset displayencoding的なものが必要になるよな希ガス。
ってもそれやっちゃうとwcursesの存在意義が皆無になるしの。

GB18030で4byteコード領域まで対応したinput methodを探さないとテストできへん問題は
よく考えればLC_ALL=zh_CN.GB18030 EXINIT="set inputencoding=eucJP" nviで起動して
半角カナとか補助漢字ぶち込めば4byteコードになるよな。
前iconv(3)のモジュール書いた時も似たよなことやった事を思い出した。

何の修正もせずに(つまりwchar_t=24bit)4byteコード喰わせるとゲロ吐いてぽなくなり。

Program received signal SIGSEGV, Segmentation fault.
0x0807586e in v_event_get (sp=0xbb912800, argp=0xbfbfe7dc, timeout=0, flags=4)
    at /usr/src/dist/nvi/common/key.c:629
629             if (istimeout || FL_ISSET(evp->e_flags, CH_NOMAP) ||
(gdb) bt
#0  0x0807586e in v_event_get (sp=0xbb912800, argp=0xbfbfe7dc, timeout=0,
    flags=4) at /usr/src/dist/nvi/common/key.c:629
#1  0x0808c26e in v_txt (sp=0xbb912800, vp=0xbfbfe944, tm=0x0, lp=0x0, len=0,
    prompt=0, ai_line=0, rcount=1, flags=75793416)
    at /usr/src/dist/nvi/vi/v_txt.c:481
#2  0x08085e68 in v_ii (sp=0xbb912800, vp=0xbfbfe944)
    at /usr/src/dist/nvi/vi/v_itxt.c:166
#3  0x08093d04 in vi (spp=0xbfbfeba4) at /usr/src/dist/nvi/vi/vi.c:234
#4  0x080780e6 in editor (wp=0xbb902040, argc=0, argv=0xbfbfecf4)
    at /usr/src/dist/nvi/common/main.c:412
#5  0x0804da2c in main (argc=1, argv=0xbfbfecf0)
    at /usr/src/dist/nvi/cl/cl_main.c:123

よしよし、これでテストできますな。

週末

妖精さんが寝てる合間にMinolta SRT101初期型 + MC Rokkor 55mm/F1.7をぽちったらしい。
本体は露出計が動いてないので一度軍艦部開けてみないとな、スクリーンもちとカビが。
これ露出計連動糸切ると大変みたいなんだな、注意してかからねば。
それにしても重いわこれwユージン・スミスは4~5台ぶら提げてたけどようやるわ。