-(defun char-attribute-name< (ka kb)
- (cond
- ((eq '->denotational kb)
- t)
- ((eq '->subsumptive kb)
- (not (eq '->denotational ka)))
- ((eq '->denotational ka)
- nil)
- ((eq '->subsumptive ka)
- nil)
- ((and (symbolp ka)
- (string-match "^->" (symbol-name ka)))
- (cond ((and (symbolp kb)
- (string-match "^->" (symbol-name kb)))
- (string< (symbol-name ka)
- (symbol-name kb))
- ))
- )
- ((and (symbolp kb)
- (string-match "^->" (symbol-name kb)))
- t)
- ((and (symbolp ka)
- (string-match "^<-" (symbol-name ka)))
- (cond ((symbolp kb)
- (cond ((string-match "^<-" (symbol-name kb))
- (string< (symbol-name ka)
- (symbol-name kb))
- )
- ;; ((string-match "^->" (symbol-name kb))
- ;; t)
- )))
- )
- ((and (symbolp kb)
- (string-match "^<-" (symbol-name kb)))
- t
- ;; (not (string-match "^->" (symbol-name ka)))
- )
- ((find-charset ka)
- (if (find-charset kb)
- (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)
- (symbol-name kb)))
- (t)))
- ((symbolp kb)
- nil)))
-