changeset 17084:07f0a1e07d1e

Add INIT-BOL to coding system iso-2022-cn. Remove prefix "coding-system-" from coding system symbol names.
author Kenichi Handa <handa@m17n.org>
date Wed, 26 Feb 1997 12:24:02 +0000
parents 9e6a3e03ed4c
children 4dafa5431293
files lisp/language/chinese.el
diffstat 1 files changed, 55 insertions(+), 36 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/language/chinese.el	Wed Feb 26 12:22:56 1997 +0000
+++ b/lisp/language/chinese.el	Wed Feb 26 12:24:02 1997 +0000
@@ -34,31 +34,44 @@
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (make-coding-system
- 'coding-system-iso-2022-cn 2 ?C
+ 'iso-2022-cn 2 ?C
  "Coding system ISO-2022-CN for Chinese (GB and CNS character sets)."
  '(ascii
    (nil chinese-gb2312 chinese-cns11643-1)
    (nil chinese-cns11643-2)
    (nil chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5
 	chinese-cns11643-6 chinese-cns11643-7)
-   nil ascii-eol ascii-cntl seven locking-shift single-shift))
+   nil ascii-eol ascii-cntl seven locking-shift single-shift nil nil nil
+   init-bol))
+
+(define-coding-system-alias 'iso-2022-cn 'iso-2022-cn-ext)
+
+(set-language-info
+ "Chinese" 'documentation
+"Emacs provides three kinds of Chinese support: Chinese-GB,
+Chinese-BIG5, and Chinese-CNS.  Please specify one of them to get more
+information.")
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; Chinese GB2312 (simplified) 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (make-coding-system
- 'coding-system-euc-china 2 ?C
+ 'cn-gb-2312 2 ?C
  "Coding-system of Chinese EUC (so called GB Encoding)."
  '((ascii t) chinese-gb2312 chinese-sisheng nil
    nil ascii-eol ascii-cntl nil nil single-shift nil))
 
+(define-coding-system-alias 'cn-gb-2312 'euc-china)
+
 (make-coding-system
- 'coding-system-hz 0 ?z
+ 'hz-gb-2312 0 ?z
  "Codins-system of Hz/ZW used for Chinese (GB)."
  nil)
-(put 'coding-system-hz 'post-read-conversion 'post-read-decode-hz)
-(put 'coding-system-hz 'pre-write-conversion 'pre-write-encode-hz)
+(put 'hz-gb-2312 'post-read-conversion 'post-read-decode-hz)
+(put 'hz-gb-2312 'pre-write-conversion 'pre-write-encode-hz)
+
+(define-coding-system-alias 'hz-gb-2312 'hz)
 
 (defun post-read-decode-hz (len)
   (let ((pos (point)))
@@ -75,6 +88,8 @@
     nil))
 
 (register-input-method
+ "Chinese-GB" '("cxterm-gb" encoded-kbd-select-terminal cn-gb-2312))
+(register-input-method
  "Chinese-GB" '("quail-ccdospy" quail-use-package "quail/ccdospy"))
 (register-input-method
  "Chinese-GB" '("quail-ctlau" quail-use-package "quail/ctlau"))
@@ -94,8 +109,9 @@
 (defun setup-chinese-gb-environment ()
   (setq primary-language "Chinese-GB")
 
-  (setq coding-category-iso-8-2 'coding-system-euc-china)
-  (setq coding-category-iso-else 'coding-system-iso-2022-cn)
+  (setq coding-category-iso-8-2 'cn-gb-2312)
+  (setq coding-category-iso-else 'iso-2022-cn)
+  (setq coding-category-big5 'cn-big5)
 
   (set-coding-priority
    '(coding-category-iso-7
@@ -106,34 +122,31 @@
      coding-category-internal
      ))
 
-  (setq-default buffer-file-coding-system 'coding-system-euc-china)
-  (set-terminal-coding-system 'coding-system-euc-china)
-  (set-keyboard-coding-system 'coding-system-euc-china)
+  (setq-default buffer-file-coding-system 'cn-gb-2312)
+  (set-terminal-coding-system 'cn-gb-2312)
+  (set-keyboard-coding-system 'cn-gb-2312)
 
   (setq default-input-method '("Chinese-GB" . "quail-py"))
   )
 
 (set-language-info-alist
- "Chinese" '((documentation . 
-"Emacs provides three kinds of Chinese support: Chinese-GB,
-Chinese-BIG5, and Chinese-CNS.  Please specify one of them to get more
-information.")
-	     (setup-function . setup-chinese-gb-environment)
-	     (charset . (chinese-gb2312 chinese-sisheng))
-	     (coding-system . (coding-system-euc-china
-			       coding-system-hz
-			       coding-system-iso-2022-cn))
-	     (documentation . t)
-	     (sample-text . "Chinese ($AVPND(B,$AFUM(;0(B,$A::So(B)	$ADc:C(B")))
+ "Chinese-GB" '((documentation . t)
+		(setup-function . setup-chinese-gb-environment)
+		(charset . (chinese-gb2312 chinese-sisheng))
+		(coding-system . (cn-gb-2312 hz-gb-2312 iso-2022-cn))
+		(documentation . t)
+		(sample-text . "Chinese ($AVPND(B,$AFUM(;0(B,$A::So(B)	$ADc:C(B")))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; Chinese BIG5 (traditional)
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (make-coding-system
- 'coding-system-big5 3 ?B
+ 'big5 3 ?B
  "Coding-system of BIG5.")
 
+(define-coding-system-alias 'big5 'cn-big5)
+
 ;; Big5 font requires special encoding.
 (define-ccl-program ccl-encode-big5-font
   `(0
@@ -153,6 +166,8 @@
       (cons (cons "big5" ccl-encode-big5-font) font-ccl-encoder-alist))
 
 (register-input-method
+ "Chinese-BIG5" '("cxterm-big5" encoded-kbd-select-terminal big5))
+(register-input-method
  "Chinese-BIG5" '("quail-qj-b5" quail-use-package "quail/qj-b5"))
 (register-input-method
  "Chinese-BIG5" '("quail-zozy" quail-use-package "quail/zozy"))
@@ -176,17 +191,19 @@
 (defun setup-chinese-big5-environment ()
   (setq primary-language "Chinese-BIG5")
 
-  (setq coding-category-big5 'coding-system-big5)
-  (setq coding-category-iso-else 'coding-system-iso-2022-cn)
+  (setq coding-category-big5 'cn-big5)
+  (setq coding-category-iso-else 'iso-2022-cn)
+  (setq coding-category-iso-8-2 'cn-gb-2312)
 
   (set-coding-priority
    '(coding-category-iso-7
      coding-category-iso-else
-     coding-category-big5))
+     coding-category-big5
+     coding-category-iso-8-2))
 
-  (setq-default buffer-file-coding-system 'coding-system-big5)
-  (set-terminal-coding-system 'coding-system-big5)
-  (set-keyboard-coding-system 'coding-system-big5)
+  (setq-default buffer-file-coding-system 'cn-big5)
+  (set-terminal-coding-system 'cn-big5)
+  (set-keyboard-coding-system 'cn-big5)
 
   (setq default-input-method '("Chinese-BIG5" . "quail-py-b5"))
   )
@@ -194,8 +211,7 @@
 (set-language-info-alist
  "Chinese-BIG5" '((setup-function . setup-chinese-big5-environment)
 		  (charset . (chinese-big5-1 chinese-big5-2))
-		  (coding-system . (coding-system-big5
-				    coding-system-iso-2022-cn))
+		  (coding-system . (cn-big5 iso-2022-cn))
 		  (documentation . t)
 		  (sample-text . "Cantonese ($(0GnM$(B,$(0N]0*Hd(B)	$(0*/=((B, $(0+$)p(B")))
 
@@ -211,16 +227,19 @@
 (defun setup-chinese-cns-environment ()
   (setq primary-language "Chinese-CNS")
 
-  (setq coding-category-iso-else 'coding-system-iso-2022-cn)
+  (setq coding-category-iso-else 'iso-2022-cn)
+  (setq coding-category-big5 'cn-big5)
+  (setq coding-category-iso-8-2 'cn-gb-2312)
 
   (set-coding-priority
    '(coding-category-iso-7
      coding-category-iso-else
+     coding-category-iso-8-2
      coding-category-big5))
 
-  (setq-default buffer-file-coding-system 'coding-system-iso-2022-7)
-  (set-terminal-coding-system 'coding-system-iso-2022-7)
-  (set-keyboard-coding-system 'coding-system-iso-2022-7)
+  (setq-default buffer-file-coding-system 'iso-2022-cn)
+  (set-terminal-coding-system 'iso-2022-cn)
+  (set-keyboard-coding-system 'iso-2022-cn)
 
   (setq default-input-method '("Chinese-CNS" . "quail-py-cns"))
   )
@@ -231,7 +250,7 @@
 			     chinese-cns11643-3 chinese-cns11643-4
 			     chinese-cns11643-5 chinese-cns11643-6
 			     chinese-cns11643-7))
-		 (coding-system . (coding-system-iso-2022-cn))
+		 (coding-system . (iso-2022-cn))
 		 (documentation . t)))
 
 ;;; chinese.el ends here