# HG changeset patch # User Kenichi Handa # Date 979007403 0 # Node ID e459e9bee789fb877e07960ebf342a546b39b8a7 # Parent ac15dde5f6a386363be62ba89abc921e088d25cc (make-coding-system): If the coding system accepts extra latin codes, register such codes as safe for the coding system. diff -r ac15dde5f6a3 -r e459e9bee789 lisp/international/mule.el --- a/lisp/international/mule.el Tue Jan 09 02:29:21 2001 +0000 +++ b/lisp/international/mule.el Tue Jan 09 02:30:03 2001 +0000 @@ -716,6 +716,7 @@ (let ((coding-spec (make-vector 5 nil)) (no-initial-designation t) (no-alternative-designation t) + (accept-latin-extra-code nil) coding-category) (if (or (not (integerp type)) (< type 0) (> type 5)) (error "TYPE argument must be 0..5")) @@ -763,6 +764,9 @@ (setq fl (cdr fl) i (1+ i))) (while (and (< i 32) fl) (aset vec i (car fl)) + (if (and (= i 16) ; ACCEPT-LATIN-EXTRA-CODE + (car fl)) + (setq accept-latin-extra-code t)) (setq fl (cdr fl) i (1+ i))) (aset coding-spec 4 vec) (setq coding-category @@ -839,7 +843,13 @@ (aset safe-chars i t) (setq i (1+ i))))) (t - (aset safe-chars (make-char charset) t))))) + (aset safe-chars (make-char charset) t)))) + (if accept-latin-extra-code + (let ((i 128)) + (while (< i 160) + (if (aref latin-extra-code-table i) + (aset safe-chars i t)) + (setq i (1+ i)))))) (setq l (cons (cons 'safe-chars safe-chars) l)))) (while l (setq prop (car (car l)) val (cdr (car l)) l (cdr l))