(char-db-coded-charset-priority-list): Use `=daikanwa' and
authortomo <tomo>
Tue, 19 Apr 2011 16:03:40 +0000 (16:03 +0000)
committertomo <tomo>
Tue, 19 Apr 2011 16:03:40 +0000 (16:03 +0000)
`=daikanwa@rev1' instead of `ideograph-daikanwa' and
`ideograph-daikanwa-2'; add `=daikanwa@rev2'.
(char-db-insert-char-spec): Modify for `insert-char-attributes' to
specify optional argument `for-sub-node'.
(char-db-insert-alist): Likewise.
(char-db-insert-relation-feature): Likewise.
(insert-char-attributes): Add optional argument `for-sub-node'; insert
`<-subsumptive' feature if `for-sub-node' is nil.

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

index 119839e..6e36360 100644 (file)
     =hanyo-denshi/ia
     =hanyo-denshi/ib
     =hanyo-denshi/hg
-    ideograph-daikanwa-2
-    ideograph-daikanwa
+    =daikanwa
+    =daikanwa@rev2
+    =daikanwa@rev1
     =cbeta
     =gt-k
     ideograph-hanziku-1
     (insert-char-attributes char
                            readable
                             (union (mapcar #'car char-spec)
-                                  required-features))
+                                  required-features)
+                           nil 'for-sub-node)
     (when temp-char
       ;; undefine temporary character
       ;;   Current implementation is dirty.
                   (insert-char-attributes ret
                                           readable
                                           (or al 'none) ; cal
-                                          ))
+                                          nil 'for-sub-node))
               (insert (prin1-to-string value)))
             (insert ")")
             (insert line-breaking))
                     (insert-char-attributes ret
                                             readable
                                             al ; cal
-                                            )
+                                            nil 'for-sub-node)
                     (setq separator lbs))
                 (if separator
                     (insert separator))
          (let ((char-db-ignored-attributes
                 (cons '<-subsumptive
                       char-db-ignored-attributes)))
-           (insert-char-attributes cell readable))
+           (insert-char-attributes cell readable nil nil 'for-sub-node))
          (setq separator lbs))
        )
        ((characterp cell)
     (insert ")")
     (insert line-breaking)))
 
-(defun insert-char-attributes (char &optional readable attributes column)
+(defun insert-char-attributes (char &optional readable attributes column
+                                   for-sub-node)
   (unless column
     (setq column (current-column)))
   (let (name value ; has-long-ccs-name
                  #'char-attribute-name<)))
     (insert "(")
     (when (memq '<-subsumptive attributes)
-      (when readable
+      (when (or readable (not for-sub-node))
        (when (setq value (get-char-attribute char '<-subsumptive))
          (char-db-insert-relation-feature char '<-subsumptive value
                                           line-breaking
                             (insert lbs))
                         (insert-char-attributes ret
                                                 readable
-                                                al cal)
+                                                al ; cal
+                                                nil 'for-sub-node)
                         (setq separator lbs))
                     (setq ret (prin1-to-string cell))
                     (if separator