'==hanyo-denshi/jd)
)
-(let (j-chr)
+(let (j-chr ucs-jv)
(map-char-attribute
(lambda (c v)
(if (and (setq j-chr (decode-char '=ucs@JP v))
'=ucs@unicode)
(map-char-attribute
(lambda (c v)
- (if (and (setq j-chr (decode-char '==ucs@JP v))
- (not (eq j-chr c))
- (not (or (eq (encode-char c '==ucs@jis)
- (encode-char c '==ucs@JP/hanazono))
- (eq (encode-char c '==ucs@unicode)
- (encode-char c '==ucs@JP/hanazono))
- (eq (encode-char c '==ucs@cns)
- (encode-char c '==ucs@JP/hanazono))
- )))
- (put-char-attribute c '==ucs@JP/hanazono nil))
+ (or (and (setq ucs-jv (encode-char c '==ucs@JP/hanazono))
+ (>= ucs-jv #x20000))
+ (if (and (setq j-chr (decode-char '==ucs@JP v))
+ (not (eq j-chr c))
+ (not (or (eq ucs-jv (encode-char c '==ucs@jis))
+ (eq ucs-jv (encode-char c '==ucs@unicode))
+ (eq ucs-jv (encode-char c '==ucs@cns))
+ )))
+ (put-char-attribute c '==ucs@JP/hanazono nil)))
nil)
'==ucs@unicode)
)