[OS X Emacs] S-tab incorrety translated to C-y

David Reitter david.reitter at gmail.com
Tue May 22 18:11:37 EDT 2012

On May 22, 2012, at 5:42 PM, Gracjan Polak wrote:

> local-function-key-map contains this erraneus entry:
> (S-tab .
>        [25])

> Effect: S-tab is translated into C-y and calls 'yank'.
> Something somewhere adds a bad entry to local-function-key-map. How to find this
> bug?

I suspected it would be in lisp/term and just used "grep" to find this in ns-win.el:

> ;; These tell read-char how to convert these special chars to ASCII.
> (put 'S-tab 'ascii-character (logior 16 ?\t))
> (defvar ns-alternatives-map
>   (let ((map (make-sparse-keymap)))
>     ;; Map certain keypad keys into ASCII characters
>     ;; that people usually expect.
>     (define-key map [S-tab] [25])
>     (define-key map [M-backspace] [?\M-\d])
>     (define-key map [M-delete] [?\M-\d])
>     (define-key map [M-tab] [?\M-\t])
>     (define-key map [M-linefeed] [?\M-\n])
>     (define-key map [M-clear] [?\M-\C-l])
>     (define-key map [M-return] [?\M-\C-m])
>     (define-key map [M-escape] [?\M-\e])
>     map)
>   "Keymap of alternative meanings for some keys under Nextstep.")

It seems to be an Emacs 23 thing, since in 24, ns-alternatives-map just maps it to `backtab' as you suggest.

If you send me a patch, I'll happily add it to Aquamacs 2.x for the next release.

http://aquamacs.org -- Aquamacs: Emacs on Mac OS X
http://aquamacs.org/donate -- Could we help you? Return the favor and support the Aquamacs Project!

More information about the MacOSX-Emacs mailing list