I've noticed commands like M-> (end-of-buffer) and M-S-<right arrow> (org-meta-right) aren't being recognized by Emacs. This was confirmed by describing key bindings using C-h k, which showed function assigned to M-..

I'm using stock Emacs 24.3 (gui) on an up-to-date Arch Linux system running the latest version of Xorg (rootless). The issue is persistent across window managers, so I don't think it is a window manager issue. Also, the only modifications of made to my key map are:

setxkbmap -option ctrl:nocaps
setxkbmap -option terminate:ctrl_alt_bksp

I used key-mon to confirm that M-S- could be recognized by X. It appeared that it could. However, I also installed conkeror and found that it too wouldn't receive the key combination, so I think it must be a problem with my X server.

What else can I try to resolve this issue?

Typing xmodmap -pke reveals these NoSymbol regions of my keymap. Could they be the culprit?

keycode  36 = Return NoSymbol Return
keycode  37 = Control_L NoSymbol Control_L

Using the command:

setxkbmap -print -verbose 10

gives the following output:

    Setting verbose level to 10
    locale is C
    Trying to load rules file ./rules/evdev...
    Trying to load rules file /usr/share/X11/xkb/rules/evdev...
    Applied rules from evdev:
    rules:      evdev
    model:      thinkpad
    layout:     us
    options:    terminate:ctrl_alt_bksp,ctrl:nocaps,grp:alt_shift_toggle
    Trying to build keymap using the following components:
    keycodes:   evdev+aliases(qwerty)
    types:      complete
    compat:     complete
    symbols:    pc+us+inet(evdev)+group(alt_shift_toggle)+ctrl(nocaps)+terminate(ctrl_alt_bksp)
    geometry:   thinkpad(us)
    xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)" };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include   "pc+us+inet(evdev)+group(alt_shift_toggle)+ctrl(nocaps)+terminate(ctrl_alt_bksp)" };
        xkb_geometry  { include "thinkpad(us)"  };
  • What do you mean by unrecognized? If you type C-h k M-s-<right> and you get the message M-s-<right> is undefined, then emacs recognizes the keybinding but it's not bound to any command. Use local/global-set-key to bind it. M-s-<right> is unbound on emacs 24.3.1 (in org mode) for me too. M-> should work out of the box, but maybe it's easier to just define it instead of tracking down whats wrong. – snowape Sep 2 '14 at 19:03
  • What happens if you press these keys in Emacs? What happens if you press these keys in xev? – Gilles 'SO- stop being evil' Sep 2 '14 at 22:27
  • see updates. I did try defining M-> as well, but Emacs still wouldn't let me type it. – wdkrnls Sep 3 '14 at 1:29
  • Note, that by S I mean shift, not super which I denote by a lowercase s. M-S-<right> should be bound to the aptly named (org-shiftmetaright) and it is on my copy of Emacs 24.3 on CentOS 6.3 at work. – wdkrnls Sep 3 '14 at 13:48
  • Another example of a key binding I can't reach is M-$ such as for flyspell-mode. – wdkrnls Sep 6 '14 at 2:34

grp:alt_shift_toggle was somehow added to my Xorg configuration. Removing the line from 10-keyboard.conf and restarting X removed the undesired behavior.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.