(insert-char-attributes): Print `ideographic-radical@DOMAIN',
authortomo <tomo>
Sat, 6 Nov 2004 16:39:29 +0000 (16:39 +0000)
committertomo <tomo>
Sat, 6 Nov 2004 16:39:29 +0000 (16:39 +0000)
`ideographic-strokes@DOMAIN' and `total-strokes@DOMAIN' as
`ideographic-radical', `ideographic-strokes' and `total-strokes' even
if DOMAIN is not found in `char-db-feature-domains'.

lisp/utf-2000/char-db-util.el

index 45d4fa1..f427369 100644 (file)
       (setq attributes (delq 'ideographic-radical attributes))
       )
     (let (key)
-      (dolist (domain char-db-feature-domains)
+      (dolist (domain
+              ;; char-db-feature-domains
+              (let* ((dest char-db-feature-domains)
+                     (dlast (last dest))
+                     domain)
+                (dolist (feature (char-attribute-list))
+                  (setq feature (symbol-name feature))
+                  (when (string-match
+                         "\\(radical\\|strokes\\)@\\([^@*]+\\)\\(\\*\\|$\\)"
+                         feature)
+                    (setq domain (intern (match-string 2 feature)))
+                    (unless (memq domain dest)
+                      (setcdr dlast (setq dlast (list domain))))))
+                dest))
        (setq key (intern (format "%s@%s" 'ideographic-radical domain)))
        (when (and (memq key attributes)
                   (setq value (get-char-attribute char key)))