Not only is the Internet dead, it's starting to smell really bad.:2003年06月14日分

2003/06/14(Sat)

HZ/HZ+/EHZ multibyte support for Citrus XPG4DL

@bug fix

/distfiles/citrus/NetBSD/HZ-20030614.diff

/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| チルダ+改行コードを見つけたときは無視、が正常動作してなかったのを修正
\
   ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ∧_∧       / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ( ・∀・)  ∧ ∧ < おめーのバグだろ、ゴルァ!!
 (  ⊃ )  (゜Д゜;)  \____________
 ̄ ̄ ̄ ̄ ̄ (つ_つ__
 ̄ ̄ ̄日∇ ̄\| VAIO |\
       ̄   =======  \

TR1は現物見てきたけどイラネ。結局中古でまたしてもC1XG買いマスタ。

@ISO2022とのmklocale src共用化

libISO2022では、例えばGB2312だとエスケープは"ESC(A"なので、
wchar_tに 'A' << 24 なbitが立つ仕様になっている。

libHZでも同様な処理に変更すれば

  • GB2312(EHZ: ~A)
  • CNS-11643-1(EHZ: ~G)
  • CNS-11643-2(EHZ: ~H)

はmklocale srcを共用可能。
しかしISO2022非準拠のBig5については

  • 0xa140~0xC87E (HZ+: ~>、EHZ: ~g)
  • 0xC940~0x7D7E (HZ+: ~<、EHZ: ~h)
  • 0x8040~0xA07E (HZ+: ~=、EHZ: ~f)

分割しそれぞれを0x2121~0x7D7Eに再配置なので、特別扱いが必要になる。
BIG5-1、2、3とmklocale srcを分ける手もあるけど、ダサいので却下。

さてどうしよう...今のまま共用しない方がいいかもね。