# HG changeset patch # User Kenichi Handa # Date 903321294 0 # Node ID 6a8e5ce6cfc12967eb2b2e0978a4b0619f06bad1 # Parent 2afa25ce99aa7f2cbdfac55c76fe693c8a6206e5 (set-language-environment): Reset syntax and case table to the defaults if the value of unibyte-syntax key is nil. diff -r 2afa25ce99aa -r 6a8e5ce6cfc1 lisp/international/mule-cmds.el --- a/lisp/international/mule-cmds.el Mon Aug 17 00:45:52 1998 +0000 +++ b/lisp/international/mule-cmds.el Mon Aug 17 02:34:54 1998 +0000 @@ -1123,18 +1123,31 @@ (setq charset-origin-alist (get-language-info language-name 'charset-origin-alist)) + ;; Unibyte setups if necessary. (unless default-enable-multibyte-characters - ;; Unibyte setups. + ;; Syntax and case table. (let ((syntax (get-language-info language-name 'unibyte-syntax))) (if syntax (let ((set-case-syntax-set-multibyte nil)) - (load syntax nil t) - (set-standard-case-table (standard-case-table)) - (let ((list (buffer-list))) - (while list - (with-current-buffer (car list) - (set-case-table (standard-case-table))) - (setq list (cdr list))))))) + (load syntax nil t)) + ;; No information for syntax and case. Reset to the defaults. + (let ((syntax-table (standard-syntax-table)) + (case-table (standard-case-table)) + (ch 160)) + (while (< ch 256) + (modify-syntax-entry ch " " syntax-table) + (aset case-table ch ch) + (setq ch (1+ ch))) + (set-char-table-extra-slot case-table 0 nil) + (set-char-table-extra-slot case-table 1 nil) + (set-char-table-extra-slot case-table 2 nil)) + (set-standard-case-table (standard-case-table)) + (let ((list (buffer-list))) + (while list + (with-current-buffer (car list) + (set-case-table (standard-case-table))) + (setq list (cdr list)))))) + ;; Display table and coding system for terminal. (let ((coding (get-language-info language-name 'unibyte-display))) (if coding (progn