diff options
author | Mattias Engdegård <mattiase@acm.org> | 2020-04-09 11:29:51 +0200 |
---|---|---|
committer | Mattias Engdegård <mattiase@acm.org> | 2020-04-09 12:06:39 +0200 |
commit | 95dd8de1df19a8529efb66257ac78789be62ca37 (patch) | |
tree | bfe2bb196b879ec90f85744d9cceee971df75c22 | |
parent | 786887cf439450ce7d8d6fbe624e8c434e50d469 (diff) | |
download | emacs-95dd8de1df19a8529efb66257ac78789be62ca37.tar.gz |
chinese-hz is not ASCII compatible (bug#40407)
* lisp/language/chinese.el: Disable :ascii-compatible-p for chinese-hz.
* test/lisp/international/mule-tests.el (mule-hz): New test.
-rw-r--r-- | lisp/language/chinese.el | 5 | ||||
-rw-r--r-- | test/lisp/international/mule-tests.el | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/lisp/language/chinese.el b/lisp/language/chinese.el index bc6969c1398..4389db961d8 100644 --- a/lisp/language/chinese.el +++ b/lisp/language/chinese.el @@ -103,6 +103,11 @@ (define-coding-system-alias 'hz-gb-2312 'chinese-hz) (define-coding-system-alias 'hz 'chinese-hz) +;; FIXME: 'define-coding-system' automatically sets :ascii-compatible-p, +;; to any encoding whose :coding-type is 'utf-8', but UTF-7 is not ASCII +;; compatible, so we override that here (bug#40407). +(coding-system-put 'chinese-hz :ascii-compatible-p nil) + (set-language-info-alist "Chinese-GB" '((charset chinese-gb2312 chinese-sisheng) (iso639-language . zh) diff --git a/test/lisp/international/mule-tests.el b/test/lisp/international/mule-tests.el index bb96943888f..5f8e653d7c2 100644 --- a/test/lisp/international/mule-tests.el +++ b/test/lisp/international/mule-tests.el @@ -65,6 +65,9 @@ (should (equal (encode-coding-string "あ" 'utf-7-imap) "&MEI-")) (should (equal (decode-coding-string "&MEI-" 'utf-7-imap) "あ"))) +(ert-deftest mule-hz () + ;; The chinese-hz encoding is not ASCII compatible. + (should-not (coding-system-get 'chinese-hz :ascii-compatible-p))) ;; Stop "Local Variables" above causing confusion when visiting this file. |