Next: Key Binding Commands, Previous: Functions for Key Lookup, Up: Keymaps [Contents][Index]
¥¡¼¤òºÆ¥Ð¥¤¥ó¥É¤¹¤ë¤Ë¤Ï¡¢¥¡¼¥Þ¥Ã¥×¤Ë¤ª¤±¤ëÅö³º¹àÌܤòÊѹ¹¤·¤Þ¤¹¡£
¥°¥í¡¼¥Ð¥ë¥¡¼¥Þ¥Ã¥×¤Ç¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÊѹ¹¤¹¤ë¤È¡¢
¤½¤ÎÊѹ¹¤Ï¤¹¤Ù¤Æ¤Î¥Ð¥Ã¥Õ¥¡¤Ç¸ú²Ì¤òȯ´ø¤·¤Þ¤¹
¡Ê¤¿¤À¤·¡¢¥í¡¼¥«¥ë¥¡¼¥Þ¥Ã¥×¤Ç¥°¥í¡¼¥Ð¥ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò
±£¤·¤Æ¤¤¤ë¥Ð¥Ã¥Õ¥¡¤Ç¤ÏľÀܤθú²Ì¤Ï¤Ê¤¤¡Ë¡£
¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤Î¥í¡¼¥«¥ë¥¡¼¥Þ¥Ã¥×¤ÇÊѹ¹¤¹¤ë¤È¡¢
Ä̾Ʊ¤¸¥á¥¸¥ã¡¼¥â¡¼¥É¤ò»È¤Ã¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥Ð¥Ã¥Õ¥¡¤Ë±Æ¶Á¤·¤Þ¤¹¡£
´Ø¿ôglobal-set-key
¤älocal-set-key
¤Ï¡¢
¤³¤ì¤é¤ÎÁàºî¤ò¹Ô¤¦¤¿¤á¤ÎÊØÍø¤Ê¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ç¤¹
¡Êsee Key Binding Commands¡Ë¡£
¤è¤êÈÆÍѤδؿôdefine-key
¤ò»È¤¦¤³¤È¤â¤Ç¤¤Þ¤¹¤¬¡¢
Êѹ¹ÂоݤΥ¡¼¥Þ¥Ã¥×¤òÌÀ¼¨¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¥¡¼Îó¤ÎºÆ¥Ð¥¤¥ó¥É¤ò½ñ¤¯¤È¤¤Ë¤Ï¡¢
¥³¥ó¥È¥í¡¼¥ëʸ»ú¤ä¥á¥¿Ê¸»ú¸þ¤±¤Î
ÆÃÊ̤ʥ¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤ò»È¤¦¤Î¤¬¤è¤¤¤Ç¤¹¡Êsee String Type¡Ë¡£
¹½Ê¸‘\C-’¤Ï¸å³¤Îʸ»ú¤¬¥³¥ó¥È¥í¡¼¥ëʸ»ú¤Ç¤¢¤ë¤³¤È¡¢
¹½Ê¸‘\M-’¤Ï¸å³¤Îʸ»ú¤¬¥á¥¿Ê¸»ú¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
¤·¤¿¤¬¤Ã¤Æ¡¢Ê¸»úÎó"\M-x"
¤Ïñ°ì¤ÎM-x¤ò´Þ¤à¤ÈÆÉ¤Þ¤ì¡¢
"\C-f"
¤Ïñ°ì¤ÎC-f¤ò´Þ¤à¤ÈÆÉ¤Þ¤ì¡¢
"\M-\C-x"
¤ä"\C-\M-x"
¤Ï¤¤¤º¤ì¤âñ°ì¤ÎC-M-x¤ò
´Þ¤à¤ÈÆÉ¤Þ¤ì¤Þ¤¹¡£
Ʊ¤¸¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤Ï¡¢
¥Ù¥¯¥È¥ë¤Ç¤â»È¤¨¡¢Ê¸»úÎ󤬵ö¤µ¤ì¤Ê¤¤Â¾¤Î¾ìÌ̤Ǥâ»È¤¨¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢‘[?\C-\H-x home]’¤Ç¤¹¡£
See Character Type¡£
¥¡¼¤òÄêµÁ¤·¤¿¤êõº÷¤¹¤ë´Ø¿ô¤Ç¤Ï¡¢
¥Ù¥¯¥È¥ë¤Çɽ¤·¤¿¥¡¼ÎóÆâ¤Î¥¤¥Ù¥ó¥È·¿¤ËÂФ·¤ÆÊ̤ι½Ê¸¡¢
¤Ä¤Þ¤ê¡¢½¤¾þ»Ò̾¤È1¤Ä¤Î´ðËÜ¥¤¥Ù¥ó¥È¡Êʸ»ú¤ä¥Õ¥¡¥ó¥¯¥·¥ç¥ó¥¡¼Ì¾¡Ë
¤«¤éÀ®¤ë¥ê¥¹¥È¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢(control ?a)
¤Ï?\C-a
¤ËÅù²Á¤Ç¤¢¤ê¡¢
(hyper control left)
¤ÏC-H-left
¤ËÅù²Á¤Ç¤¹¡£
¤³¤Î¤è¤¦¤Ê¥ê¥¹¥È¤ÎÍøÅÀ¤Î1¤Ä¤Ï¡¢
¥³¥ó¥Ñ¥¤¥ëºÑ¤ß¤Î¥Õ¥¡¥¤¥ë¤Ë½¤¾þ¥Ó¥Ã¥È¤Î¿ôÃͤ¬¸½¤ì¤Ê¤¤¤³¤È¤Ç¤¹¡£
°Ê²¼¤Î´Ø¿ô¤Ç¤Ï¡¢keymap¤¬¥¡¼¥Þ¥Ã¥×¤Ç¤Ê¤«¤Ã¤¿¤ê¡¢ key¤¬¥¡¼Îó¤òɽ¤¹Ê¸»úÎó¤ä¥Ù¥¯¥È¥ë¤Ç¤Ê¤¤¤È¡¢¥¨¥é¡¼¤òÄÌÃΤ·¤Þ¤¹¡£ ¥ê¥¹¥È¤Ç¤¢¤ë¥¤¥Ù¥ó¥È¤Î¾Êά·Á¤È¤·¤Æ¥¤¥Ù¥ó¥È·¿¡Ê¥·¥ó¥Ü¥ë¡Ë¤ò»È¤¨¤Þ¤¹¡£
¤³¤Î´Ø¿ô¤Ï¡¢¥¡¼¥Þ¥Ã¥×keymap¤Ë¤ª¤¤¤Æ
¥¡¼key¤ËÂФ¹¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀßÄꤹ¤ë¡£
¡Êkey¤¬Ê£¿ô¥¤¥Ù¥ó¥È¤Î¾ì¹ç¡¢
keymap¤«¤éé¤Ã¤¿Ê̤Υ¡¼¥Þ¥Ã¥×¤¬¼ÂºÝ¤Ë¤ÏÊѹ¹¤µ¤ì¤ë¡£¡Ë
°ú¿ôbinding¤ÏǤ°Õ¤ÎLisp¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë¤¬¡¢
¤¢¤ë¼ï¤Î·¿¤Î¤â¤Î¤À¤±¤¬°ÕÌ£¤ò»ý¤Ä¡£
¡Ê°ÕÌ£¤Î¤¢¤ë·¿¤Î°ìÍ÷¤Ë¤Ä¤¤¤Æ¤Ï¡¢Key Lookup¤ò»²¾È¡£¡Ë
define-key
¤¬ÊÖ¤¹ÃͤÏbinding¤Ç¤¢¤ë¡£
key¤Î¤ª¤Î¤ª¤Î¤Î¥×¥ì¥Õ¥£¥Ã¥¯¥¹¤Ï¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥¡¼¤Ç¤¢¤ë
¡Ê¥¡¼¥Þ¥Ã¥×¤Ë¤¢¤ë¡Ë¤«Ì¤ÄêµÁ¤Ç¤¢¤ë¤³¤È¡£
¤µ¤â¤Ê¤±¤ì¤Ð¡¢¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£
key¤Î¥×¥ì¥Õ¥£¥Ã¥¯¥¹¤Ë̤ÄêµÁ¤Ê¤â¤Î¤¬¤¢¤ë¤È¡¢
define-key
¤ÏÅö³º¥×¥ì¥Õ¥£¥Ã¥¯¥¹¤ò¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥¡¼¤ÈÄêµÁ¤·¡¢
key¤Î»Ä¤ê¤ÎÉôʬ¤ò»ØÄê¤É¤ª¤ê¤ËÄêµÁ¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡£
keymap¤Ëkey¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬¤Ê¤±¤ì¤Ð¡¢ ¿·¤¿¤Ê¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òkeymap¤ÎÀèÆ¬¤ËÄɲ乤롣 ¥¡¼¥Þ¥Ã¥×Æâ¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î½ç½ø¤Ï¿¤¯¤Î¾ì¹ç´Ø·¸¤Ê¤¤¤¬¡¢ ¥á¥Ë¥å¡¼¥¡¼¥Þ¥Ã¥×¤Ç¤Ï°ÕÌ£¤ò»ý¤Ä¡Êsee Menu Keymaps¡Ë¡£
Á¤ʥ¡¼¥Þ¥Ã¥×¤òºîÀ®¤·¡¢¤½¤³¤Ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òºî¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£
(setq map (make-sparse-keymap)) ⇒ (keymap)
(define-key map "\C-f" 'forward-char) ⇒ forward-char
map ⇒ (keymap (6 . forward-char))
;; C-xÍѤÎÁ¤ʥµ¥Ö¥Þ¥Ã¥×¤òºî¤ê¡¢ ;; ¤½¤³¤Ëf¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÆþ¤ì¤ë (define-key map "\C-xf" 'forward-word) ⇒ forward-word
map ⇒ (keymap (24 keymap ; C-x (102 . forward-word)) ; f (6 . forward-char)) ; C-f
;; C-p¤òctl-x-map
¤Ë¥Ð¥¤¥ó¥É¤¹¤ë (define-key map "\C-p" ctl-x-map) ;;ctl-x-map
⇒ [nil … find-file … backward-kill-sentence]
;; ctl-x-map
¤Ç¡¢C-f¤òfoo
¤Ë¥Ð¥¤¥ó¥É¤¹¤ë
(define-key map "\C-p\C-f" 'foo)
⇒ 'foo
map
⇒ (keymap ; foo
¤Ïctl-x-map
¤ÎÃæ¤Ë¤¢¤ë
(16 keymap [nil … foo … backward-kill-sentence])
(24 keymap
(102 . forward-word))
(6 . forward-char))
C-p C-f¤ËÂФ¹¤ë¿·¤·¤¤¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢
¼ÂºÝ¤Ë¤Ïctl-x-map
¤Î¹àÌܤòÊѹ¹¤·¤Æ¤¤¤Æ¡¢
¤³¤ì¤Ë¤Ï¡¢C-p C-f¤È¥Ç¥Õ¥©¥ë¥È¤Î¥°¥í¡¼¥Ð¥ë¥¡¼¥Þ¥Ã¥×Æâ¤Î
C-x C-f¤ÎξÊý¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÊѹ¹¤¹¤ë¸ú²Ì¤¬¤¢¤ë
¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤Î´Ø¿ô¤Ï¡¢keymapÆâ¤Îolddef¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿¥¡¼¤Î
olddef¤ònewdef¤ËÃÖ¤´¹¤¨¤ë¡£
¤¤¤¤¤«¤¨¤ë¤È¡¢olddef¤Ë½Ð²ñ¤¦¤¿¤Ó¤Ë¤½¤ì¤ònewdef¤ËÃÖ¤´¹¤¨¤ë¡£
´Ø¿ô¤Ïnil
¤òÊÖ¤¹¡£
¤¿¤È¤¨¤Ð¡¢Emacs¤Îɸ½à¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¢¤ë¤È¡¢ ¤Ä¤®¤ÎÎã¤ÏC-x C-f¤òºÆÄêµÁ¤¹¤ë¡£
(substitute-key-definition 'find-file 'find-file-read-only (current-global-map))
oldmap¤¬nil
°Ê³°¤Ç¤¢¤ë¤È¡¢
¤½¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ë¤è¤Ã¤Æ¤É¤Î¥¡¼¤òºÆ¥Ð¥¤¥ó¥É¤¹¤ë¤«¤ò·èÄꤹ¤ë¡£
ºÆ¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ïkeymap¤Ç¹Ô¤¤¡¢oldmap¤Ç¤Ï¤Ê¤¤¡£
¤Ä¤Þ¤ê¡¢Ê̤Υ¡¼¥Þ¥Ã¥×Æâ¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ÎÀ©¸æ¤Î¤â¤È¤Ë¡¢
¥¡¼¥Þ¥Ã¥×¤òÊѹ¹¤Ç¤¤ë¡£
¤¿¤È¤¨¤Ð¡¢
(substitute-key-definition 'delete-backward-char 'my-funny-delete my-map global-map)
¤Ç¤Ï¡¢¥°¥í¡¼¥Ð¥ë¤Ë¤Ïɸ½à¤Îºï½ü¥³¥Þ¥ó¥É¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ë¥¡¼¤ËÂФ·¤Æ¤Ï¡¢
my-map
¤Ç¤ÏÆÃÊ̤ʺï½ü¥³¥Þ¥ó¥É¤Ë¤¹¤ë¡£
Êѹ¹Á°¸å¤Î¥¡¼¥Þ¥Ã¥×¤ò°Ê²¼¤Ë¼¨¤¹¡£
(setq map '(keymap (?1 . olddef-1) (?2 . olddef-2) (?3 . olddef-1))) ⇒ (keymap (49 . olddef-1) (50 . olddef-2) (51 . olddef-1))
(substitute-key-definition 'olddef-1 'newdef map) ⇒ nil
map ⇒ (keymap (49 . newdef) (50 . olddef-2) (51 . newdef))
¤³¤Î´Ø¿ô¤Ï¡¢´°Á´¤Ê¥¡¼¥Þ¥Ã¥×keymap¤ÎÆâÍÆ¤òÊѹ¹¤·¡¢
¤¹¤Ù¤Æ¤Î°õ»úʸ»ú¤ò̤ÄêµÁ¤Ë¤¹¤ë¡£
¤è¤êÀµ³Î¤Ë¤Ï¡¢¤½¤ì¤é¤Ë¥³¥Þ¥ó¥Éundefined
¤ò¥Ð¥¤¥ó¥É¤¹¤ë¡£
¤³¤ì¤Ë¤è¤ê¡¢Ä̾ï¤Î¥Æ¥¥¹¥È¤ÎÁÞÆþ¤òÉÔ²Äǽ¤Ë¤¹¤ë¡£
suppress-keymap
¤Ïnil
¤òÊÖ¤¹¡£
nodigits¤¬nil
¤Ç¤¢¤ë¤È¡¢
suppress-keymap
¤Ï¡¢
¿ô»úʸ»ú¤Ç¤Ïdigit-argument
¤ò¼Â¹Ô¤·¡¢
-¤Ç¤Ïnegative-argument
¤ò¼Â¹Ô¤¹¤ë¤è¤¦¤ËÄêµÁ¤¹¤ë¡£
¤µ¤â¤Ê¤±¤ì¤Ð¡¢¤½¤ì¤é¤â¾¤Î°õ»úʸ»ú¤ÈƱÍͤË̤ÄêµÁ¤Ë¤¹¤ë¡£
´Ø¿ôsuppress-keymap
¤Ï¡¢
yank
¤äquoted-insert
¤Ê¤É¤Î¥³¥Þ¥ó¥É¤òÍÞÀ©¤·¤Ê¤¤¤Î¤Ç¡¢
¥Ð¥Ã¥Õ¥¡¤òÊѹ¹ÉÔ²Äǽ¤Ë¤¹¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£
¥Ð¥Ã¥Õ¥¡¤ÎÊѹ¹¤ò¶Ø»ß¤¹¤ë¤Ë¤Ï¡¢¥Ð¥Ã¥Õ¥¡¤òÆÉ¤ß½Ð¤·ÀìÍѤˤ¹¤ë
¡Êsee Read Only Buffers¡Ë¡£
¤³¤Î´Ø¿ô¤Ïkeymap¤òÊѹ¹¤¹¤ë¤¿¤á¡¢
ÆÉ¼Ô¤Ï¡¢Ä̾¿·¤¿¤ËºîÀ®¤·¤¿¥¡¼¥Þ¥Ã¥×¤ËÂФ·¤Æ»È¤¦¤Ç¤¢¤í¤¦¡£
¤¢¤ëÌÜŪ¤Ç»ÈÍÑÃæ¤Î´û¸¤Î¥¡¼¥Þ¥Ã¥×¤òÁàºî¤¹¤ë¤È¡¢
ÌäÂê¤ò°ú¤µ¯¤³¤¹¤³¤È¤¬¤¢¤ë¡£
¤¿¤È¤¨¤Ð¡¢global-map
¤ËŬÍѤ¹¤ë¤ÈEmacs¤ò¤Û¤È¤ó¤É»ÈÍÑÉÔǽ¤Ë¤·¤Æ¤·¤Þ¤¦¡£
¿¤¯¤Î¾ì¹ç¡¢¥Æ¥¥¹¥È¤ÎÁÞÆþ¤¬É¬Íפʤ¯¥Ð¥Ã¥Õ¥¡¤òÆÉ¤ß½Ð¤·ÀìÍѤǻȤ¦
rmail¤ädired¤Ê¤É¤Î¥â¡¼¥É¤Î¥í¡¼¥«¥ë¥¡¼¥Þ¥Ã¥×¤Î½é´ü²½¤Ë
suppress-keymap
¤ò»È¤¦¡£
¥Õ¥¡¥¤¥ëemacs/lisp/dired.el¤«¤é»ý¤Ã¤Æ¤¤¿Îã¤ò¼¨¤¹¡£
¤³¤ì¤Ï¡¢dired¥â¡¼¥ÉÍÑ¤Î¥í¡¼¥«¥ë¥¡¼¥Þ¥Ã¥×¤ÎÀßÄêÊýË¡¤Ç¤¢¤ë¡£
(setq dired-mode-map (make-keymap)) (suppress-keymap dired-mode-map) (define-key dired-mode-map "r" 'dired-rename-file) (define-key dired-mode-map "\C-d" 'dired-flag-file-deleted) (define-key dired-mode-map "d" 'dired-flag-file-deleted) (define-key dired-mode-map "v" 'dired-view-file) (define-key dired-mode-map "e" 'dired-find-file) (define-key dired-mode-map "f" 'dired-find-file) …
Next: Key Binding Commands, Previous: Functions for Key Lookup, Up: Keymaps [Contents][Index]