--- cjk/utils/lisp/emacs/cjk-enc.el 2016-12-15 23:02:43.785461223 +0000 +++ emacs/cjk-enc.el 2016-12-18 07:37:45.316694525 +0000 @@ -444,6 +444,7 @@ (korean-ksc5601 . KS) (chinese-big5-1 . Bg5) (chinese-big5-2 . Bg5) + (big5 . Bg5) (chinese-cns11643-1 . CNS1) (chinese-cns11643-2 . CNS2) (chinese-cns11643-3 . CNS3) @@ -505,6 +506,7 @@ (chinese-gb2312 . ("\17767\177\177" . "\177%c\177%d\177")) (chinese-big5-1 . ("\17768\177\177" . "\177%c\177%d\177")) (chinese-big5-2 . ("\17768\177\177" . "\177%c\177%d\177")) + (big5 . ("\17768\177\177" . "\177%c\177%d\177")) (korean-ksc5601 . ("\17769\177\177" . "\177%c\177%d\177")) ;; Cdr part is a formatter string FORMAT. Each character is @@ -653,6 +655,9 @@ (if (eq charset 'tis620-2533) (setq charset (char-charset ch '(thai-tis620 ascii)))) + (if (eq charset 'big5) + (setq charset (char-charset ch '(ascii big5)))) + ;; Check whether we have Unicode based input. (if (eq charset 'unicode) (let ((l (split-char ch))) @@ -685,8 +690,8 @@ ;; CH1 -- first character code ;; CH2 -- second character code (of two-byte characters) ;; if any - (if (or (eq charset 'chinese-big5-1) - (eq charset 'chinese-big5-2)) + (if (or (eq charset 'big5) (or (eq charset 'chinese-big5-1) + (eq charset 'chinese-big5-2))) ;; Emacs uses two special character sets for Big5 ;; characters. We must decode the current character to ;; get the real Big5 character code. @@ -879,8 +884,9 @@ (if (> (- (point) last-pos) 1000) (progn (setq last-pos (point)) - (message "Converting: %2d%%" - (/ (* 100 (point)) (point-max))))) + (let ((coding-system-for-write (terminal-coding-system))) + (message "Converting: %2d%%" + (/ (* 100 (point)) (point-max)))))) ;; Advance to the next character and loop. (forward-char 1))