Next: , Previous: Using Edebug, Up: Edebug   [Contents][Index]


17.2.2 edebug¸þ¤±¤Î½èÃÖ

Lisp¥³¡¼¥É¤Î¥Ç¥Ð¥Ã¥°¤Ëedebug¤ò»È¤¦¤¿¤á¤Ë¤Ï¡¢ ¥³¡¼¥É¤ò¤Þ¤º½èÃÖ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¥³¡¼¥É¤ò½èÃÖ¤¹¤ë¤È¡¢Å¬Åö¤Ê²Õ½ê¤Çedebug¤òµ¯Æ°¤¹¤ëÄɲäΥ³¡¼¥É¤òÁÞÆþ¤·¤Þ¤¹¡£

¤¤¤Ã¤¿¤óedebug¤ò¥í¡¼¥É¤¹¤ë¤È¡¢ ¥³¥Þ¥ó¥ÉC-M-x¡Êeval-defun¡Ë¤ÏºÆÄêµÁ¤µ¤ì¤Þ¤¹¡£ ÄêµÁÆâ¤ÇÁ°ÃÖ°ú¿ô¤ò»ØÄꤷ¤Æµ¯Æ°¤¹¤ë¤È ÄêµÁ¤òɾ²Á¤¹¤ë¤Þ¤¨¤Ë½èÃÖ¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ ¡Ê¥½¡¼¥¹¥³¡¼¥É¼«ÂΤÏÊѹ¹¤·¤Ê¤¤¡£¡Ë ÊÑ¿ôedebug-all-defs¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ Á°ÃÖ°ú¿ô¤Î°ÕÌ£¤òµÕ¤Ë¤·¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢Á°ÃÖ°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¸Â¤ê¡¢ C-M-x¤Ï´Ø¿ôÄêµÁ¤ò½èÃÖ¤·¤Þ¤¹¡£ ÊÑ¿ôedebug-all-defs¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏnil¤Ç¤¹¡£ ¥³¥Þ¥ó¥ÉM-x edebug-all-defs¤ÏÊÑ¿ôedebug-all-defs¤ÎÃͤò ¥È¥°¥ë¤·¤Þ¤¹¡£

edebug-all-defs¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ ¥³¥Þ¥ó¥Éeval-region¡¢eval-current-buffer¡¢eval-buffer¤â ¤½¤ì¤é¤¬É¾²Á¤¹¤ëÄêµÁ¤ò½èÃÖ¤·¤Þ¤¹¡£ ƱÍͤˡ¢edebug-all-forms¤Ï¡¢ ÄêµÁ°Ê³°¤Î¥Õ¥©¡¼¥à¤Ç¤¢¤Ã¤Æ¤âeval-region¤¬ Ǥ°Õ¤Î¥Õ¥©¡¼¥à¤ò½èÃÖ¤¹¤ë¤«¤É¤¦¤«À©¸æ¤·¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢¥ß¥Ë¥Ð¥Ã¥Õ¥¡¤Ç¤Î¥í¡¼¥É¤äɾ²Á¤Ë¤ÏŬÍѤµ¤ì¤Þ¤»¤ó¡£ ¥³¥Þ¥ó¥ÉM-x edebug-all-forms¤Ï¤³¤Î¥ª¥×¥·¥ç¥ó¤ò¥È¥°¥ë¤·¤Þ¤¹¡£

Ê̤Υ³¥Þ¥ó¥ÉM-x edebug-eval-top-level-form¤Ï¡¢ edebug-all-defs¤Èedebug-all-forms¤ÎÃͤ˴ؤï¤é¤º Ǥ°Õ¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤Î¥Õ¥©¡¼¥à¤ò½èÃÖ¤¹¤ë¤¿¤á¤Ë»È¤¨¤Þ¤¹¡£

edebug¤¬Æ°ºîÃæ¤Ï¡¢ ¥³¥Þ¥ó¥ÉI¡Êedebug-instrument-callee¡Ë¤Ç¡¢ ¥Ý¥¤¥ó¥È¤Î¤¦¤·¤í¤Î¥Õ¥©¡¼¥à¤«¤é¸Æ¤Ð¤ì¤ë´Ø¿ô¤ä¥Þ¥¯¥í¤ÎÄêµÁ¤ò ½èÃֺѤߤǤʤ±¤ì¤Ð½èÃ֤Ǥ­¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢edebug¤¬Åö³º´Ø¿ô¤Î¥½¡¼¥¹¤òõ¤»¤ë¾ì¹ç¤Ë¤Î¤ß²Äǽ¤Ç¤¹¡£ edebug¤ò¥í¡¼¥É¸å¤Ë¤Ï¡¢ eval-region¤Ï¡¢½èÃÖ¤·¤Æ¤¤¤Ê¤¤¤â¤Î¤â´Þ¤á¤Æ¡¢ ɾ²Á¤·¤¿³ÆÄêµÁ¤Î°ÌÃÖ¤òµ­Ï¿¤·¤Æ¤¤¤Þ¤¹¡£ ´Ø¿ô¤ò½èÃÖ¸å¤Ë¸Æ¤Ó½Ð¤·¤Æ¥¹¥Æ¥Ã¥×¼Â¹Ô¤¹¤ë ¥³¥Þ¥ó¥Éi¡Êsee Jumping¡Ë¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

edebug¤Ï¡¢É¸½à¤Î¥¹¥Ú¥·¥ã¥ë¥Õ¥©¡¼¥à¤¹¤Ù¤Æ¡¢ ¼°¤ò°ú¿ô¤È¤¹¤ëinteractive¥Õ¥©¡¼¥à¡¢ ̵̾¥é¥à¥À¼°¡¢Â¾¤ÎÄêµÁ¥Õ¥©¡¼¥à¤ò¤É¤Î¤è¤¦¤Ë½èÃÖ¤¹¤ë¤«¤ï¤«¤Ã¤Æ¤¤¤Þ¤¹¡£ edebug¤Ï¡¢¥Þ¥¯¥í¸Æ¤Ó½Ð¤·¤ò°ú¿ô¤Ë»ý¤Ä¥æ¡¼¥¶¡¼ÄêµÁ¥Þ¥¯¥í¤ò¤É¤Î¤è¤¦¤Ë ½èÃÖ¤¹¤Ù¤­¤«¤ï¤«¤ê¤Þ¤»¤ó¤«¤é¡¢ÆÉ¼Ô¤¬¤½¤ì¤ò»Ø¼¨¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¾Ü¤·¤¯¤Ï¡¢See Instrumenting Macro Calls¡£

edebug¤Ï¡¢¤¢¤ë¥»¥Ã¥·¥ç¥ó¤Ç½é¤á¤Æ¥³¡¼¥É¤ò½èÃÖ¤¹¤ë¾ì¹ç¡¢ ¥Õ¥Ã¥¯edebug-setup-hook¤ò¼Â¹Ô¤·¤Æ¤«¤é ¤½¤ì¤Ënil¤òÀßÄꤷ¤Þ¤¹¡£ ¤³¤ì¤òÍøÍѤ¹¤ë¤È¡¢ÆÉ¼Ô¤¬»ÈÍѤ¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤ËÂбþ¤·¤¿ edebugÍÑ»ÅÍÍ¡Êsee Instrumenting Macro Calls¡Ë¤ò edebug¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ë¤Î¤ß¥í¡¼¥É¤¹¤ë¤è¤¦¤Ë¤Ç¤­¤Þ¤¹¡£

ÄêµÁ¤«¤é½èÃÖ¤ò¼è¤ê½ü¤¯¤Ë¤Ï¡¢ ½èÃÖ¤·¤Ê¤¤¤è¤¦¤ÊÊýË¡¤Ç¤½¤ÎÄêµÁ¤òñ¤ËºÆÉ¾²Á¤¹¤ë¤À¤±¤Ç¤¹¡£ ¤±¤Ã¤·¤Æ½èÃÖ¤»¤º¤Ë¥Õ¥©¡¼¥à¤òɾ²Á¤¹¤ëÊýË¡¤Ï2¤Ä¤¢¤ê¤Þ¤¹¡£ ¥Õ¥¡¥¤¥ë¤òload¤¹¤ë¤«¡¢ ¥ß¥Ë¥Ð¥Ã¥Õ¥¡¤Çeval-expression¡ÊM-:¡Ë¤ò»È¤¤¤Þ¤¹¡£

edebug¤¬½èÃÖÃæ¤Ë¹½Ê¸¥¨¥é¡¼¤ò¸¡½Ð¤¹¤ë¤È¡¢ ¥³¡¼¥É¤Î¥¨¥é¡¼²Õ½ê¤Ë¥Ý¥¤¥ó¥È¤òÃÖ¤¤¤Æ¡¢ ¥¨¥é¡¼invalid-read-syntax¤òÄÌÃΤ·¤Þ¤¹¡£

edebug¤ÎÆâ¦¤Ç»È¤¨¤ë¾¤Îɾ²Á´Ø¿ô¤Ë¤Ä¤¤¤Æ¤ÏSee Edebug Eval¡£