Next: , Previous: The Echo Area, Up: Display   [Contents][Index]


38.4 ÉԲĻë¤Ê¥Æ¥­¥¹¥È

°À­invisible¤Çʸ»ú·²¤òÉԲĻë¤Ë¤Ç¤­¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢¤½¤ì¤é¤ò¥¹¥¯¥ê¡¼¥ó¤Ëɽ¼¨¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤Î¤Ç¤¹¡£ ¥Æ¥­¥¹¥È°À­¡Êsee Text Properties¡Ë¤« ¥ª¡¼¥Ð¥ì¥¤¤Î°À­¡Êsee Overlays¡Ë¤ò»È¤¤¤Þ¤¹¡£

¤â¤Ã¤È¤âñ½ã¤Ê¾ì¹ç¡¢ °À­invisible¤¬nil°Ê³°¤Ç¤¢¤ë¤Èʸ»ú¤Ï¸«¤¨¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£ ¤³¤ì¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¾ì¹ç¡¢¤Ä¤Þ¤ê¡¢ buffer-invisibility-spec¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤòÊѹ¹¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¢¤ê¡¢ ¤³¤Î¤è¤¦¤Ë¤·¤ÆÂ°À­invisible¤Ïưºî¤·¤Þ¤¹¡£

¤è¤ê°ìÈÌŪ¤Ë¤Ï¡¢ÊÑ¿ôbuffer-invisibility-spec¤ò»È¤Ã¤Æ¡¢ °À­invisible¤Î¤É¤ÎÃͤΤâ¤Î¤òÉԲĻë¤Ê¥Æ¥­¥¹¥È¤Ë¤¹¤ë¤«¤òÀ©¸æ¤Ç¤­¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢invisible¤Î°Û¤Ê¤ëÃͤòÍ¿¤¨¤Æ ¥Æ¥­¥¹¥È¤ò¤¢¤é¤«¤¸¤á¤¤¤¯¤Ä¤«¤Î¥°¥ë¡¼¥×¤ËʬÎष¤Æ¤ª¤­¡¢ ¤½¤Î¤¢¤È¤Çbuffer-invisibility-spec¤ÎÃͤòÊѹ¹¤·¤Æ ¤µ¤Þ¤¶¤Þ¤Ê¥°¥ë¡¼¥×¤ò²Ä»ë¡¿ÉԲĻë¤Ë¤·¤Þ¤¹¡£

buffer-invisibility-spec¤Ç²Ä»ëÀ­¤òÀ©¸æ¤¹¤ë¤³¤È¤Ï¡¢ ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¹àÌܤΰìÍ÷¤òɽ¼¨¤¹¤ë¤è¤¦¤Ê¥×¥í¥°¥é¥à¤ÇÆÃ¤ËÍ­ÍѤǤ¹¡£ ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÆÃÄê¤Î¹àÌܤÀ¤±¤ò¸«¤ë¤¿¤á¤Î ÊØÍø¤Ê¥Õ¥£¥ë¥¿¥³¥Þ¥ó¥É¤ò¼ÂÁõ¤Ç¤­¤Þ¤¹¡£ ¤³¤ÎÊÑ¿ô¤ËÀßÄꤹ¤ë¤Î¤Ï¤È¤Æ¤â®¤¯¤Ç¤­¡¢ Êѹ¹¤¹¤Ù¤­Â°À­¤òõ¤¹¤¿¤á¤Ë¥Ð¥Ã¥Õ¥¡Æâ¤ÎÁ´¥Æ¥­¥¹¥È¤òÁöºº¤¹¤ë¤è¤ê¤â®¤¤¤Î¤Ç¤¹¡£

Variable: buffer-invisibility-spec

¤³¤ÎÊÑ¿ô¤Ï¡¢Â°À­invisible¤Î¤É¤Î¼ïÎà¤ò¼ÂºÝ¤Ë ÉԲĻë¤Êʸ»ú¤Ë¤¹¤ë¤«¤ò»ØÄꤹ¤ë¡£

t

°À­invisible¤¬nil°Ê³°¤Îʸ»ú¤òÉԲĻë¤Ë¤¹¤ë¡£ ¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¡£

¥ê¥¹¥È

¥ê¥¹¥È¤Î³ÆÍ×ÁǤÇÉԲĻë¤Ë¤¹¤ë¾ò·ï¤ò»ØÄꤹ¤ë¡£ ʸ»ú¤Î°À­invisible¤¬¤³¤ì¤é¤Î¾ò·ï¤Î1¤Ä¤òËþ¤¿¤¹¤È¡¢ ¤½¤Îʸ»ú¤òÉԲĻë¤Ë¤¹¤ë¡£ ¥ê¥¹¥È¤Ë¤Ï2¼ïÎà¤ÎÍ×ÁǤ¬¤¢¤ê¤¦¤ë¡£

atom

ʸ»ú¤Î°À­invisible¤ÎÃͤ¬atom¤Ç¤¢¤ë¤«¡¢ ¤½¤Î¥ê¥¹¥È¤Î¥á¥ó¥Ð¤Ëatom¤¬¤¢¤ë¤È¡¢ ʸ»ú¤òÉԲĻë¤Ë¤¹¤ë¡£

(atom . t)

ʸ»ú¤Î°À­invisible¤ÎÃͤ¬atom¤Ç¤¢¤ë¤«¡¢ ¤½¤Î¥ê¥¹¥È¤Î¥á¥ó¥Ð¤Ëatom¤¬¤¢¤ë¤È¡¢ ʸ»ú¤òÉԲĻë¤Ë¤¹¤ë¡£ ¤µ¤é¤Ë¡¢¤½¤Îʸ»ú¤¬¹ÔËö¤Ë¤¢¤ê¡¢Ä¾¸å¤ËÌܤ˸«¤¨¤ë²þ¹Ô¤¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ ‘’¤òɽ¼¨¤¹¤ë¡£

buffer-invisibility-spec¤ËÍ×ÁǤòÄɲä·¤¿¤êºï½ü¤¹¤ë¤¿¤á¤Ë 2¤Ä¤Î´Ø¿ô¤¬ÆÃÊ̤ˤ¢¤ê¤Þ¤¹¡£

Function: add-to-invisibility-spec element

¡Ê¥ê¥¹¥È¤Ëelement¤¬´û¸¤Ç¤Ê¤±¤ì¤Ð¡Ë buffer-invisibility-spec¤ËÍ×ÁÇelement¤òÄɲ乤롣

Function: remove-from-invisibility-spec element

buffer-invisibility-spec¤«¤éÍ×ÁÇelement¤òºï½ü¤¹¤ë¡£

buffer-invisibility-spec¤Î»È¤¤Êý¤Î´·½¬¤Î1¤Ä¤Ë¡¢ ¥á¥¸¥ã¡¼¥â¡¼¥É¤Ç¤Ï buffer-invisibility-spec¤Î1Í×ÁǤȰÀ­invisible¤ÎÃÍ¤Ë ¥â¡¼¥É¼«ÂΤÎ̾Á°¤ò»È¤¦¤Ù¤­¤Ç¤¢¤ë¤È¤¤¤¦¤Î¤¬¤¢¤ê¤Þ¤¹¡£

;; ’¤òɽ¼¨¤·¤¿¤±¤ì¤Ð
(add-to-invisibility-spec '(my-symbol . t)) 
;; ’¤òɽ¼¨¤·¤¯¤Ê¤±¤ì¤Ð
(add-to-invisibility-spec 'my-symbol) 

(overlay-put (make-overlay beginning end)
             'invisible 'my-symbol)

;; ¥ª¡¼¥Ð¥ì¥¤¤ò½ªÎ»¤·¤¿¤é
(remove-from-invisibility-spec '(my-symbol . t))
;; Ʊ¤¸¤è¤¦¤Ë
(remove-from-invisibility-spec 'my-symbol)

ÉáÄÌ¡¢¥Æ¥­¥¹¥È¤òÁàºî¤·¤¿¤ê¥Ý¥¤¥ó¥È¤ò°Üư¤¹¤ë¥³¥Þ¥ó¥É¤Ï¡¢ ¥Æ¥­¥¹¥È¤Î²Ä»ëÀ­¤ËÃí°Õ¤·¤Þ¤»¤ó¡£ ¥æ¡¼¥¶¡¼¥ì¥Ù¥ë¤Î°Üư¥³¥Þ¥ó¥É¤Ï¡¢ line-move-ignore-invisible¤¬nil°Ê³°¤Ç¤¢¤ì¤Ð ÉԲĻë¤Ê²þ¹Ô¤òÌÀ¼¨Åª¤Ë̵»ë¤·¤Þ¤¹¤¬¡¢ ¤½¤ì¤Ï¤½¤Î¤è¤¦¤ËÌÀ¼¨Åª¤Ë¥×¥í¥°¥é¥à¤·¤Æ¤¢¤ë¤«¤é¤Ë¤¹¤®¤Þ¤»¤ó¡£

¥¤¥ó¥¯¥ê¥á¥ó¥¿¥ë¥µ¡¼¥Á¤Ç¤Ï¡¢ ÉԲĻë¤Ê¥Æ¥­¥¹¥È¤ò´Þ¤à°ìÃײսê¤Ç¤Ï¡¢ ÉԲĻë¤Ê¥ª¡¼¥Ð¥ì¥¤¤ò°ì»þŪ¤Ë¤¢¤ë¤¤¤Ï¹±µ×Ū¤Ë²Ä»ë¤Ë¤Ç¤­¤Þ¤¹¡£ ¤³¤ì¤ò²Äǽ¤Ë¤¹¤ë¤Ë¤Ï¡¢¥ª¡¼¥Ð¥ì¥¤¤Î°À­isearch-open-invisible¤¬ nil°Ê³°¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¤½¤Î°À­¤ÎÃͤϡ¢¥ª¡¼¥Ð¥ì¥¤¤ò°ú¿ô¤È¤·¤Æ¸Æ¤Ð¤ì¤ë´Ø¿ô¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¤½¤Î´Ø¿ô¤¬¥ª¡¼¥Ð¥ì¥¤¤ò¹±µ×Ū¤Ë²Ä»ë¤Ë¤·¤Þ¤¹¡£ ¤½¤Î´Ø¿ô¤Ï¡¢Ãµº÷¤«¤éÈ´¤±¤ë¤È¤­¤Ë°ìÃײս꤬ ¥ª¡¼¥Ð¥ì¥¤¤Ë¤Þ¤¿¤¬¤Ã¤Æ¤¤¤ë¤È¤­¤Ë»È¤ï¤ì¤Þ¤¹¡£

õº÷Ãæ¤Ë¤Ï¡¢¤½¤Î¤è¤¦¤Ê¥ª¡¼¥Ð¥ì¥¤¤Ï¡¢ ¤½¤ì¤é¤Î°À­invisible¤Èintangible¤ò°ì»þŪ¤ËÊѹ¹¤¹¤ë¤³¤È¤Ç °ì»þŪ¤Ë²Ä»ë¤Ë¤µ¤ì¤Þ¤¹¡£ ÆÃÄê¤Î¥ª¡¼¥Ð¥ì¥¤¤ËÂФ·¤Æ°Û¤Ê¤ë°·¤¤¤ò¤·¤¿¤±¤ì¤Ð¡¢ °À­isearch-open-invisible-temporary¤Ë´Ø¿ô¤òÍ¿¤¨¤Æ¤ª¤­¤Þ¤¹¡£ ¤½¤Î´Ø¿ô¤Ï2¤Ä¤Î°ú¿ô¤Ç¸Æ¤Ð¤ì¤Þ¤¹¡£ Âè1°ú¿ô¤Ï¥ª¡¼¥Ð¥ì¥¤¡¢ Âè2°ú¿ô¤Ï¡¢¥ª¡¼¥Ð¥ì¥¤¤ò²Ä»ë¤Ë¤¹¤ët¡¢¤¢¤ë¤¤¤Ï¡¢ ¥ª¡¼¥Ð¥ì¥¤¤òºÆÅÙÉԲĻë¤Ë¤¹¤ënil¤Ç¤¹¡£