Copyright (C) 2000-2012 |
GNU Info (elisp)Key Binding CommandsCommands for Binding Keys ========================= This section describes some convenient interactive interfaces for changing key bindings. They work by calling `define-key'. People often use `global-set-key' in their init files (Note: Init File) for simple customization. For example, (global-set-key "\C-x\C-\\" 'next-line) or (global-set-key [?\C-x ?\C-\\] 'next-line) or (global-set-key [(control ?x) (control ?\\)] 'next-line) redefines `C-x C-\' to move down a line. (global-set-key [M-mouse-1] 'mouse-set-point) redefines the first (leftmost) mouse button, typed with the Meta key, to set point where you click. Be careful when using non-ASCII text characters in Lisp specifications of keys to bind. If these are read as multibyte text, as they usually will be in a Lisp file (Note: Loading Non-ASCII), you must type the keys as multibyte too. For instance, if you use this: (global-set-key "o"" 'my-function) ; bind o-umlaut or (global-set-key ?o" 'my-function) ; bind o-umlaut and your language environment is multibyte Latin-1, these commands actually bind the multibyte character with code 2294, not the unibyte Latin-1 character with code 246 (`M-v'). In order to use this binding, you need to enter the multibyte Latin-1 character as keyboard input. One way to do this is by using an appropriate input method (Note: Input Methods.). If you want to use a unibyte character in the key binding, you can construct the key sequence string using `multibyte-char-to-unibyte' or `string-make-unibyte' (Note: Converting Representations). - Command: global-set-key key definition This function sets the binding of KEY in the current global map to DEFINITION. (global-set-key KEY DEFINITION) == (define-key (current-global-map) KEY DEFINITION) - Command: global-unset-key key This function removes the binding of KEY from the current global map. One use of this function is in preparation for defining a longer key that uses KEY as a prefix--which would not be allowed if KEY has a non-prefix binding. For example: (global-unset-key "\C-l") => nil (global-set-key "\C-l\C-l" 'redraw-display) => nil This function is implemented simply using `define-key': (global-unset-key KEY) == (define-key (current-global-map) KEY nil) - Command: local-set-key key definition This function sets the binding of KEY in the current local keymap to DEFINITION. (local-set-key KEY DEFINITION) == (define-key (current-local-map) KEY DEFINITION) - Command: local-unset-key key This function removes the binding of KEY from the current local map. (local-unset-key KEY) == (define-key (current-local-map) KEY nil) automatically generated by info2www version 1.2.2.9 |