Next: , Previous: Key Binding Commands, Up: Keymaps   [Contents][Index]


21.11 ¥­¡¼¥Þ¥Ã¥×¤ÎÁöºº

ËÜÀá¤Ç¤Ï¡¢¥Ø¥ë¥×¾ðÊó¤òɽ¼¨¤¹¤ë¤¿¤á¤Ë ¸½ºß¤Î¥­¡¼¥Þ¥Ã¥×¤ò¤¹¤Ù¤ÆÁöºº¤¹¤ë´Ø¿ô¤Ë¤Ä¤¤¤Æ½Ò¤Ù¤Þ¤¹¡£

Function: accessible-keymaps keymap &optional prefix

¤³¤Î´Ø¿ô¤Ï¡¢keymap¤«¤é¡Ê0¸Ä°Ê¾å¤Î¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼¤Ë¤è¤ê¡Ëé¤ì¤ë ¤¹¤Ù¤Æ¤Î¥­¡¼¥Þ¥Ã¥×¤Î¥ê¥¹¥È¤òÊÖ¤¹¡£ ¤½¤ÎÃͤϡ¢(key . map)¤Î·Á¤ÎÍ×ÁǤ«¤éÀ®¤ë Ï¢Áۥꥹ¥È¤Ç¤¢¤ë¡£ ¤³¤³¤Ç¡¢key¤Ï¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼¤Ç¤¢¤ê¡¢ keymapÆâ¤Ç¤Î¤½¤ÎÄêµÁ¤Ïmap¤Ç¤¢¤ë¡£

Ï¢Áۥꥹ¥ÈÆâ¤Ç¤ÎÍ×ÁǤνçÈ֤ϡ¢key¤ÎŤµ¤¬Áý¤¨¤ë½ç¤Ç¤¢¤ë¡£ »ØÄꤷ¤¿¥­¡¼¥Þ¥Ã¥×keymap¤Ï¥×¥ì¥Õ¥£¥Ã¥¯¥¹¤Î¥¤¥Ù¥ó¥È¤Ê¤·¤Ë»²¾È¤Ç¤­¤ë¤Î¤Ç¡¢ ºÇ½é¤ÎÍ×ÁǤϤĤͤË("" . keymap)¤Ç¤¢¤ë¡£

prefix¤òÍ¿¤¨¤ë¾ì¹ç¡¢¤½¤ì¤Ï¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼Îó¤Ç¤¢¤ë¤³¤È¡£ ¤¹¤ë¤È¡¢accessible-keymaps¤Ï¡¢ prefix¤Ç»Ï¤Þ¤ë¥×¥ì¥Õ¥£¥Ã¥¯¥¹¤ËÂбþ¤·¤¿¥µ¥Ö¥Þ¥Ã¥×¤Î¤ß¤ò´Þ¤á¤ë¡£ ¤½¤ì¤é¤ÎÍ×ÁǤϡ¢(accessible-keymaps)¤ÎÃÍ¤ÈÆ±¤¸¤Ë¸«¤¨¤ë¤¬¡¢ °ã¤¤¤Ï¡¢¤¤¤¯¤Ä¤«¤ÎÍ×ÁǤ¬¾Êά¤µ¤ì¤ë¤³¤È¤Ç¤¢¤ë¡£

¤Ä¤®¤ÎÎã¤Ç¤Ï¡¢ÊÖ¤µ¤ì¤¿Ï¢Áۥꥹ¥È¤Ë¤ª¤¤¤Æ¤Ï¡¢ ‘^[’¤Èɽ¼¨¤µ¤ì¤¿¥­¡¼ESC¤Ï¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼¤Ç¤¢¤ê¡¢ ¤½¤ÎÄêµÁ¤ÏÁ¤ʥ­¡¼¥Þ¥Ã¥× (keymap (83 . center-paragraph) (115 . foo))¤Ç¤¢¤ë¤³¤È¤òɽ¤¹¡£

(accessible-keymaps (current-local-map))
⇒(("" keymap 
      (27 keymap   ; Note this keymap for ESC is repeated below.
          (83 . center-paragraph)
          (115 . center-line))
      (9 . tab-to-tab-stop))
   ("^[" keymap 
    (83 . center-paragraph) 
    (115 . foo)))

¤Ä¤®¤ÎÎã¤Ç¤Ï¡¢C-h¤Ï¡¢ Á¤ʥ­¡¼¥Þ¥Ã¥×(keymap (118 . describe-variable)…)¤ò »È¤¦¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼¤Ç¤¢¤ë¡£ Ê̤Υץì¥Õ¥£¥Ã¥¯¥¹C-x 4¤Ï¡¢ ÊÑ¿ôctl-x-4-map¤ÎÃͤǤ⤢¤ë¥­¡¼¥Þ¥Ã¥×¤ò»È¤¦¡£ ¥¤¥Ù¥ó¥Èmode-line¤Ï¡¢ ¥¦¥£¥ó¥É¥¦¤ÎÆÃÊ̤ʲսê¤Ë¤ª¤±¤ë¥Þ¥¦¥¹Áàºî¤òɽ¤¹¤¿¤á¤Î µ¿»÷¥¤¥Ù¥ó¥È¤Î1¤Ä¤Ç¤¢¤ë¡£

(accessible-keymaps (current-global-map))
⇒ (("" keymap [set-mark-command beginning-of-line … 
                   delete-backward-char])
    ("^H" keymap (118 . describe-variable) …
     (8 . help-for-help))
    ("^X" keymap [x-flush-mouse-queue …
     backward-kill-sentence])
    ("^[" keymap [mark-sexp backward-sexp …
     backward-kill-word])
    ("^X4" keymap (15 . display-buffer) …)
    ([mode-line] keymap
     (S-mouse-2 . mouse-split-window-horizontally) …))

¼ÂºÝ¤Ëɽ¼¨¤µ¤ì¤ë¥­¡¼¥Þ¥Ã¥×¤Ï¤³¤ì¤é¤À¤±¤È¤Ï¸Â¤é¤Ê¤¤¡£

Function: where-is-internal command &optional keymap firstonly noindirect

¤³¤Î´Ø¿ô¤Ï¡¢¥³¥Þ¥ó¥Éwhere-is ¡Êsee ¥Ø¥ë¥×µ¡Ç½ in GNU Emacs ¥Þ¥Ë¥å¥¢¥ë¡Ë¤¬»È¤¦ ¥µ¥Ö¥ë¡¼¥Æ¥£¥ó¤Ç¤¢¤ë¡£ ¥­¡¼¥Þ¥Ã¥×¤Ë¤ª¤¤¤Æcommand¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿ ¡ÊǤ°ÕĹ¤Î¡Ë¥­¡¼Îó¤Î¥ê¥¹¥È¤òÊÖ¤¹¡£

°ú¿ôcommand¤ÏǤ°Õ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ê¡¢ ¥­¡¼¥Þ¥Ã¥×¹àÌܤȤÏeq¤ÇÈæ³Ó¤¹¤ë¡£

keymap¤¬nil¤Ç¤¢¤ë¤È¡¢ overriding-local-map¤ò̵»ë ¡Ê¤Ä¤Þ¤ê¡¢¤½¤ÎÃͤÏnil¤È¤ß¤Ê¡Ë¤·¤Æ¡¢ ¸½ºß³èÀ­¤Ê¥­¡¼¥Þ¥Ã¥×¤ò»È¤¦¡£ keymap¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ keymap¤È¥°¥í¡¼¥Ð¥ë¥­¡¼¥Þ¥Ã¥×¤«¤éé¤ì¤ë¥­¡¼¥Þ¥Ã¥×¤ò»È¤¦¡£

Ä̾keymap¤ËÂФ¹¤ë¼°¤Ë¤Ïoverriding-local-map¤ò»È¤¦¤Î¤¬ ºÇÎɤǤ¢¤ë¡£ ¤½¤¦¤¹¤ë¤È¡¢where-is-internal¤ÏÀµ³Î¤Ë³èÀ­¤Ê¥­¡¼¥Þ¥Ã¥×¤òÁöºº¤¹¤ë¡£ ¥°¥í¡¼¥Ð¥ë¥­¡¼¥Þ¥Ã¥×¤Î¤ß¤òÁöºº¤¹¤ë¤Ë¤Ï¡¢ keymap¤È¤·¤Æ(keymap)¡Ê¶õ¤Î¥­¡¼¥Þ¥Ã¥×¡Ë¤òÅϤ¹¡£

firstonly¤¬non-ascii¤Ç¤¢¤ë¤È¡¢ Ìá¤êÃͤϡ¢²Äǽ¤Ê¥­¡¼Îó¤Î¥ê¥¹¥È¤Ç¤Ï¤Ê¤¯¡¢ ºÇ½é¤Ë¤ß¤Ä¤«¤Ã¤¿¥­¡¼Îó¤òɽ¤¹1¤Ä¤Îʸ»úÎó¤Ç¤¢¤ë¡£ firstonly¤¬t¤Ç¤¢¤ë¤È¡¢ ÃͤϺǽé¤Î¥­¡¼Îó¤Ç¤¢¤ë¤¬¡¢ ASCIIʸ»ú¡Ê¤¢¤ë¤¤¤ÏASCIIʸ»ú¤Î¥á¥¿ÊѼï¡Ë¤Î¤ß¤«¤éÀ®¤ë¥­¡¼Îó¤¬ Â¾¤Î¥­¡¼Îó¤è¤êÍ¥À褵¤ì¤ë¡£

noindirect¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ where-is-internal¤Ï´ÖÀܹàÌܤòé¤é¤Ê¤¤¡£ ¤³¤ì¤Ë¤è¤ê¡¢´ÖÀܹàÌܤ½¤Î¤â¤Î¤òõ¤¹¤³¤È¤¬¤Ç¤­¤ë¡£

(where-is-internal 'describe-function)
    ⇒ ("\^hf" "\^hd")
¥³¥Þ¥ó¥É: describe-bindings &optional prefix

¤³¤Î´Ø¿ô¤Ï¡¢¸½ºß¤Î¤¹¤Ù¤Æ¤Î¥­¡¼¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î°ìÍ÷¤òºîÀ®¤·¡¢ ‘*Help*’¤È¤¤¤¦Ì¾Á°¤Î¥Ð¥Ã¥Õ¥¡¤Ëɽ¼¨¤¹¤ë¡£ ¥Æ¥­¥¹¥È¤Ï¥â¡¼¥É¤´¤È¤Ë¤Þ¤È¤á¤é¤ì¡¢ ¥Þ¥¤¥Ê¥â¡¼¥É¡¢¥á¥¸¥ã¡¼¥â¡¼¥É¡¢¥°¥í¡¼¥Ð¥ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î½ç¤Ç¤¢¤ë¡£

prefix¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢¤½¤ì¤Ï¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼¤Ç¤¢¤ë¤³¤È¡£ ¤½¤¦¤¹¤ë¤È¡¢prefix¤Ç»Ï¤Þ¤ë¥­¡¼¤Î¤ß¤Î°ìÍ÷¤òºî¤ë¡£

°ìÍ÷¤Ç¤Ï¡¢¥á¥¿Ê¸»ú¤Ï¡¢ESC¤Ë³¤±¤ÆÂбþ¤¹¤ëÈó¥á¥¿Ê¸»ú¤Çɽ¤¹¡£

Ϣ³¤·¤¿ASCII¥³¡¼¥É¤Î°ìÏ¢¤Îʸ»ú¤¬Æ±¤¸ÄêµÁ¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤½¤ì¤é¤ò¤Þ¤È¤á¤Æ‘firstchar..lastchar’¤Èɽ¼¨¤¹¤ë¡£ ¤³¤Î¾ì¹ç¡¢¤É¤Îʸ»ú¤Ç¤¢¤ë¤«Íý²ò¤¹¤ë¤Ë¤Ï¡¢ ASCII¥³¡¼¥É¤òÃΤäƤ¤¤ëɬÍפ¬¤¢¤ë¡£ ¤¿¤È¤¨¤Ð¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥°¥í¡¼¥Ð¥ë¥­¡¼¥Þ¥Ã¥×¤Ç¤Ï¡¢ ‘SPC.. ~’¤Îʸ»ú¤¬1¹Ô¤Ëɽ¼¨¤µ¤ì¤ë¡£ SPC¤ÏASCII¥³¡¼¥É32¡¢~¤ÏASCII¥³¡¼¥É126¤Ç¤¢¤ê¡¢ ¤½¤Î¤¢¤¤¤À¤Ë¤ÏÉáÄ̤ΰõ»úʸ»ú¡Ê±Ñʸ»ú¡¢¿ô»úʸ»ú¡¢¶çÆÉÅÀʸ»ú¤Ê¤É¡Ë¤¬ ¤¹¤Ù¤Æ´Þ¤Þ¤ì¤ë¡£ ¤³¤ì¤é¤Îʸ»ú¤Ï¤¹¤Ù¤Æself-insert-command¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ë¡£