Vô hiệu hóa nhắc nhở để tự động phục hồi khi tự động lưu dữ liệu giống như tệp


8

Khi tôi giết emacs ( killall emacsví dụ như từ dấu nhắc shell) và tôi đang chỉnh sửa một tệp, Emacs khởi động lại bằng một tin nhắn

tên tệp có tự động lưu dữ liệu; xem xét Mx recovery-this-file

Nếu gần đây tôi đã lưu tệp, sau đó sửa đổi tệp và sau đó hoàn tác các thay đổi, để nó trông giống như phiên bản đã lưu, thông báo này được hiển thị, mặc dù tệp tự động lưu không có thay đổi nào cả (nhìn qua kích thước tệp hoặc M-x diff)

Làm thế nào điều này có thể bị vô hiệu hóa?

Tôi không thể tìm thấy một cái gì đó trong tài liệu chính thức , hoặc emacswiki .

Câu trả lời:


4

Tôi không nghĩ rằng có một cơ chế tích hợp sẵn cho việc này, vì vậy bạn có thể cần phải tự lăn.

Không có câu trả lời trực tiếp, nhưng tôi có một cái gì đó tương tự trong cấu hình của mình: Tôi không muốn được nhắc xác nhận khi giết một tệp khớp với những gì trên đĩa. Để kiểm tra điều này, tôi đang chạy diff và sau đó quét đầu ra - bạn có thể làm điều gì đó tương tự cho trường hợp sử dụng của mình.

(defun my/matches-file-p ()
  "Return t if the current buffer is identical to its associated file."
  (autoload 'diff-no-select "diff")
  (when buffer-file-name
    (diff-no-select buffer-file-name (current-buffer) nil 'noasync)
    (with-current-buffer "*Diff*"
      (search-forward-regexp "^Diff finished \(no differences\)\." (point-max) 'noerror))))

(defun my/kill-buffer ()
  "Kill the current buffer.
Don't prompt for confirmation if the buffer is unmodified or matches its file."
  (interactive)
  (when (my/matches-file-p)
    (set-buffer-modified-p nil))
  (kill-buffer))

Nhìn thêm vào trường hợp tự động hoàn nguyên. Có vẻ như lời nhắc đó đến từ after-find-file, đang xem dấu thời gian ( file-newer-than-file-p). Tôi không thấy một cách đơn giản để tùy chỉnh hoặc tư vấn cho hành vi này. Có lẽ bạn có thể khuyên nên after-find-fileso sánh tệp với tệp tự động lưu của nó và đặt warnđối số thành không nếu mọi thứ khớp.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.