[主な変更点]
・メンテナンス上の理由から --with-ucs4 を、一旦、廃止した
・configure で --with-utf-2000 を指定した時、message を出すようにした
・charset ができるだけ leading-byte に依存しないようにした(つもり)
・128×128 文字集合と 256×256 文字集合を追加(ただし、まだ利用者は定
義できない)
・BMP に対する charset である ucs-bmp を追加した
・00群E0面〜00群FF面の割り当て法を変更し、94文字集合80×4面、96文字集
合80×4面、94×94文字集合80面分、96×96文字集合80面分の領域を確保し
た
・Latin Extended-A に含まれている文字は BMP のを使うようにした(*1)
・Charset_ID 型を導入し、unsigned char や Bufbyte, int になっていた部
分をこれで書き換えた(つもり、でも、まだ残っているような気がする)
・UTF-2000 では charset の direction 属性を廃止することにした
[注意]
・内部表現を一部変更したので以前の版で compile した非 ASCII 文字を含む
*.elc は動きません
[今週のバッタモン]
・(*1) latin_a_char_to_*: 将来的には一般的かつ編集可能な形にする予定
・ucs4, big5 等の coding-system は動かない
・ExCCL は一切動かない
[今回採用した私的領域割り当て法の概要]
00E00000
| compatibility zone (= 00EC1F00 〜 00EE0237)
00E1E337
00E20000
| 中華字海コード
00E3FFFF
00E40000
| 京大康煕コード
00E4FFFF
00E50000
| 諸橋大漢和番号 + 文字鏡
00E5FFFF
00E60000
| 文字鏡
00E7FFFF
00E80000
| reserved
00E8FFFF
00E90940
| private 94-set
00E90F1F
00E90F20
| official 94-set
00E92641
00E92642
| reserved for 94-set
00E9269F
00E926A0
| private 96-set
00E92C9F
00E92CA0
| official 96-set
00E9443F
00E94440
| reserved for 96-set
00E9449F
00E944A0
| second 94-set
00E961FF
00E96200
| second-96
00E97FFF
00E98000
| third 94- and 96-set
00E9BB5F
00E9BB60
| forth 94- and 96-set
00E9F6BF
00E9F6C0
| private 94x94
00EC1EFF
00EC1F00
| official 94x94
00F49D7B
00F49D7C
| reserved for 94x94
00F4BFFF
00F4C000
| private 96x96
00F6FFFF
00F70000
| official 96x96
00FFDBFF
00FFDC00
| reserved for 96x96
00FFFFFF
[前回の予告に関して]
MAKE_CHAR および BREAKUP_CHAR で table を引くようにする。
とりあえず、database 機能を使うつもりです。また、最初の版は
多分 cache なしにすると思います。
と述べたが、これを実現するためには charset を手なづける必要があった。
即ち、内部表現を UTF-2000 (UTF-8) 方式に変更したにも関わらず、charset
が leading-byte (charset-id) に強く依存し、128 個以上に増やせなかった
り、charset と文字表現の関わりを自由に定義することができなかった。この
ため、まず、この問題を解決する必要があった。このため、今回はこの問題に
取り組んだ。
[次回の予定]
charset を手なづける上で、なお問題として残っているのが char-table と
regexp.c である。いつかは手をつけないといけない問題なので、次回は
char-table の再実装を行うことにする。
個人的には char-table は永続的な実装を基本としたいが、現在の実装からの
移行の容易さを考慮すると、結局、まず半田 UTF-8 方式の char-table 実装
を行うのが良いと考えられるので、これを試してみることにする。
--
┯━…‥・懐かしい未来の記憶をふと思い出しかけた・‥…━━┯━━━┯━
││ ─ │ ─ / ─ ┼─ ┬ ─ ─┼ ┬┴─
┼┼─┼|〓━─┼ 守岡 知彦 (MORIOKA Tomohiko) <tomo(a)etl.go.xn--jp>-8n7c ─┬
┻┻━┻━┷━━━━━━━━━━━━━━━━━━━━━━━━━━━━━