X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Futf-2000%2Fchise-subr.el;h=c6e968c31bb4de6f02f4d91706e753c67a6292b3;hb=f761c4a7d22a16ffd4d55d8ca22c68240f964cc2;hp=a9dce30d816b2e853e6f0888a3b5063b4b628737;hpb=a3300b3fb1c54dff9d3ec1d0472c018ae7ca4215;p=chise%2Fxemacs-chise.git.1 diff --git a/lisp/utf-2000/chise-subr.el b/lisp/utf-2000/chise-subr.el index a9dce30..c6e968c 100644 --- a/lisp/utf-2000/chise-subr.el +++ b/lisp/utf-2000/chise-subr.el @@ -1,7 +1,7 @@ ;;; chise-subr.el --- basic lisp subroutines for XEmacs CHISE ;; Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, -;; 2010, 2011, 2012 MORIOKA Tomohiko. +;; 2010, 2011, 2012, 2013, 2014, 2015 MORIOKA Tomohiko. ;; Author: MORIOKA Tomohiko ;; Keywords: CHISE, Character Database, ISO/IEC 10646, UCS, Unicode, MULE. @@ -38,17 +38,30 @@ ;; (unless (memq domain dest) ;; (push domain dest)))))) ;; (sort dest #'string<)) - '(ucs ucs/compat daikanwa cns gt jis jis/alt jis/a jis/b + '(ucs ucs/compat daikanwa cns gt jis jis/a jis/b 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)) +;; (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)) +(defun charset-id-adobe-japan1-p (id) + (or (and (<= charset-id-=adobe-japan1-0 id) + (<= id charset-id-=adobe-japan1-6)) + (and (<= charset-id-==adobe-japan1-0 id) + (<= id charset-id-==adobe-japan1-6)) + ;; (and (<= charset-id-=>>>adobe-japan1-0 id) + ;; (<= id charset-id-=>>>adobe-japan1-6)) + (and (<= charset-id-=>>adobe-japan1-0 id) + (<= id charset-id-=>>adobe-japan1-6)) + )) + ;;; @ feature name ;;; @@ -128,57 +141,59 @@ (cond ((= a-ir 177) t) + ((eq kb '=mj) + nil) + ((eq kb '==mj) + nil) + ((eq kb '=>>mj) + nil) ((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)) - )) + (charset-id-adobe-japan1-p b-id)) nil) (t))) (if (setq b-ir (charset-property kb 'iso-ir)) (cond ((= b-ir 177) nil) + ((eq ka '=mj) + t) + ((eq ka '==mj) + t) + ((eq ka '=>>mj) + t) ((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)) - )) + (charset-id-adobe-japan1-p a-id)) t) (t nil)) (cond + ((eq ka '=mj) + t) + ((eq ka '==mj) + t) + ((eq ka '=>>mj) + t) ((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)) + (charset-id-adobe-japan1-p a-id)) + (cond + ((eq kb '=mj) + nil) + ((eq kb '==mj) + nil) + ((eq kb '=>>mj) + nil) + ((and (setq b-id (charset-id kb)) + (charset-id-adobe-japan1-p b-id)) + (< a-id b-id)) + (t)) + ) + ((eq kb '=mj) + nil) + ((eq kb '==mj) + nil) + ((eq kb '=>>mj) + nil) ((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)) - )) + (charset-id-adobe-japan1-p b-id)) nil) (t (< (charset-id ka)(charset-id kb)) @@ -202,6 +217,7 @@ (defun char-ucs (char) "Return code-point of UCS." (or (encode-char char '=ucs 'defined-only) + (char-feature char '=ucs) (char-feature char '=>ucs))) ;;;###autoload