Add code to compact `ideographic-structure' and
[chise/ids.git] / install-ids.el
index 9f0b9e3..49e1927 100644 (file)
        (setq v ret))
      nil)
    'ideographic-structure@apparent)
+
+  (map-char-attribute
+   (lambda (c v)
+     (unless (equal (setq ret (ideographic-structure-compact v)) v)
+       (princ (format "Compact %04X (%c) : %s -> %s\n"
+                     (char-int c)
+                     c
+                     (ideographic-structure-to-ids v)
+                     (ideographic-structure-to-ids ret)))
+       (put-char-attribute c 'ideographic-structure ret)
+       (setq v ret))
+     nil)
+   'ideographic-structure)
+  (map-char-attribute
+   (lambda (c v)
+     (unless (equal (setq ret (ideographic-structure-compact v)) v)
+       (princ (format "Compact %04X (%c) : [apparent] %s -> %s\n"
+                     (char-int c)
+                     c
+                     (ideographic-structure-to-ids v)
+                     (ideographic-structure-to-ids ret)))
+       (put-char-attribute c 'ideographic-structure@apparent ret)
+       (setq v ret))
+     nil)
+   'ideographic-structure@apparent)
   (princ "done.\n")
 
   (princ "Updating char-feature `ideographic-structure'...")