code point.
(insert-char-attributes): Use current-column to detect short or long;
format `ideographic-structure' as sequence of character-references.
       (setq value (pop plist))
       (cond ((eq name :char)
             (insert ":char\t")
+            (if (numberp value)
+                (setq value (decode-char 'ucs value)))
             (char-db-insert-char-spec value readable)
              (insert line-breaking))
             (t
     (when (and (memq 'name attributes)
               (setq value (get-char-attribute char 'name)))
       (insert (format
-              (if (> (length value) 47)
+              (if (> (+ (current-column) (length value)) 48)
                   "(name . %S)%s"
                 "(name               . %S)%s")
               value line-breaking))
                              ->synonyms
                              ->radical <-radical
                              ->bopomofo <-bopomofo
-                             ->ideographic <-ideographic))
+                             ->ideographic <-ideographic
+                             ideographic-structure))
                 (insert (format "(%-18s%s " name line-breaking))
                 (setq lbs (concat "\n" (make-string (current-column) ?\ ))
                       separator nil)