;;; char-db-util.el --- Character Database utility -*- coding: utf-8-er; -*-
;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-;; 2007, 2008 MORIOKA Tomohiko.
+;; 2007, 2008, 2009 MORIOKA Tomohiko.
;; Author: MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
;; Keywords: CHISE, Character Database, ISO/IEC 10646, UCS, Unicode, MULE.
)
((find-charset ka)
(if (find-charset kb)
- (if (<= (charset-id ka) 1)
- (if (<= (charset-id kb) 1)
+ (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))
- (> (charset-id ka)(charset-id 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 (<= (charset-id kb) 1)
+ (if (or (<= (charset-id kb) 1)
+ (and (charset-final kb)
+ (>= (charset-final kb) ?@)))
nil
- (cond
- ((and (charset-final ka)
- (>= (charset-final ka) ?@))
- (if (and (charset-final kb)
- (>= (charset-final kb) ?@))
- (< (charset-final ka)(charset-final kb))
- t))
- ((and (charset-final kb)
- (>= (charset-final kb) ?@))
- nil)
- (t
- (< (charset-id ka)(charset-id kb))))))
+ (< (charset-id ka)(charset-id kb))))
nil))
((find-charset kb)
t)
((setq ret (get-char-attribute char 'name*))
(setq char-spec (cons (cons 'name* ret) char-spec))
))
+ )
+ ((setq ret (get-char-attribute
+ char 'ideographic-combination))
+ (setq char-spec
+ (cons (cons 'ideographic-combination ret)
+ char-spec))
))
char-spec)
((consp char)