(ids-dump-format-list): New function; convert `=ucs@unicode' or
authortomo <tomo>
Wed, 6 Apr 2005 19:45:18 +0000 (19:45 +0000)
committertomo <tomo>
Wed, 6 Apr 2005 19:45:18 +0000 (19:45 +0000)
`=ucs@iso' characters to corresponding '=ucs' characters.
(ids-dump-insert-line): Use `ids-dump-format-list' instead of
`ids-format-list'.
(ids-dump-insert-jis-x0208-1990): Likewise.

ids-dump.el

index ea54637..8833b87 100644 (file)
@@ -1,6 +1,6 @@
 ;;; ids-dump.el --- Dump utility of IDS-* files
 
-;; Copyright (C) 2002,2003 MORIOKA Tomohiko
+;; Copyright (C) 2002,2003,2004,2005 MORIOKA Tomohiko
 
 ;; Author: MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
 ;; Keywords: IDS, IDC, Ideographs, UCS, Unicode
 
 (require 'ids)
 
+(defun ids-dump-format-list (ids-list)
+  (if ids-list
+      (let (ucs)
+       (mapconcat
+        (lambda (c)
+          (char-to-string
+           (if (setq ucs
+                     (unless (encode-char c '=ucs 'defined-only)
+                       (or (get-char-attribute c '=ucs@unicode)
+                           (get-char-attribute c '=ucs@iso))))
+               (decode-char '=ucs ucs)
+             c)))
+        (ids-format-list ids-list) ""))))
+
 (defun ids-dump-insert-line (ccs line-spec code)
   (let ((chr (decode-char ccs code))
        id-list)
@@ -34,7 +48,7 @@
       (insert (format line-spec
                      code (decode-builtin-char ccs code)
                      (if id-list
-                         (ids-format-list id-list)
+                         (ids-dump-format-list id-list)
                        (char-to-string chr)))))))
 
 (defun ids-dump-insert-ccs-ranges (ccs line-spec &rest ranges)
                 h l
                 (decode-builtin-char 'japanese-jisx0208-1990
                                      (logior (lsh h 8) l))
-                (or (ids-format-list
+                (or (ids-dump-format-list
                      (get-char-attribute chr 'ideographic-structure))
                     "")))
        (setq cell (1+ cell)))
               h l
               (decode-builtin-char 'japanese-jisx0208-1990
                                    (logior (lsh h 8) l))
-              (or (ids-format-list
+              (or (ids-dump-format-list
                    (get-char-attribute chr 'ideographic-structure))
                   "")))
       (setq cell (1+ cell)))))