Next: Meta key does not work in xterm, Previous: Compose Character, Up: Key bindings [Contents][Index]

### 9.12 How do I bind a combination of modifier key and function key?

You can represent modified function keys in vector format by adding prefixes to the function key symbol. For example (from the Emacs documentation):

    (global-set-key [?\C-x right] 'forward-page)

where ‘`?\C-x`’ is the Lisp character constant for the character `C-x`.

You can use the modifier keys `Control`, `Meta`, `Hyper`, `Super`, `Alt`, and `Shift` with function keys. To represent these modifiers, prepend the strings ‘`C-`’, ‘`M-`’, ‘`H-`’, ‘`s-`’, ‘`A-`’, and ‘`S-`’ to the symbol name. Here is how to make `H-M-RIGHT` move forward a word:

    (global-set-key [H-M-right] 'forward-word)

- Not all modifiers are permitted in all situations. `Hyper`, `Super`, and `Alt` are not available on Unix character terminals. Non-ASCII keys and mouse events (e.g., `C-=` and `mouse-1`) also fall under this category.

See Binding keys to commands, for general key binding instructions.