From ebdaff682eb4a5ce8fe2640ea06bf06e26145ecd Mon Sep 17 00:00:00 2001 From: MORIOKA Tomohiko Date: Fri, 7 Sep 2012 21:39:53 +0900 Subject: [PATCH] (charset-id-=adobe-japan1-0): New constant. (charset-id-=adobe-japan1-6): New constant. (charset-id-=>>>adobe-japan1-0): New constant. (charset-id-=>>>adobe-japan1-6): New constant. (charset-id-=>>adobe-japan1-0): New constant. (charset-id-=>>adobe-japan1-6): New constant. (char-attribute-name<): Prefer Adobe-Japan1 to non-UCS CCSs. --- lisp/utf-2000/chise-subr.el | 71 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 66 insertions(+), 5 deletions(-) diff --git a/lisp/utf-2000/chise-subr.el b/lisp/utf-2000/chise-subr.el index c62e042..70e96d9 100644 --- a/lisp/utf-2000/chise-subr.el +++ b/lisp/utf-2000/chise-subr.el @@ -42,6 +42,13 @@ jis-x0212 jis-x0213 cdp shinjigen r030 r140 misc unknown)) +(defconst charset-id-=adobe-japan1-0 (charset-id '=adobe-japan1-0)) +(defconst charset-id-=adobe-japan1-6 (charset-id '=adobe-japan1-6)) +(defconst charset-id-=>>>adobe-japan1-0 (charset-id '=>>>adobe-japan1-0)) +(defconst charset-id-=>>>adobe-japan1-6 (charset-id '=>>>adobe-japan1-6)) +(defconst charset-id-=>>adobe-japan1-0 (charset-id '=>>adobe-japan1-0)) +(defconst charset-id-=>>adobe-japan1-6 (charset-id '=>>adobe-japan1-6)) + ;;; @ feature name ;;; @@ -93,7 +100,7 @@ ) ((find-charset ka) (if (find-charset kb) - (let (a-ir b-ir) + (let (a-ir b-ir a-id b-id) (if (setq a-ir (charset-property ka 'iso-ir)) (if (setq b-ir (charset-property kb 'iso-ir)) (cond @@ -107,10 +114,64 @@ ((< a-ir b-ir) )) - t) - (if (charset-property kb 'iso-ir) - nil - (< (charset-id ka)(charset-id kb))))) + (cond + ((= a-ir 177) + t) + ((and (setq b-id (charset-id kb)) + (or (and (<= charset-id-=adobe-japan1-0 b-id) + (<= b-id charset-id-=adobe-japan1-6)) + (and (<= charset-id-=>>>adobe-japan1-0 b-id) + (<= b-id charset-id-=>>>adobe-japan1-6)) + (and (<= charset-id-=>>adobe-japan1-0 b-id) + (<= b-id charset-id-=>>adobe-japan1-6)) + )) + nil) + (t))) + (if (setq b-ir (charset-property kb 'iso-ir)) + (cond + ((= b-ir 177) + nil) + ((and (setq a-id (charset-id ka)) + (or (and (<= charset-id-=adobe-japan1-0 a-id) + (<= a-id charset-id-=adobe-japan1-6)) + (and (<= charset-id-=>>>adobe-japan1-0 a-id) + (<= a-id charset-id-=>>>adobe-japan1-6)) + (and (<= charset-id-=>>adobe-japan1-0 a-id) + (<= a-id charset-id-=>>adobe-japan1-6)) + )) + t) + (t nil)) + (cond + ((and (setq a-id (charset-id ka)) + (or (and (<= charset-id-=adobe-japan1-0 a-id) + (<= a-id charset-id-=adobe-japan1-6)) + (and (<= charset-id-=>>>adobe-japan1-0 a-id) + (<= a-id charset-id-=>>>adobe-japan1-6)) + (and (<= charset-id-=>>adobe-japan1-0 a-id) + (<= a-id charset-id-=>>adobe-japan1-6)) + )) + (if (and (setq b-id (charset-id kb)) + (or (and (<= charset-id-=adobe-japan1-0 b-id) + (<= b-id charset-id-=adobe-japan1-6)) + (and (<= charset-id-=>>>adobe-japan1-0 b-id) + (<= b-id charset-id-=>>>adobe-japan1-6)) + (and (<= charset-id-=>>adobe-japan1-0 b-id) + (<= b-id charset-id-=>>adobe-japan1-6)) + )) + (< a-id b-id) + t)) + ((and (setq b-id (charset-id kb)) + (or (and (<= charset-id-=adobe-japan1-0 b-id) + (<= b-id charset-id-=adobe-japan1-6)) + (and (<= charset-id-=>>>adobe-japan1-0 b-id) + (<= b-id charset-id-=>>>adobe-japan1-6)) + (and (<= charset-id-=>>adobe-japan1-0 b-id) + (<= b-id charset-id-=>>adobe-japan1-6)) + )) + nil) + (t + (< (charset-id ka)(charset-id kb)) + ))))) nil) ) ((find-charset kb)) -- 1.7.10.4