1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-11 16:08:13 +00:00

(activate-input-method): Handle the

case that the arg INPUT-METHOD is nil correctly.
(read-multilingual-string): Activate the specified input method
before calling read-string.  Afterward, activate the original
input method.
This commit is contained in:
Kenichi Handa 1998-08-18 00:44:20 +00:00
parent bb8459f26b
commit 305a3cb640

View File

@ -786,11 +786,11 @@ The return value is a string."
"Switch to input method INPUT-METHOD for the current buffer.
If some other input method is already active, turn it off first.
If INPUT-METHOD is nil, deactivate any current input method."
(if (symbolp input-method)
(if (and input-method (symbolp input-method))
(setq input-method (symbol-name input-method)))
(if (and current-input-method
(not (string= current-input-method input-method)))
(inactivate-input-method))
(inactivate-input-method))
(unless (or current-input-method (null input-method))
(let ((slot (assoc input-method input-method-alist)))
(if (null slot)
@ -907,8 +907,12 @@ or a string."
(read-input-method-name "Input method: " nil t)))
(if (and input-method (symbolp input-method))
(setq input-method (symbol-name input-method)))
(let ((current-input-method input-method))
(read-string prompt initial-input nil nil t)))
(let ((prev-input-method current-input-method))
(unwind-protect
(progn
(activate-input-method input-method)
(read-string prompt initial-input nil nil t))
(activate-input-method prev-input-method))))
;; Variables to control behavior of input methods. All input methods
;; should react to these variables.