2008-09-17 63 views

回答

10

創建一個函數,詢問您是否確定何時編輯緩衝區並且不與文件關聯。然後將該函數添加到列表kill-buffer-query-functions

望着文檔Buffer File Name你明白:

  • 一個緩衝區沒有訪問一個文件,當且僅當該變量buffer-file-name是零

透過這些分析寫的函數:

(defun maybe-kill-buffer() 
    (if (and (not buffer-file-name) 
      (buffer-modified-p)) 
     ;; buffer is not visiting a file 
     (y-or-n-p "This buffer is not visiting a file but has been edited. Kill it anyway? ") 
    t)) 

然後將函數添加到鉤子中,如下所示:

(add-to-list 'kill-buffer-query-functions 'maybe-kill-buffer) 
+0

這工作,但我不得不刪除「緩衝」的說法。 – 2008-09-17 20:36:04

1
(defun maybe-kill-buffer() 
    (if (and (not buffer-file-name) 
      (buffer-modified-p)) 
     ;; buffer is not visiting a file 
     (y-or-n-p (format "Buffer %s has been edited. Kill it anyway? " 
         (buffer-name))) 
    t)) 

(add-to-list 'kill-buffer-query-functions 'maybe-kill-buffer)