From 3df3d6ac43d048f07264a45ce5f31b344b775f8f Mon Sep 17 00:00:00 2001 From: tomo Date: Thu, 14 May 2009 18:28:34 +0000 Subject: [PATCH] (char-attribute-name<): Use `iso-ir' property of coded-charsets. --- lisp/utf-2000/char-db-util.el | 99 ++++++++++++++++++----------------------- 1 file changed, 43 insertions(+), 56 deletions(-) diff --git a/lisp/utf-2000/char-db-util.el b/lisp/utf-2000/char-db-util.el index 232904a..dea1a15 100644 --- a/lisp/utf-2000/char-db-util.el +++ b/lisp/utf-2000/char-db-util.el @@ -155,61 +155,46 @@ ) ((find-charset ka) (if (find-charset kb) - (if (or (<= (charset-id ka) 1) - (and (charset-final ka) - (>= (charset-final ka) ?@))) - (if (or (<= (charset-id kb) 1) - (and (charset-final kb) - (>= (charset-final kb) ?@))) - (cond - ((= (charset-dimension ka) - (charset-dimension kb)) - (if (and (<= (charset-id ka) 1) - (<= (charset-id kb) 1)) - (> (charset-id ka)(charset-id kb)) - (if (and (charset-final ka) - (charset-final kb)) - (cond - ((= (charset-final ka)(charset-final kb)) - (if (<= (charset-id ka) 1) - (if (<= (charset-id kb) 1) - (> (charset-id ka)(charset-id kb)) - t) - (if (<= (charset-id kb) 1) - nil - (< (charset-id ka)(charset-id kb)))) - ) - ((< (charset-final ka)(charset-final kb)) - )) - (if (<= (charset-id ka) 1) - (if (<= (charset-id kb) 1) - (> (charset-id ka)(charset-id kb)) - t) - (if (<= (charset-id kb) 1) - nil - (cond ((and (charset-final ka) - (>= (charset-final ka) ?@)) - t) - ((and (charset-final kb) - (>= (charset-final kb) ?@)) - nil) - (t - (< (charset-id ka)(charset-id kb)) - )))))) - ) - (t - (> (charset-dimension ka) - (charset-dimension kb)) - )) - t) - (if (or (<= (charset-id kb) 1) - (and (charset-final kb) - (>= (charset-final kb) ?@))) - nil - (< (charset-id ka)(charset-id kb)))) - nil)) - ((find-charset kb) - t) + (let (a-ir b-ir) + (if (and (setq a-ir (charset-property ka 'iso-ir)) + (if (= a-ir 177) + (if (= (charset-id ka) -177) + t + (setq a-ir nil)) + t)) + (if (and (setq b-ir (charset-property kb 'iso-ir)) + (if (= b-ir 177) + (if (= (charset-id kb) -177) + t + (setq b-ir nil)) + t)) + (cond + ((= a-ir b-ir) + (< (charset-id ka)(charset-id kb)) + ) + ;; ((= a-ir 177) + ;; t) + ;; ((= b-ir 177) + ;; nil) + ((= (charset-dimension ka) + (charset-dimension kb)) + (< a-ir b-ir) + ) + ((> (charset-dimension ka) + (charset-dimension kb)) + )) + t) + (if (and (setq b-ir (charset-property kb 'iso-ir)) + (if (= b-ir 177) + (if (= (charset-id kb) -177) + t + (setq b-ir nil)) + t)) + nil + (< (charset-id ka)(charset-id kb))))) + nil) + ) + ((find-charset kb)) ((symbolp ka) (cond ((symbolp kb) (string< (symbol-name ka) @@ -312,7 +297,9 @@ =daikanwa@rev2 ;; =gt-k =jis-x0208@1997 - ))) + )) + ;; (string-match "=ucs@" (symbol-name ccs)) + ) (setq ccs (charset-name ccs)) (null (assq ccs char-spec)) (setq ret (encode-char char ccs 'defined-only))) -- 1.7.10.4