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):
emacs-lisp
(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:
emacs-lisp
(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 How do I bind keys (including function keys) to commands?, for general key binding instructions.