(dolist (file '("J90-to-UCS.txt" "JSP-to-UCS.txt"
"JX1-to-UCS.txt" "JX2-to-UCS.txt"
+ "K0-to-UCS.txt"
+ "G0-to-UCS.txt"
+ "C2-to-UCS.txt"
"C3-to-UCS.txt" "C4-to-UCS.txt"
+ "C5-to-UCS.txt" "C6-to-UCS.txt"
"B-to-UCS.txt" "JC3-to-UCS.txt"))
(mapping-table-read-file (expand-file-name file "../etc/char-data/")))
+(ucs-compat-read-file "../etc/char-data/UCS-compat.txt")
+
(jp-jouyou-read-file "../etc/char-data/jp-jouyou.txt")
(let ((ucs #xE000)
#x7165 #x7227 #x7233 #x733B #x4E6F
#x7366 #x7367 #x7368 #x736C #x5423
#x342A #x3476 #x5877 #x592D #x5A61
- #x3522 #x334C #x657D #x657E #x6621))
+ #x3522 #x334C #x657D #x657E #x6621
+ #x335C #x6D7D #x507C #x417C #x5371
+ #x3766 #x3E7D #x555D #x5739 #x5831
+ #x3F78 #x5973 #x5A33 #x5970 #x5A49
+ #x3F22 #x6026 #x4D32 #x612E #x4D63
+ #x4E57 #x316A #x4A43 #x723C #x6A64
+ #x6B36 #x6E43 #x3D36 #x6E44 #x3C60
+ #x6E45 #x6E46 #x6E48 #x6E4B #x6E4A
+ #x6E4F #x6E52 #x6E51 #x4830 #x6E54
+ #x6E55 #x395A #x724D #x737D #x3973
+ #x5379 #x5879 #x3D5D #x3C21 #x4C60
+ #x5267 #x722F #x3C39 #x3848 #x5578
+ #x4742 #x6950 #x697C #x6A24 #x5350
+ #x3326 #x5575 #x5A4B #x3647 #x343F
+ #x4337 #x492D #x3F6C #x6E4D #x4F3F
+ #x353D #x4324 #x475B #x6E47 #x4371
+ #x3F5D #x6E49 #x4D6F #x3C72 #x3D37
+ #x6E4C #x3B44 #x734E #x5567 #x545A
+ #x3071 #x332A #x516A #x476D #x3675
+ #x5734 #x552D #x565A #x564B #x5B79
+ #x5C74 #x5C27 #x5B5E #x3564 #x3823
+ #x6131 #x4A4D #x632E #x635E #x3729
+ #x3951 #x6967 #x704B #x3C38 #x6B26
+ #x4749 #x4428 #x3A47 #x6E4E #x4269
+ #x4043 #x6E56))
(put-char-attribute (decode-char 'japanese-jisx0208-1990 v)
'=gt-pj-1 v))
nil)
(put-char-attribute (decode-char ccs v) '=gt gt))
nil)
ccs)))
+
+;; (let (ret)
+;; (dolist (feature
+;; (let (dest)
+;; (dolist (feature (char-attribute-list))
+;; (when (string-match "\\*sources\\($\\|@[^\\*]+$\\)"
+;; (symbol-name feature))
+;; (setq dest (cons feature dest))))
+;; dest))
+;; (map-char-attribute
+;; (lambda (c v)
+;; (when (setq ret (memq 'shinjigen-1 v))
+;; (setcar ret 'shinjigen@1ed))
+;; (when (setq ret (memq 'shinjigen-2 v))
+;; (setcar ret 'shinjigen@rev))
+;; nil)
+;; feature)))
+
+;; (map-char-attribute
+;; (lambda (c v)
+;; (when (eq (encode-char c '=shinjigen@rev) v)
+;; (put-char-attribute c '=shinjigen v)
+;; (remove-char-attribute c '=shinjigen@1ed)
+;; (remove-char-attribute c '=shinjigen@rev)
+;; )
+;; nil)
+;; '=shinjigen@1ed)
+
+;; (let (ret)
+;; (dolist (feature
+;; (let (dest)
+;; (dolist (feature (char-attribute-list))
+;; (when (string-match "\\*sources\\($\\|@[^\\*]+$\\)"
+;; (symbol-name feature))
+;; (setq dest (cons feature dest))))
+;; dest))
+;; (map-char-attribute
+;; (lambda (c v)
+;; (cond ((setq ret (memq 'shinjigen@1ed v))
+;; (when (memq 'shinjigen@rev ret)
+;; (setcar ret 'shinjigen)
+;; (delq 'shinjigen@rev ret)
+;; ))
+;; ((setq ret (memq 'shinjigen@rev v))
+;; (when (memq 'shinjigen@1ed ret)
+;; (setcar ret 'shinjigen)
+;; (delq 'shinjigen@1ed ret)
+;; )))
+;; nil)
+;; feature)))
+
+(dolist (ccs '(=jis-x0208 =jis-x0208@1990))
+ (map-char-attribute
+ (lambda (c v)
+ (unless (eq (encode-char c '=jis-x0213-1@2000) v)
+ (put-char-attribute c '=jis-x0213-1 v))
+ nil)
+ ccs))
+
+(with-temp-buffer
+ (buffer-disable-undo)
+ (insert-file-contents "../etc/char-data/JX3-JX1-rep-diff.txt")
+ (goto-char (point-min))
+ (let (ku ten char code ucs)
+ (while (re-search-forward "^1-\\([0-9]+\\)-\\([0-9]+\\)[ \t]+" nil t)
+ (setq ku (string-to-number (match-string 1))
+ ten (string-to-number (match-string 2)))
+ (setq char (make-char '=jis-x0213-1@2000 (+ ku 32)(+ ten 32)))
+ (setq code (encode-char char '=jis-x0213-1@2000))
+ (put-char-attribute char '=jis-x0213-1@2000 code)
+ (remove-char-attribute char '=jis-x0213-1)
+ (remove-char-attribute char '=jis-x0213-1@2004)
+ (setq ucs (encode-char char '=ucs@jis/2000))
+ (remove-char-attribute char '=ucs@jis)
+ (remove-char-attribute char '=ucs@jis/2004)
+ (when (setq char (decode-char '=jis-x0213-1@2004 code))
+ (unless (eq (encode-char char '=ucs@jis/2004) ucs)
+ (put-char-attribute char '=ucs@jis/2004 ucs)))
+ (unless (eq code #x332A)
+ (when (setq char (decode-char '=>jis-x0208@1997 code 'defined-only))
+ (put-char-attribute char '=>jis-x0208 code)
+ (remove-char-attribute char '=>jis-x0208@1997)))
+ )))
+
+(map-char-attribute
+ (lambda (c v)
+ (unless (eq (encode-char c '=>jis-x0213-1) v)
+ (put-char-attribute c '=>jis-x0213-1 v))
+ nil)
+ '=>jis-x0208)