emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/international/mule-cmds.el, v [EMACS


From: Richard M. Stallman
Subject: [Emacs-diffs] Changes to emacs/lisp/international/mule-cmds.el, v [EMACS_22_BASE]
Date: Thu, 29 Nov 2007 22:34:22 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Branch:         EMACS_22_BASE
Changes by:     Richard M. Stallman <rms>       07/11/29 22:34:21

Index: mule-cmds.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/international/mule-cmds.el,v
retrieving revision 1.310.2.6
retrieving revision 1.310.2.7
diff -u -b -r1.310.2.6 -r1.310.2.7
--- mule-cmds.el        16 Nov 2007 18:22:11 -0000      1.310.2.6
+++ mule-cmds.el        29 Nov 2007 22:34:21 -0000      1.310.2.7
@@ -1492,6 +1492,9 @@
     (customize-mark-as-set 'default-input-method))
   default-input-method)
 
+(defvar toggle-input-method-active nil
+  "Non-nil inside `toggle-input-method'.")
+
 (defun toggle-input-method (&optional arg interactive)
   "Enable or disable multilingual text input method for the current buffer.
 Only one input method can be enabled at any time in a given buffer.
@@ -1511,9 +1514,12 @@
 which marks the variable `default-input-method' as set for Custom buffers."
 
   (interactive "P\np")
+  (if toggle-input-method-active
+      (error "Recursive use of `toggle-input-method'"))
   (if (and current-input-method (not arg))
       (inactivate-input-method)
-    (let ((default (or (car input-method-history) default-input-method)))
+    (let ((toggle-input-method-active t)
+         (default (or (car input-method-history) default-input-method)))
       (if (and arg default (equal current-input-method default)
               (> (length input-method-history) 1))
          (setq default (nth 1 input-method-history)))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]