summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2024-05-07 09:02:00 +0800
committerPo Lu <luangruo@yahoo.com>2024-05-07 09:02:00 +0800
commitd4d9db8dc6ee20d3c0c1b2e647f40ebf2cc719f3 (patch)
tree63031e3822cfd46d71a726e987ca80e625f3bf5a
parent6583916a058324f857d83af5a716d1142f94758f (diff)
downloademacs-d4d9db8dc6ee20d3c0c1b2e647f40ebf2cc719f3.tar.gz
Disable text-conversion in map-ynp
* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Bind overriding-text-conversion-style to nil around read-event and arrange that the input method be reset.
-rw-r--r--lisp/emacs-lisp/map-ynp.el9
1 files changed, 8 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/map-ynp.el b/lisp/emacs-lisp/map-ynp.el
index b603f2e6d0b..60e572fba30 100644
--- a/lisp/emacs-lisp/map-ynp.el
+++ b/lisp/emacs-lisp/map-ynp.el
@@ -35,6 +35,9 @@
;;; Code:
(declare-function x-popup-dialog "menu.c" (position contents &optional header))
+(declare-function set-text-conversion-style "textconv.c")
+
+(defvar overriding-text-conversion-style)
(defun map-y-or-n-p (prompter actor list &optional help action-alist
no-cursor-in-echo-area)
@@ -168,7 +171,11 @@ The function's value is the number of actions taken."
(key-description (vector help-char)))
(if minibuffer-auto-raise
(raise-frame (window-frame (minibuffer-window))))
- (setq char (read-event))
+ (unwind-protect
+ (let ((overriding-text-conversion-style nil))
+ (set-text-conversion-style text-conversion-style)
+ (setq char (read-event)))
+ (set-text-conversion-style text-conversion-style))
;; Show the answer to the question.
(message "%s(y, n, !, ., q, %sor %s) %s"
prompt user-keys