From fd7a117da0737cfda9bf016e36805c046268e7e8 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Tue, 20 Apr 2004 07:06:58 +0000 Subject: [PATCH] (quail-update-translation): Don't insert such an unsupported multibyte char in a unibyte buffer. --- lisp/international/quail.el | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/lisp/international/quail.el b/lisp/international/quail.el index 2f275a59dca..cfd578fbc06 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -1524,6 +1524,28 @@ with more keys." (let (pos) (quail-delete-region) (setq pos (point)) + (or enable-multibyte-characters + (let (char) + (if (stringp quail-current-str) + (catch 'tag + (mapc #'(lambda (ch) + (when (/= (unibyte-char-to-multibyte + (multibyte-char-to-unibyte ch)) + ch) + (setq char ch) + (throw 'tag nil))) + quail-current-str)) + (if (/= (unibyte-char-to-multibyte + (multibyte-char-to-unibyte quail-current-str)) + quail-current-str) + (setq char quail-current-str))) + (when char + (message "Can't input %c in the current unibyte buffer" char) + (ding) + (sit-for 2) + (message nil) + (setq quail-current-str nil) + (throw 'quail-tag nil)))) (insert quail-current-str) (move-overlay quail-overlay pos (point)) (if (overlayp quail-conv-overlay) -- 2.39.2