Function: activate-transient-input-method
activate-transient-input-method is an interactive and byte-compiled
function defined in mule-cmds.el.gz.
Signature
(activate-transient-input-method &optional ARG INTERACTIVE)
Documentation
Select and enable a transient input method for the current buffer.
If default-transient-input-method was not yet defined, prompt for it.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/international/mule-cmds.el.gz
(defun activate-transient-input-method (&optional arg interactive)
"Select and enable a transient input method for the current buffer.
If `default-transient-input-method' was not yet defined, prompt for it."
(interactive "P\np")
(when (or arg (not default-transient-input-method))
(let* ((default (or (car input-method-history) default-input-method))
(input-method
(read-input-method-name
(format-prompt "Transient input method" default)
default t)))
(setq default-transient-input-method input-method)
(when interactive
(customize-mark-as-set 'default-transient-input-method))))
(let* ((clearfun (make-symbol "clear-transient-input-method"))
(exitfun
(lambda ()
(deactivate-transient-input-method)
(remove-hook 'input-method-after-insert-chunk-hook clearfun))))
(fset clearfun (lambda () (funcall exitfun)))
(add-hook 'input-method-after-insert-chunk-hook clearfun)
(setq previous-transient-input-method current-input-method)
(when previous-transient-input-method
(deactivate-input-method))
(activate-input-method default-transient-input-method)
(setq current-transient-input-method default-transient-input-method)
exitfun))