常用漢字表 (Re: 漢字の部品)

守岡知彦 / MORIOKA Tomohiko tomo @ kanji.zinbun.kyoto-u.ac.jp
2003年 11月 6日 (木) 00:37:11 JST


>>>>> In [utf-2000 : No.00406] 
>>>>>	"守岡" = tomo @ m17n.org (守岡知彦 / MORIOKA Tomohiko) wrote:

江渡さん> > # 余談ですが Chise って、教育漢字とか常用漢字とかみたいな
江渡さん> > # データも持ってたりするのでしょうか?

守岡> 常用漢字のデータは XEmacs CHISE の source tree の
守岡> etc/char-data/jp-jouyou.txt にあります。まだ今の所入ってるだけで、
守岡> 利用する code が入ってないのですが。

守岡> ちなみに、この jp-jouyou.txt を開いた状態で

守岡> (with-current-buffer "jp-jouyou.txt"
守岡>   (goto-char (point-min))
守岡>   (let (chr target ret)
守岡>     (while (re-search-forward "^[^\t]+\t\\(.\\)" nil t)
守岡>       (setq chr (aref (match-string 1) 0)
守岡>             target (buffer-substring (match-end 0) (point-at-eol)))
守岡>       (setq ret (get-char-attribute chr 'script))
守岡>       (add-to-list 'ret 'Ideograph)
守岡>       (add-to-list 'ret 'JP-Jouyou)
守岡>       (put-char-attribute chr 'script ret)
守岡>       (if (and (> (length target) 0)
守岡> 	       (eq (aref target 0) ?\t)
守岡> 	       (setq target (split-string
守岡> 			     (substring target 1) " ")))
守岡> 	  (put-char-attribute chr '<-simplified @ jp-jouyou
守岡> 			      (mapcar (lambda (cell)
守岡> 					(aref cell 0))
守岡> 				      target)))
守岡>       )))

守岡> を評価すれば、常用漢字の文字の script 素性(シンボルのリスト)に 
守岡> JP-Jouyou とIdeograph という要素が追加されるとともに、
守岡> <-simplified @ jp-jouyou 素性(文字参照(文字)のリスト)に常用漢
守岡> 字表に書かれた対応する『康煕体』の文字のリストが入ります。

守岡> この後、

守岡> (save-char-attribute-table 'script)
守岡> (save-char-attribute-table '<-simplified @ jp-jouyou)

守岡> を評価すれば、Ruby/CHISE や Perl/CHISE などからもこれらのデータ
守岡> が利用できるようになると思います。

また、さっき commit した tomoyo-tools の命令
ideo-translate-region-into-traditional を使えば、指定した領域の常用漢
字を『康煕体』に変換できます。「弁」のように複数候補がありうる場合は
menu で選択になりますが、いまいち UI のできは良くないので、どんどん
改良してみてください。(ぱぱっと書いた code なので)


ちなみに、tomoyo-tools は anonymous CVS で取り出せます。

** cvs login (first time only)

  % cvs -d :pserver:anonymous @ cvs.m17n.org:/cvs/chise login

  CVS password: [CR] # NULL string

** checkout

  % cvs -d :pserver:anonymous @ cvs.m17n.org:/cvs/chise co tomoyo-tools

** install

  % make install


なお、installer を動かすのに、APEL が必要です。また、install 前に予め 
site-packages/ の場所を作っておくことをお勧めします(もし、なかった場
合)。

-- 
守岡 知彦 (MORIOKA Tomohiko) <tomo @ kanji.zinbun.kyoto-u.ac.jp>




More information about the CHISE-ja mailing list