Next: , Previous: Quitting, Up: Command Loop   [Contents][Index]


20.10 Á°ÃÖ¥³¥Þ¥ó¥É°ú¿ô

Emacs¤Î¤Û¤È¤ó¤É¤Î¥³¥Þ¥ó¥É¤Ï¡¢Á°ÃÖ°ú¿ô¡Êprefix argument¡Ë¡¢ ¤Ä¤Þ¤ê¥³¥Þ¥ó¥É¼«¿È¤Î¤Þ¤¨¤Ë»ØÄꤵ¤ì¤¿¿ô¤òÍøÍѤǤ­¤Þ¤¹¡£ ¡ÊÁ°ÃÖ°ú¿ô¤È¥×¥ì¥Õ¥£¥Ã¥¯¥¹¥­¡¼¤òº®Æ±¤·¤Ê¤¤¤³¤È¡£¡Ë Á°ÃÖ°ú¿ô¤Ï¤Ä¤Í¤ËÃͤÇɽ¸½¤µ¤ì¡¢ nil¤Ç¤¢¤ë¤È¸½ºß¤ÏÁ°ÃÖ°ú¿ô¤¬¤Ê¤¤¤³¤È¤òɽ¤·¤Þ¤¹¡£ ³Æ¥³¥Þ¥ó¥É¤Ï¡¢Á°ÃÖ°ú¿ô¤ò»È¤Ã¤Æ¤â¤è¤¤¤·¡¢Ìµ»ë¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£

Á°ÃÖ°ú¿ô¤Ë¤Ï2¤Ä¤Îɽ¸½ÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£ À¸¡Êraw¡Ë¤È¿ôÃÍ¡Ênumeric¡Ë¤Ç¤¹¡£ ¥¨¥Ç¥£¥¿¥³¥Þ¥ó¥É¥ë¡¼¥×¤Ç¤Ï¡¢ÆâÉôŪ¤Ë¤ÏÀ¸¤Îɽ¸½¤ò»È¤¤¡¢ ¤½¤Î¾ðÊó¤òÊÝ»ý¤¹¤ëLispÊÑ¿ô¤â¤½¤Î¤è¤¦¤Ë¤·¤Þ¤¹¤¬¡¢ ¥³¥Þ¥ó¥É¤Ç¤Ï¤É¤Á¤é¤Îɽ¸½¤òÍ׵ᤷ¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£

À¸¤ÎÁ°ÃÖ°ú¿ô¤ÎÃͤˤϤĤ®¤Î²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£

¤¤¤í¤¤¤í¤ÊÁ°ÃÖ°ú¿ô¤Ç¤Ä¤®¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹Îã¤ò¼¨¤·¤Þ¤¹¡£

(defun display-prefix (arg)
  "Display the value of the raw prefix arg."
  (interactive "P")
  (message "%s" arg))

°Ê²¼¤Ï¡¢À¸¤ÎÁ°ÃÖ°ú¿ô¤Çdisplay-prefix¤ò¸Æ¤Ó½Ð¤·¤¿·ë²Ì¤Ç¤¹¡£

        M-x display-prefix  -| nil

C-u     M-x display-prefix  -| (4)

C-u C-u M-x display-prefix  -| (16)

C-u 3   M-x display-prefix  -| 3

M-3     M-x display-prefix  -| 3      ; ¡ÊC-u 3¤ÈƱ¤¸¡Ë

C-u -   M-x display-prefix  -| -      

M--     M-x display-prefix  -| -      ; ¡ÊC-u -¤ÈƱ¤¸¡Ë

C-u - 7 M-x display-prefix  -| -7     

M-- 7   M-x display-prefix  -| -7     ; ¡ÊC-u -7¤ÈƱ¤¸¡Ë

Emacs¤Ï¡¢Á°ÃÖ°ú¿ô¤òÊÝ»ý¤¹¤ë¤¿¤á¤Ë2¤Ä¤ÎÊÑ¿ô¡¢ prefix-arg¤Ècurrent-prefix-arg¤ò»È¤¤¤Þ¤¹¡£ ¾¤Î¥³¥Þ¥ó¥É¸þ¤±¤ËÁ°ÃÖ°ú¿ô¤òÀßÄꤹ¤ëuniversal-argument¤Ê¤É¤Î ¥³¥Þ¥ó¥É¤Ï¡¢Á°ÃÖ°ú¿ô¤òprefix-arg¤ËÊÝ»ý¤·¤Þ¤¹¡£ ÂоÈŪ¤Ë¡¢current-prefix-arg¤Ë¤Ï ¸½ºß¤Î¥³¥Þ¥ó¥É¤ËÂФ·¤ÆÁ°ÃÖ°ú¿ô¤ò±¿¤ÖÌò³ä¤¬¤¢¤ê¡¢ ¤³¤ÎÊÑ¿ô¤ËÀßÄꤷ¤Æ¤â°Ê¸å¤Î¥³¥Þ¥ó¥É¤ËÂФ¹¤ëÁ°ÃÖ°ú¿ô¤Ë¤Ï ¤Ê¤ó¤Î¸ú²Ì¤â¤¢¤ê¤Þ¤»¤ó¡£

Ä̾¥³¥Þ¥ó¥É¤Ï¡¢interactiveÀë¸À¤Ë¤è¤ê¡¢ ¡ÖÀ¸¡×¤«¡Ö¿ôÃ͡פΤ¤¤º¤ì¤Îɽ¸½¤ÎÁ°ÃÖ°ú¿ô¤ò»È¤¦¤«»ØÄꤷ¤Þ¤¹¡£ ¡ÊSee Using Interactive¡£¡Ë ¤¢¤ë¤¤¤Ï¡¢ÊÑ¿ôcurrent-prefix-arg¤Ë¤¢¤ëÁ°ÃÖ°ú¿ô¤ÎÃͤò ´Ø¿ô¤«¤éľÀܸ«¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¤¬¡¢ ¤³¤ì¤Ï¸«Ä̤·¤Î¤è¤¤ÊýË¡¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£

Function: prefix-numeric-value arg

¤³¤Î´Ø¿ô¤Ï¡¢Í­¸ú¤ÊÀ¸¤ÎÁ°ÃÖ°ú¿ô¤ÎÃÍarg¤«¤é¤½¤ì¤ËÅù²Á¤Ê¿ôÃͤòÊÖ¤¹¡£ °ú¿ô¤Ï¡¢¥·¥ó¥Ü¥ë¡¢¿ô¡¢¥ê¥¹¥È¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ë¡£ ¤½¤ì¤¬nil¤Ç¤¢¤ë¤È¡¢Ìá¤êÃͤÏ1¤Ç¤¢¤ë¡£ -¤Ç¤¢¤ë¤È¡¢Ìá¤êÃͤÏ-1¤Ç¤¢¤ë¡£ ¿ô¤Ç¤¢¤ë¤È¡¢¤½¤Î¿ô¤òÊÖ¤¹¡£ ¥ê¥¹¥È¤Ç¤¢¤ë¤È¡¢¥ê¥¹¥È¤Î¡Ê¿ô¤Ç¤¢¤ë¤Ï¤º¤Î¡ËCAR¤òÊÖ¤¹¡£

Variable: current-prefix-arg

¤³¤ÎÊÑ¿ô¤Ï¡¢¸½ºß¤Î¥³¥Þ¥ó¥É¤ËÂФ¹¤ëÀ¸¤ÎÁ°ÃÖ°ú¿ô¤òÊÝ»ý¤¹¤ë¡£ ¥³¥Þ¥ó¥É¤¬Ä¾Àܤ³¤ÎÊÑ¿ô¤òÄ´¤Ù¤Æ¤â¤è¤¤¤¬¡¢ Á°ÃÖ°ú¿ô¤ò»²¾È¤¹¤ëÉáÄ̤ÎÊýË¡¤Ï(interactive "P")¤ò»È¤¦¤³¤È¤Ç¤¢¤ë¡£

Variable: prefix-arg

¤³¤ÎÊÑ¿ô¤ÎÃͤϡ¢¤Ä¤®¤ÎÊÔ½¸¥³¥Þ¥ó¥É¸þ¤±¤ÎÀ¸¤ÎÁ°ÃÖ°ú¿ô¤Ç¤¢¤ë¡£ ¸å³¤Î¥³¥Þ¥ó¥É¸þ¤±¤ÎÁ°ÃÖ°ú¿ô¤ò»ØÄꤹ¤ëuniversal-argument¤Ê¤É¤Î ¥³¥Þ¥ó¥É¤Ï¡¢¤³¤ÎÊÑ¿ô¤ËÀßÄꤹ¤ë¤³¤È¤Çưºî¤¹¤ë¡£

Variable: last-prefix-arg

¤Þ¤¨¤Î¥³¥Þ¥ó¥É¤Ç»È¤ï¤ì¤¿À¸¤ÎÁ°ÃÖ°ú¿ô¤ÎÃÍ¡£

¤Ä¤®¤Î¥³¥Þ¥ó¥É¤Ï¡¢¸å³¤Î¥³¥Þ¥ó¥É¸þ¤±¤ÎÁ°ÃÖ°ú¿ô¤òÀßÄꤹ¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ ¤½¤ì°Ê³°¤ÎÌÜŪ¤Ë¤Ï¸Æ¤Ð¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

¥³¥Þ¥ó¥É: universal-argument

¤³¤Î¥³¥Þ¥ó¥É¤ÏÆþÎϤòÆÉ¤ß¼è¤ê¡¢¸å³¤Î¥³¥Þ¥ó¥É¸þ¤±¤ÎÁ°ÃÖ°ú¿ô¤ò»ØÄꤹ¤ë¡£ ¤Ê¤Ë¤ò¤·¤Æ¤¤¤ë¤«Íý²ò¤·¤Æ¤¤¤Ê¤¤¸Â¤ê¡¢ÆÉ¼Ô¼«¿È¤Ç¤³¤Î¥³¥Þ¥ó¥É¤ò¸Æ¤Ð¤Ê¤¤¤³¤È¡£

¥³¥Þ¥ó¥É: digit-argument arg

¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¸å³¤Î¥³¥Þ¥ó¥É¸þ¤±¤ÎÁ°ÃÖ°ú¿ô¤ËÄɲ乤롣 °ú¿ôarg¤Ï¡¢¤³¤Î¥³¥Þ¥ó¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤Þ¤¨¤ÎÀ¸¤ÎÁ°ÃÖ°ú¿ô¤Ç¤¢¤ê¡¢ Á°ÃÖ°ú¿ô¤ò¹¹¿·¤¹¤ë·×»»¤Ë»È¤ï¤ì¤ë¡£ ¤Ê¤Ë¤ò¤·¤Æ¤¤¤ë¤«Íý²ò¤·¤Æ¤¤¤Ê¤¤¸Â¤ê¡¢ÆÉ¼Ô¼«¿È¤Ç¤³¤Î¥³¥Þ¥ó¥É¤ò¸Æ¤Ð¤Ê¤¤¤³¤È¡£

¥³¥Þ¥ó¥É: negative-argument arg

¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¸å³¤Î¥³¥Þ¥ó¥É¸þ¤±¤Î¿ôÃÍÁ°ÃÖ°ú¿ô¤ËÄɲ乤롣 °ú¿ôarg¤Ï¡¢¤³¤Î¥³¥Þ¥ó¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤Þ¤¨¤ÎÀ¸¤ÎÁ°ÃÖ°ú¿ô¤Ç¤¢¤ê¡¢ ¤½¤ÎÃͤÎÉ乿¤òÊѤ¨¤Æ¿·¤¿¤ÊÁ°ÃÖ°ú¿ô¤È¤¹¤ë¡£ ¤Ê¤Ë¤ò¤·¤Æ¤¤¤ë¤«Íý²ò¤·¤Æ¤¤¤Ê¤¤¸Â¤ê¡¢ÆÉ¼Ô¼«¿È¤Ç¤³¤Î¥³¥Þ¥ó¥É¤ò¸Æ¤Ð¤Ê¤¤¤³¤È¡£