From 25babe62b8b4da84ca027bf0e4a64c2417dd6426 Mon Sep 17 00:00:00 2001 From: tomo Date: Thu, 18 Nov 1999 11:30:38 +0000 Subject: [PATCH] (update-ideograph-radical-table): Add `japanese-jisx0208-1978' and `japanese-jisx0208-1990'; check Group 00 Plane 10. (ideograph-char<): Prefer minor code of `morohashi-daikanwa' number. --- lisp/utf-2000/ideograph-util.el | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/lisp/utf-2000/ideograph-util.el b/lisp/utf-2000/ideograph-util.el index dea2031..2b8d259 100644 --- a/lisp/utf-2000/ideograph-util.el +++ b/lisp/utf-2000/ideograph-util.el @@ -57,8 +57,9 @@ (let ((i #x3400) j char radical - (charsets '(japanese-jisx0208 - japanese-jisx0208-1978 + (charsets '(japanese-jisx0208-1978 + japanese-jisx0208 + japanese-jisx0208-1990 japanese-jisx0212 chinese-cns11643-1 chinese-cns11643-2 @@ -84,6 +85,16 @@ (aset ideograph-radical-chars-vector radical (cons char ret)))) (setq i (1+ i))) + (setq i #x100000) + (while (<= i #x10FFFF) + (setq char (int-char i)) + (when (setq radical (char-ideograph-radical char)) + (if (not (memq char + (setq ret + (aref ideograph-radical-chars-vector radical)))) + (aset ideograph-radical-chars-vector radical + (cons char ret)))) + (setq i (1+ i))) (setq i 0) (while (< i 256) (setq j 0) @@ -129,11 +140,16 @@ (cond ((eq (car (cdr ra))(car (cdr rb))) (cond ((< (length ra)(length rb))) ((= (length ra)(length rb)) - (cond ((setq ra (get-char-attribute a 'ucs)) - (cond - ((setq rb (get-char-attribute b 'ucs)) - (< ra rb)) - (t)))))) + (cond ((integerp (nth 2 ra)) + (cond ((integerp (nth 2 rb)) + (< (nth 2 ra)(nth 2 rb))) + (t nil))) + (t + (cond ((setq ra (get-char-attribute a 'ucs)) + (cond + ((setq rb (get-char-attribute b 'ucs)) + (< ra rb)) + (t)))))))) ) ((null (car (cdr ra)))) ((null (car (cdr rb))) -- 1.7.10.4