Next: , Previous: Motion and Syntax, Up: Syntax Tables   [Contents][Index]


34.6 Äà¤ê¹ç¤Ã¤¿¼°¤Î²òÀÏ

¤³¤³¤Ç¤Ï¡¢³ç¸Ì¤¬ÂФˤʤäƤ¤¤ëS¼°¡Êsexp¡Ë¤È¤â¸Æ¤Ð¤ì¤ë Äà¤ê¹ç¤Ã¤¿¼°¤ò²òÀϤ·¤¿¤êÁöºº¤¹¤ë´Ø¿ô¤Ë¤Ä¤¤¤Æ½Ò¤Ù¤Þ¤¹¡£ ¹½Ê¸¥Æ¡¼¥Ö¥ë¤Çʸ»ú¤Î²ò¼á¤òÀ©¸æ¤¹¤ë¤³¤È¤Ç¡¢ Lisp¥â¡¼¥É¤Ç¤ÏLisp¤Î¼°¤ËÂФ·¤Æ¡¢C¥â¡¼¥É¤Ç¤ÏC¤Î¼°¤ËÂФ·¤Æ ¤³¤ì¤é¤Î´Ø¿ô¤òÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ Äà¤ê¹ç¤Ã¤¿¼°¤òÈô¤Ó±Û¤¨¤Æ°Üư¤¹¤ë¤¿¤á¤ÎÊØÍø¤Ê¾å°Ì¥ì¥Ù¥ë¤Î´Ø¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢ See List Motion¡£

Function: parse-partial-sexp start limit &optional target-depth stop-before state stop-comment

¤³¤Î´Ø¿ô¤Ï¡¢¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤Îstart¤«¤é»Ï¤Þ¤ëS¼°¤ò²òÀϤ¹¤ë¤¬¡¢ limit¤ò±Û¤¨¤Æ¤ÏÁöºº¤·¤Ê¤¤¡£ °ÌÃÖlimit¤Ç»ß¤Þ¤ë¤«¡¢ °Ê²¼¤Ë½Ò¤Ù¤ë¾ò·ï¤¬Ëþ¤¿¤µ¤ì¤ë¤È²òÀϤòÄä»ß¤·¡¢Åö³º²Õ½ê¤Ë¥Ý¥¤¥ó¥È¤òÃÖ¤¯¡£ ¥Ý¥¤¥ó¥È¤òÃÖ¤¤¤¿²Õ½ê¤Ç¤Î²òÀϾõ¶·¤òɽ¤¹ÃͤòÊÖ¤¹¡£

state¤¬nil¤Ç¤¢¤ë¤È¡¢ °ÌÃÖstart¤Ï¡¢´Ø¿ôÄêµÁ¤ÎÀèÆ¬¤Î¤è¤¦¤Ê ³ç¸Ì¤Î¹½Â¤¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤Ç¤¢¤ë¤È²¾Äꤹ¤ë¡£ ¤¢¤ë¤¤¤Ï¡¢¹½Â¤¤ÎÅÓÃæ¤«¤é²òÀϤòºÆ³«¤·¤¿¤¤¾ì¹ç¤â¤¢¤ë¡£ ¤½¤ì¤Ë¤Ï¡¢²òÀϤνé´ü¾õÂÖ¤ò°ú¿ôstate¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¡£

3ÈÖÌܤΰú¿ôtarget-depth¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ ³ç¸Ì¤Î¿¼¤µ¤¬target-depth¤ËÅù¤·¤¯¤Ê¤ë¤È²òÀϤòÄä»ß¤¹¤ë¡£ ¿¼¤µ¤Ï0¡¢¤¢¤ë¤¤¤Ï¡¢state¤Ç»ØÄꤵ¤ì¤¿Ãͤ«¤é»Ï¤Þ¤ë¡£

4ÈÖÌܤΰú¿ôstop-before¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ S¼°¤ò»Ï¤á¤ëʸ»ú¤Ë½Ð²ñ¤¦¤È²òÀϤòÄä»ß¤¹¤ë¡£ stop-comment¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ ¥³¥á¥ó¥È¤Î»Ï¤Þ¤ê¤Ë½Ð²ñ¤¦¤È²òÀϤòÄä»ß¤¹¤ë¡£ stop-comment¤¬¥·¥ó¥Ü¥ësyntax-table¤Ç¤¢¤ë¤È¡¢ ¥³¥á¥ó¥È¤äʸ»úÎó¤Î»Ï¤Þ¤ê¡¢¥³¥á¥ó¥È¤äʸ»úÎó¤Î½ª¤ê¤Î¤¤¤º¤ì¤«¤Ë ½Ð²ñ¤Ã¤¿¤¢¤È¤Ç²òÀϤòÄä»ß¤¹¤ë¡£

5ÈÖÌܤΰú¿ôstate¤Ï9Í×ÁǤΥꥹ¥È¤Ç¤¢¤ê¡¢ °Ê²¼¤Ë½Ò¤Ù¤ë¤è¤¦¤Ë¤³¤Î´Ø¿ô¤ÎÃÍ¤ÈÆ±¤¸·Á¤Ç¤¢¤ë¡£ ¡Ê9ÈÖÌܤκǸå¤ÎÍ×ÁǤϾʤ¤¤Æ¤â¤è¤¤¡£¡Ë parse-partial-sexp¤Î¸Æ¤Ó½Ð¤·¤ÎÌá¤êÃͤò¡¢ Ê̤Îparse-partial-sexp¤Î¸Æ¤Ó½Ð¤·¤Î²òÀϾõÂ֤νé´üÃͤ˻ȤäƤ褤¡£

·ë²Ì¤Ï¡¢²òÀϤκǽª¾õÂÖ¤òµ­½Ò¤·¤¿9Í×ÁǤΥꥹ¥È¤Ç¤¢¤ë¡£

  1. 0¤«¤é¿ô¤¨¤¿³ç¸Ì¤Î¿¼¤µ¡£
  2. ¥Ý¥¤¥ó¥È¤òÄä»ß¤·¤¿²Õ½ê¤ò´Þ¤à¤â¤Ã¤È¤âÆâ¦¤Î³ç¸Ì¼°¤Î³«»Ï°ÌÃÖ¡£ ¤Ê¤±¤ì¤Ðnil¡£
  3. ÊĤ¸¤Æ¤¤¤ëºÇ¸å¤Î´°Á´¤ÊÉôʬ¼°¤Î³«»Ï°ÌÃÖ¡£ ¤Ê¤±¤ì¤Ðnil¡£
  4. ʸ»úÎó¤ÎÆâ¦¤Ç¤¢¤ë¤Ènil°Ê³°¤Ç¤¢¤ë¡£ ¤è¤êÀµ³Î¤Ë¤Ï¡¢¤³¤ì¤Ïʸ»úÎó¤ò½ª¤¨¤ëʸ»ú¤Ç¤¢¤ë¡£ ¤¢¤ë¤¤¤Ï¡¢ÈÆÍÑʸ»úÎó¶èÀÚ¤êʸ»ú¤Ç½ª¤¨¤ë¤È¤­¤Ë¤Ït¤Ç¤¢¤ë¡£
  5. ¡Ê¤É¤Á¤é¤«¤Î·Á¼°¤Î¡Ë¥³¥á¥ó¥È¤ÎÆâ¦¤Ç¤¢¤ë¤Èt¤Ç¤¢¤ë¡£
  6. ¥Ý¥¤¥ó¥È¤¬¥¯¥©¡¼¥Èʸ»ú¤Îľ¸å¤Ç¤¢¤ë¤Èt¤Ç¤¢¤ë¡£
  7. ¤³¤Î²òÀÏÃæ¤Ë½Ð²ñ¤Ã¤¿ºÇ¾®¤Î³ç¸Ì¤Î¿¼¤µ¡£
  8. ¤É¤Î·Á¼°¤Î¥³¥á¥ó¥È¤¬³èÀ­¤Ç¤¢¤ë¤«¤òɽ¤¹¡£ ¡Øa¡Ù·Á¼°¤Ç¤¢¤ë¤Ènil¡¢ ¡Øb¡Ù·Á¼°¤Ç¤¢¤ë¤Èt¡¢ ÈÆÍÑ¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤Ç½ª¤ë¥³¥á¥ó¥È¤Î¾ì¹ç¤Ë¤Ïsyntax-table¤Ç¤¢¤ë¡£
  9. ʸ»úÎó¤ä¥³¥á¥ó¥È¤Î³«»Ï°ÌÃÖ¡£ ¥³¥á¥ó¥È¤ÎÆâ¦¤Ç¤¢¤ë¤È¤­¤Ë¤Ï¤³¤ì¤Ï¥³¥á¥ó¥È¤Î³«»Ï°ÌÃ֤Ǥ¢¤ê¡¢ ʸ»úÎó¤ÎÆâ¦¤Ç¤¢¤ë¤È¤­¤Ë¤Ï¤³¤ì¤Ïʸ»úÎó¤Î³«»Ï°ÌÃ֤Ǥ¢¤ë¡£ ʸ»úÎó¤ä¥³¥á¥ó¥È¤Î³°Â¦¤Ç¤Ï¡¢¤³¤ÎÍ×ÁǤÏnil¤Ç¤¢¤ë¡£

°ú¿ôstate¤Ç¤Ï¡¢Í×ÁÇ0¡¢3¡¢4¡¢5¡¢7¤Ï½ÅÍפǤ¢¤ë¡£

¤³¤Î´Ø¿ô¤Ï¡¢Æþ¤ì»Ò¤Ë¤¢¤Ã¤¿³ç¸Ì¤ò»ý¤Ä¸À¸ì¸þ¤±¤Ë »ú²¼¤²¤ò·×»»¤¹¤ë¤¿¤á¤Ë¤·¤Ð¤·¤ÐÍѤ¤¤é¤ì¤ë¡£

Function: scan-lists from count depth

¤³¤Î´Ø¿ô¤Ï¡¢°ÌÃÖfrom¤«¤éÁ°Êý¤Ø¸þ¤±¤Æcount¸Ä¤Î Äà¤ê¹ç¤Ã¤¿³ç¸Ì¤Î¥°¥ë¡¼¥×¤òÁöºº¤¹¤ë¡£ Áöºº¤òÄä»ß¤·¤¿°ÌÃÖ¤òÊÖ¤¹¡£ count¤¬Éé¤Ç¤¢¤ë¤È¡¢¸åÊý¤Ø¸þ¤±¤ÆÁöºº¤¹¤ë¡£

depth¤¬0°Ê³°¤Ç¤¢¤ë¤È¡¢³ç¸Ì¤Î¿¼¤µ¤ò¤½¤ÎÃͤ«¤é¿ô¤¨»Ï¤á¤ë¡£ Ää»ß²Õ½ê¤Î¸õÊä°ÌÃ֤ϡ¢³ç¸Ì¤Î¿¼¤µ¤¬0¤Ë¤Ê¤ë²Õ½ê¤Ç¤¢¤ë¡£ scan-lists¤Ï¡¢¤½¤Î¤è¤¦¤Ê²Õ½ê¤òcount²ó¿ô¤¨¤Æ¤«¤éÄä»ß¤¹¤ë¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢depth¤ËÀµ¤ÎÃͤò»ØÄꤹ¤ë¤È¡¢ ³ç¸Ì¤Î¥ì¥Ù¥ë¤òdepth¥ì¥Ù¥ë¤À¤±È´¤±¤ë¤³¤È¤ò°ÕÌ£¤¹¤ë¡£

parse-sexp-ignore-comments¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ ¥³¥á¥ó¥È¤ò̵»ë¤·¤ÆÁöºº¤¹¤ë¡£

Áöºº¤¬¥Ð¥Ã¥Õ¥¡¡Ê¤¢¤ë¤¤¤Ï¤½¤Î»²¾È²ÄǽÉôʬ¡Ë¤ÎÀèÆ¬¤äËöÈø¤Ë㤷¡¢ ¿¼¤µ¤¬0¤Ç¤Ê¤¤¤È¡¢¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£ ¿¼¤µ¤Ï0¤Ç¤¢¤ë¤¬»ØÄê¸Ä¿ô¤À¤±¿ô¤¨¤Æ¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢nil¤òÊÖ¤¹¡£

Function: scan-sexps from count

¤³¤Î´Ø¿ô¤Ï¡¢°ÌÃÖfrom¤«¤éÁ°Êý¤Ø¸þ¤±¤Æcount¸Ä¤ÎS¼°¤òÁöºº¤¹¤ë¡£ Áöºº¤ò½ª¤¨¤¿°ÌÃÖ¤òÊÖ¤¹¡£ count¤¬Éé¤Ç¤¢¤ë¤È¡¢¸åÊý¤Ø¸þ¤±¤Æ°Üư¤¹¤ë¡£

parse-sexp-ignore-comments¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ ¥³¥á¥ó¥È¤ò̵»ë¤·¤ÆÁöºº¤¹¤ë¡£

Áöºº¤¬³ç¸Ì¤Ë¤è¤ë¥°¥ë¡¼¥×¤ÎÅÓÃæ¤Ç ¥Ð¥Ã¥Õ¥¡¡Ê¤¢¤ë¤¤¤Ï¤½¤Î»²¾È²ÄǽÉôʬ¡Ë¤ÎÀèÆ¬¤äËöÈø¤Ë㤹¤ë¤È¡¢ ¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£ »ØÄê¸Ä¿ô¤À¤±¿ô¤¨¤ë¤Þ¤¨¤Ë³ç¸Ì¤Ë¤è¤ë¥°¥ë¡¼¥×¤Î¤¢¤¤¤À¤Ç ÀèÆ¬¤äËöÈø¤Ë㤷¤¿¾ì¹ç¤Ïnil¤òÊÖ¤¹¡£

Variable: parse-sexp-ignore-comments

Ãͤ¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢ ËÜÀá¤Î´Ø¿ô¤äforward-sexp¤Ï¡¢¥³¥á¥ó¥È¤òÇòʸ»ú¤È¤·¤Æ°·¤¦¡£

Emacs¤Î¸Å¤¤ÈǤǤϡ¢¥³¥á¥ó¥È¤Î½ªÎ»¤¬‘*/’¤Î¤è¤¦¤Ê·Á¤Ç¤¢¤ê¡¢¤«¤Ä¡¢ ¥³¥á¥ó¥È¤Î½ªÎ»¤È»×¤¨¤ë¾ì¹ç¤Ë¤Î¤ß¡¢¤³¤Îµ¡Ç½¤Ïưºî¤·¤¿¡£ ²þ¹Ô¤Ç¥³¥á¥ó¥È¤ò½ª¤¨¤ë¸À¸ì¤Ç¤Ï¡¢²þ¹Ô¤¹¤Ù¤Æ¤¬¥³¥á¥ó¥È¤Î½ª¤ê¤Ç¤Ï¤Ê¤¤¤¿¤á¤Ë¡¢ ¤³¤ÎÊÑ¿ô¤ònil¤Ë¤¹¤ëɬÍפ¬¤¢¤Ã¤¿¡£ ¤³¤Î¤è¤¦¤ÊÀ©¸Â»ö¹à¤Ï¤¹¤Ç¤Ë¤Ê¤¤¡£

forward-comment¤ò»È¤¦¤È¡¢ 1¤Ä¤Î¥³¥á¥ó¥È¤äÊ£¿ô¤Î¥³¥á¥ó¥È¤òÈô¤Ó±Û¤¨¤ÆÁ°¸å¤Ë°Üư¤Ç¤­¤Þ¤¹¡£

Function: forward-comment count

¤³¤Î´Ø¿ô¤Ï¡¢¥Ý¥¤¥ó¥È¤òÁ°Êý¤Ø¸þ¤±¤Æ¡Êcount¤¬Éé¤Ê¤é¤Ð¸åÊý¤Ø¸þ¤±¤Æ¡Ë count¸Ä¤Î¥³¥á¥ó¥È¤òÈô¤Ó±Û¤¨¤Æ°Üư¤¹¤ë¡£ ¥³¥á¥ó¥È¤«Çòʸ»ú°Ê³°¤Î¤â¤Î¤Ë½Ð²ñ¤¦¤ÈÄä»ß¤·¡¢Åö³º²Õ½ê¤Ë¥Ý¥¤¥ó¥È¤òÃÖ¤¯¡£ count¸Ä¤À¤±¿ô¤¨¤¿¤¢¤È¤Ë¤â¤â¤Á¤í¤óÄä»ß¤¹¤ë¡£

¥Ý¥¤¥ó¥È¤Ë³¤¯¤¹¤Ù¤Æ¤Î¥³¥á¥ó¥È¤ÈÇòʸ»ú¤òÈô¤Ó±Û¤¨¤ë¤Ë¤Ï¡¢ (forward-comment (buffer-size))¤ò»È¤¤¤Þ¤¹¡£ ¥Ð¥Ã¥Õ¥¡Æâ¤Î¥³¥á¥ó¥È¤Î¸Ä¿ô¤Ï(buffer-size)¤ò±Û¤¨¤ë¤Ï¤º¤¬¤Ê¤¤¤Î¤Ç¡¢ °ú¿ô¤Ë»È¤¦¤Ë¤Ï(buffer-size)¤Ï¤è¤¤¤â¤Î¤Ç¤¹¡£