(GT-56364): New character.
[chise/xemacs-chise.git] / lisp / utf-2000 / char-db-util.el
index db1b5d3..1049f23 100644 (file)
     nil)))
 
 (defvar char-db-coded-charset-priority-list
-  (let ((rest default-coded-charset-priority-list)
-       dest)
-    (while rest
-      (when (symbolp (car rest))
-       (cond ((memq (car rest)
-                    '(latin-viscii-lower
-                      latin-viscii-upper
-                      ipa
-                      lao
-                      ethiopic
-                      arabic-digit
-                      arabic-1-column
-                      arabic-2-column)))
-             ((string-match "^mojikyo-" (symbol-name (car rest))))
-             ((string-match "^ideograph-cbeta" (symbol-name (car rest))))
-             ((string-match "^china3-jef" (symbol-name (car rest))))
-             ((string-match "^chinese-big5" (symbol-name (car rest))))
-             ((string-match "^ideograph-gt-pj-" (symbol-name (car rest)))
-              (unless (memq 'ideograph-gt dest)
-                (setq dest (cons 'ideograph-gt dest))))
-             (t
-              (setq dest (cons (car rest) dest)))))
-      (setq rest (cdr rest)))
-    (append (sort dest #'char-attribute-name<)
-           '(chinese-big5-cdp ideograph-cbeta china3-jef
-                              chinese-big5-eten chinese-big5))))
+  '(ascii
+    control-1
+    latin-iso8859-1
+    latin-iso8859-2
+    latin-iso8859-3
+    latin-iso8859-4
+    latin-iso8859-9
+    latin-jisx0201
+    cyrillic-iso8859-5
+    greek-iso8859-7
+    thai-tis620
+    =jis-x0208
+    japanese-jisx0208
+    japanese-jisx0212
+    japanese-jisx0208-1978
+    chinese-gb2312
+    chinese-cns11643-1
+    chinese-cns11643-2
+    chinese-cns11643-3
+    chinese-cns11643-4
+    chinese-cns11643-5
+    chinese-cns11643-6
+    chinese-cns11643-7
+    =jis-x0213-1-2000
+    =jis-x0213-2-2000
+    korean-ksc5601
+    chinese-isoir165
+    katakana-jisx0201
+    hebrew-iso8859-8
+    japanese-jisx0208-1990
+    chinese-gb12345
+    latin-viscii
+    ethiopic-ucs
+    =gt
+    =big5-cdp
+    =gt-k
+    ideograph-daikanwa-2
+    ideograph-daikanwa
+    =cbeta
+    ideograph-hanziku-1
+    ideograph-hanziku-2
+    ideograph-hanziku-3
+    ideograph-hanziku-4
+    ideograph-hanziku-5
+    ideograph-hanziku-6
+    ideograph-hanziku-7
+    ideograph-hanziku-8
+    ideograph-hanziku-9
+    ideograph-hanziku-10
+    ideograph-hanziku-11
+    ideograph-hanziku-12
+    =cbeta
+    =jef-china3
+    =big5-eten
+    =big5))
 
 (defun char-db-make-char-spec (char)
   (let (ret char-spec)
                                  ideograph-gt-pj-10
                                  ideograph-gt-pj-11))
                      (setq ret (decode-char ccs code-point))
-                     (setq ret (get-char-attribute ret 'ideograph-gt)))
-                (decode-builtin-char 'ideograph-gt ret))
+                     (setq ret (get-char-attribute ret '=gt)))
+                (decode-builtin-char '=gt ret))
                (t
                 (decode-builtin-char ccs code-point))))
     (cond ((and (<= 0 (char-int ret))
                      line-breaking))
       (setq attributes (delq '=>ucs-cns attributes))
       )
+    (when (and (memq '=>ucs-big5 attributes)
+              (setq value (get-char-attribute char '=>ucs-big5)))
+      (insert (format "(=>ucs-big5\t\t. #x%04X)\t; %c%s"
+                     value (decode-char 'ucs-big5 value)
+                     line-breaking))
+      (setq attributes (delq '=>ucs-big5 attributes))
+      )
     (when (and (memq '=>ucs-jis attributes)
               (setq value (get-char-attribute char '=>ucs-jis)))
       (insert (format "(=>ucs-jis\t\t. #x%04X)\t; %c%s"
           (format
            (cond ((memq name '(ideograph-daikanwa-2
                                ideograph-daikanwa
-                               ideograph-gt
-                               =gt-k
-                               ideograph-cbeta))
+                               =gt =gt-k =cbeta))
                   (if has-long-ccs-name
                       "(%-26s . %05d)\t; %c%s"
                     "(%-18s . %05d)\t; %c%s"))
     (goto-char (point-min))
     (while (re-search-forward "[ \t]+$" nil t)
       (replace-match ""))
+    ;; from tabify.
+    (goto-char (point-min))
+    (while (re-search-forward "[ \t][ \t][ \t]*" nil t)
+      (let ((column (current-column))
+           (indent-tabs-mode t))
+       (delete-region (match-beginning 0) (point))
+       (indent-to column)))
     (goto-char (point-max))
-    (tabify (point-min)(point-max))
+    ;; (tabify (point-min)(point-max))
     ))
 
 (defun insert-char-data-with-variant (char &optional printable