From 8c8bf7db62af2c80537b5760bea01f7da9712a0e Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Fri, 27 Jul 2018 16:45:03 -0400 Subject: [PATCH] * lisp/simple.el (event-apply-modifier): Map control+[ to C-[ --- lisp/simple.el | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/lisp/simple.el b/lisp/simple.el index 6459531a4ec..8d770478aa9 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -8346,14 +8346,12 @@ LSHIFTBY is the numeric value of this modifier, in keyboard events. PREFIX is the string that represents this modifier in an event type symbol." (if (numberp event) (cond ((eq symbol 'control) - (if (and (<= (downcase event) ?z) - (>= (downcase event) ?a)) - (- (downcase event) ?a -1) - (if (and (<= (downcase event) ?Z) - (>= (downcase event) ?A)) - (- (downcase event) ?A -1) - (logior (lsh 1 lshiftby) event)))) + (if (<= 64 (upcase event) 95) + (- (upcase event) 64) + (logior (lsh 1 lshiftby) event))) ((eq symbol 'shift) + ;; FIXME: Should we also apply this "upcase" behavior of shift + ;; to non-ascii letters? (if (and (<= (downcase event) ?z) (>= (downcase event) ?a)) (upcase event) -- 2.39.2