Reformatted.
[chise/xemacs-chise.git] / lisp / utf-2000 / maps-conf.el
index 8b12263..661824e 100644 (file)
            (put-char-attribute char '=ucs@jis/2004 ucs)))
        )
        (rep-char
-       (unless (and (= ku 47)(= ten 64))
+       (unless (or (and (= ku 47)(= ten 64))
+                   (and (= ku 67)(= ten 14)))
          (put-char-attribute rep-char '==jis-x0213-1@2000 code)
          (remove-char-attribute rep-char '==jis-x0213-1)
          (remove-char-attribute rep-char '==jis-x0213-1@2004)
    '==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))
              (not (eq j-chr c))
-             (null (encode-char c '=ucs)))
+             (null (encode-char c '=ucs))
+             (not (eq (encode-char c '=ucs@jis)
+                      (encode-char c '=ucs@JP/hanazono))))
         (put-char-attribute c '=ucs@JP/hanazono nil))
      nil)
    '=ucs@unicode)
   (map-char-attribute
    (lambda (c v)
-     (if (and (setq j-chr (decode-char '==ucs@JP v))
-             (not (eq j-chr c)))
-        (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)
   )