Next: , Previous: Creating Buffers, Up: Buffers   [Contents][Index]


26.10 ¥Ð¥Ã¥Õ¥¡¤Îºï½ü

¥Ð¥Ã¥Õ¥¡¤òºï½ü¤¹¤ë¤È¤Ï¡¢Emacs¤ËÅö³º¥Ð¥Ã¥Õ¥¡¤Î̾Á°¤ò˺¤ì¤µ¤»¡¢ ¤½¤ì¤¬»È¤Ã¤Æ¤¤¤¿¾ì½ê¤ò¾¤ÎÌÜŪ¤Ë»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤Ç¤¹¡£

ºï½ü¤µ¤ì¤¿¥Ð¥Ã¥Õ¥¡¤òɽ¤¹¥Ð¥Ã¥Õ¥¡¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢ ¤½¤ì¤ò»Ø¤¹¤â¤Î¤¬Â¸ºß¤¹¤ë¸Â¤ê¸ºß¤·Â³¤±¤Þ¤¹¤¬¡¢ ¤½¤ì¤ò¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤Ë¤·¤¿¤êɽ¼¨¤Ç¤­¤Ê¤¤¤è¤¦¤ËÆÃÊ̤ʰõ¤¬ÉÕ¤¤¤Æ¤¤¤Þ¤¹¡£ ºï½ü¤µ¤ì¤¿¥Ð¥Ã¥Õ¥¡¤Î¼±Ê̻ҤϻĤäƤ¤¤ë¤Î¤Ç¡¢ °Û¤Ê¤ë2¤Ä¤Î¥Ð¥Ã¥Õ¥¡¤òºï½ü¤·¤Æ¤â¡¢ eq¤Ë´Ø¤¹¤ë¸Â¤ê¤½¤ì¤é¤Ï¶èÊ̤Ǥ­¤ë¤Î¤Ç¤¹¡£

¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤ä¥¦¥£¥ó¥É¥¦¤Ëɽ¼¨¤·¤Æ¤¤¤ë¥Ð¥Ã¥Õ¥¡¤òºï½ü¤¹¤ë¤È¡¢ ¤½¤Î¤«¤ï¤ê¤ËEmacs¤ÏÊ̤ΥХåե¡¤òÁªÂò¤·¤¿¤êɽ¼¨¤·¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢¥Ð¥Ã¥Õ¥¡¤òºï½ü¤¹¤ë¤È°ìÈ̤ˤϥ«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤¬ ÂØ¤ï¤ê¤¦¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢¥Ð¥Ã¥Õ¥¡¤òºï½ü¤¹¤ë¤È¤­¤Ë¤Ï¡¢ ¡Êºï½ü¤¹¤ë¥Ð¥Ã¥Õ¥¡¤¬¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤Ç¤Ï¤Ê¤¤¤³¤È¤¬¤ï¤«¤Ã¤Æ¤¤¤Ê¤¤¸Â¤ê¡Ë ¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤òÂØ¤¨¤ë²ÄǽÀ­¤Ë¤Ä¤¤¤Æ¤¢¤é¤«¤¸¤áÃí°Õ¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£ See Current Buffer¡£

Ê£¿ô¤Î´ÖÀܥХåե¡¤Î´ðÄì¥Ð¥Ã¥Õ¥¡¤Ç¤¢¤ë¥Ð¥Ã¥Õ¥¡¤òºï½ü¤¹¤ë¤È¡¢ ´ÖÀܥХåե¡¤â¼«Æ°Åª¤Ëºï½ü¤µ¤ì¤Þ¤¹¡£

ºï½ü¤µ¤ì¤¿¥Ð¥Ã¥Õ¥¡¤Îbuffer-name¤Ïnil¤Ç¤¹¡£ ¤³¤ì¤ò»È¤¨¤Ð¥Ð¥Ã¥Õ¥¡¤¬ºï½ü¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«Ä´¤Ù¤é¤ì¤Þ¤¹¡£

(defun buffer-killed-p (buffer)
  "Return t if BUFFER is killed."
  (not (buffer-name buffer)))
¥³¥Þ¥ó¥É: kill-buffer buffer-or-name

¤³¤Î´Ø¿ô¤Ï¥Ð¥Ã¥Õ¥¡buffer-or-name¤òºï½ü¤·¡¢ Åö³º¥Ð¥Ã¥Õ¥¡¤¬»ÈÍѤ·¤Æ¤¤¤¿¤¹¤Ù¤Æ¤Î¥á¥â¥ê¤ò¾¤ÎÌÜŪ¤Ë»È¤¨¤ë¤è¤¦¤Ë²òÊü¤·¤¿¤ê¡¢ ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤ËÊÖ¤¹¤¿¤á¤Ë²òÊü¤¹¤ë¡£ ¤³¤Î´Ø¿ô¤Ïnil¤òÊÖ¤¹¡£

Åö³º¥Ð¥Ã¥Õ¥¡¤òprocess-buffer¤È¤·¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥»¥¹¤Ë ¥·¥°¥Ê¥ëSIGHUP¤òÁ÷¤ë¡£ ¤³¤Î¥·¥°¥Ê¥ë¤Ï¡¢Ä̾¥×¥í¥»¥¹¤ò½ªÎ»¤µ¤»¤ë¡£ ¡ÊSIGHUP¤Î´ðËÜŪ¤Ê°ÕÌ£¤Ï¡¢Àܳ²óÀþ¤¬ÀÚÃǤµ¤ì¤¿¤Ç¤¢¤ë¡£¡Ë see Deleting Processes¡£

Åö³º¥Ð¥Ã¥Õ¥¡¤¬¥Õ¥¡¥¤¥ë¤òˬÌ䤷¤Æ¤¤¤Æ¡¢¤«¤Ä¡¢Ì¤Êݸ¤ÎÊѹ¹¤¬¤¢¤ì¤Ð¡¢ kill-buffer¤ÏÅö³º¥Ð¥Ã¥Õ¥¡¤òºï½ü¤¹¤ë¤Þ¤¨¤Ë¥æ¡¼¥¶¡¼¤Ë³Îǧ¤ò¤È¤ë¡£ ³Îǧ¤ò¤È¤é¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¡¢kill-buffer¤ò¸Æ¤Ó½Ð¤¹¤Þ¤¨¤Ë ¥Ð¥Ã¥Õ¥¡¤ÎÊѹ¹¥Õ¥é¥°¤ò¥¯¥ê¥¢¤·¤Æ¤ª¤¯¡£ see Buffer Modification¡£

ºï½üºÑ¤ß¤Î¥Ð¥Ã¥Õ¥¡¤òºï½ü¤·¤Æ¤â¤Ê¤ó¤Î¸ú²Ì¤â¤Ê¤¤¡£

(kill-buffer "foo.unchanged")
     ⇒ nil
(kill-buffer "foo.changed")

---------- Buffer: Minibuffer ----------
Buffer foo.changed modified; kill anyway? (yes or no) yes
---------- Buffer: Minibuffer ----------

     ⇒ nil
Variable: kill-buffer-query-functions

̤Êݸ¤ÎÊѹ¹¤ò³Îǧ¤·¤¿¤¢¤È¤Ç¡¢kill-buffer¤Ï¡¢ ¥ê¥¹¥Èkill-buffer-query-functions¤Î´Ø¿ô¤ò¸½¤ì¤ë½ç¤Ë °ú¿ô¤Ê¤·¤Ç¸Æ¤Ó½Ð¤¹¡£ ¤³¤ì¤é¤Î´Ø¿ô¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤È¤­¤Ë¤Ï¡¢ ºï½üÂоݤΥХåե¡¤¬¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤Ç¤¢¤ë¡£ ¤³¤ì¤é¤Î´Ø¿ô¤Ç¤µ¤Þ¤¶¤Þ¤ÊÈóɸ½àŪ¤ÊÍýͳ¤«¤é ¥æ¡¼¥¶¡¼¤Î³Îǧ¤ò¤È¤ë¤³¤È¤¬ÌÜŪ¤Ç¤¢¤ë¡£ ¤¤¤º¤ì¤«¤¬nil¤òÊÖ¤¹¤È¡¢kill-buffer¤Ï¥Ð¥Ã¥Õ¥¡¤òºï½ü¤·¤Ê¤¤¡£

Variable: kill-buffer-hook

¤³¤ì¤Ï¡¢kill-buffer¤¬Ì䤤¹ç¤ï¤»¤ò¤¹¤Ù¤Æ´°Î»¤· ¥Ð¥Ã¥Õ¥¡¤ò¼ÂºÝ¤Ëºï½ü¤¹¤ëľÁ°¤Ë¼Â¹Ô¤µ¤ì¤ë¥Î¡¼¥Þ¥ë¥Õ¥Ã¥¯¤Ç¤¢¤ë¡£ ¥Õ¥Ã¥¯´Ø¿ô¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¤Ï¡¢ºï½üÂоݤΥХåե¡¤¬¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡¤Ç¤¢¤ë¡£ see Hooks¡£

Variable: buffer-offer-save

¤³¤ÎÊÑ¿ô¤¬ÆÃÄê¤Î¥Ð¥Ã¥Õ¥¡¤Çnil°Ê³°¤Ç¤¢¤ë¤È¡¢ save-buffers-kill-emacs¤Èsave-some-buffers¤ËÂФ·¤Æ ¥Õ¥¡¥¤¥ë¤òˬÌ䤷¤Æ¤¤¤ë¥Ð¥Ã¥Õ¥¡¤ÈƱÍÍ¤Ë Åö³º¥Ð¥Ã¥Õ¥¡¤òÊݸ¤¹¤ëµ¡²ñ¤òÍ¿¤¨¤ë¤è¤¦¤Ë»Ø¼¨¤¹¤ë¡£ ÊÑ¿ôbuffer-offer-save¤Ë ÀßÄꤹ¤ë¤È¼«Æ°Åª¤Ë¥Ð¥Ã¥Õ¥¡¥í¡¼¥«¥ë¤Ë¤Ê¤ë¡£