\f
;; These are tables for unifying characters on decoding and encoding.
+(define-character-unification-table
+ 'oldjis-newjis-jisroman-ascii
+ (list (cons (make-char 'japanese-jisx0208-1978)
+ (make-char 'japanese-jisx0208))
+ (cons (make-char 'latin-jisx0201) (make-char 'ascii))))
+
(setq standard-character-unification-table-for-decode
- (make-unification-table
- (list (cons (make-char 'japanese-jisx0208-1978)
- (make-char 'japanese-jisx0208))
- (cons (make-char 'latin-jisx0201) (make-char 'ascii)))))
+ (get 'oldjis-newjis-jisroman-ascii 'unification-table))
(setq standard-character-unification-table-for-encode nil)
(make-coding-system
'emacs-mule 0 ?=
"Emacs internal format used in buffer and string"
- nil t)
+ nil
+ '((safe-charsets . t)))
(make-coding-system
'raw-text 5 ?t
"Raw text, which means text contains random 8-bit codes."
- nil '(ascii))
+ nil
+ '((safe-charsets . t)))
(make-coding-system
'iso-2022-7bit 2 ?J
"ISO 2022 based 7-bit encoding using only G0"
'((ascii t) nil nil nil
short ascii-eol ascii-cntl seven)
- t)
+ '((safe-charsets . t)))
(make-coding-system
'iso-2022-7bit-ss2 2 ?$
"ISO 2022 based 7-bit encoding using SS2 for 96-charset"
'((ascii t) nil t nil
short ascii-eol ascii-cntl seven nil single-shift)
- t)
+ '((safe-charsets . t)))
(make-coding-system
'iso-2022-7bit-lock 2 ?&
"ISO-2022 coding system using Locking-Shift for 96-charset"
'((ascii t) t nil nil
nil ascii-eol ascii-cntl seven locking-shift)
- t)
+ '((safe-charsets . t)))
(define-coding-system-alias 'iso-2022-int-1 'iso-2022-7bit-lock)
chinese-cns11643-6 chinese-cns11643-7)
short ascii-eol ascii-cntl seven locking-shift single-shift nil nil nil
init-bol)
- '(ascii
- japanesejisx0208 japanese-jisx0208-1978 latin-jisx0201
- korean-ksc5601 chinese-gb2312 chinese-cns11643-1
- chinese-cns11643-2 chinese-cns11643-3 chinese-cns11643-4
- chinese-cns11643-5 chinese-cns11643-6 chinese-cns11643-7))
+ '((safe-charsets ascii japanesejisx0208 japanese-jisx0208-1978 latin-jisx0201
+ korean-ksc5601 chinese-gb2312 chinese-cns11643-1
+ chinese-cns11643-2 chinese-cns11643-3 chinese-cns11643-4
+ chinese-cns11643-5 chinese-cns11643-6 chinese-cns11643-7)))
(define-coding-system-alias 'iso-2022-cjk 'iso-2022-7bit-lock-ss2)
"ISO 2022 based 8-bit encoding using SS2 for 96-charset"
'((ascii t) nil t nil
nil ascii-eol ascii-cntl nil nil single-shift)
- t)
+ '((safe-charsets . t)))
(make-coding-system
'iso-safe 2 ?-
"Convert all characters but ASCII to `?'."
'(ascii nil nil nil
nil ascii-eol ascii-cntl nil nil nil nil nil nil nil nil t)
- '(ascii))
+ '((safe-charsets ascii)))
;; Use iso-safe for terminal output if some other coding system is
;; specified explicitely.
(setq coding-category-emacs-mule 'emacs-mule
coding-category-sjis 'japanese-shift-jis
coding-category-iso-7 'iso-2022-7bit
+ coding-category-iso-7-tight 'iso-2022-jp
coding-category-iso-8-1 'iso-latin-1
coding-category-iso-8-2 'japanese-iso-8bit
coding-category-iso-7-else 'iso-2022-7bit-lock
coding-category-binary 'no-conversion)
(set-coding-priority
- '(coding-category-iso-7
+ '(coding-category-iso-7-tight
+ coding-category-iso-7
coding-category-iso-8-1
coding-category-iso-8-2
coding-category-iso-7-else