Bối cảnh
Khi emacs phát hiện ra rằng một tập tin đã được thay đổi bên ngoài bộ đệm chỉnh sửa.
Được Quan sát
emacs sẽ hỏi:
somefilename đã thay đổi trong đĩa; thực sự chỉnh sửa bộ đệm? (y, n, r hoặc Ch)
(Ngẫu nhiên, đôi khi nó xảy ra ngay cả khi không có thay đổi thực sự, ví dụ: tệp từ xa trên máy chủ có đồng hồ bị trôi, nhưng câu hỏi rất thú vị trong mọi trường hợp.)
Chúc
emacs sẽ hỏi:
somefilename đã thay đổi trong đĩa; thực sự chỉnh sửa bộ đệm? (y, n, r, d hoặc Ch)
Nhấn d
sẽ cho thấy sự khác biệt giữa các phiên bản, ví dụ ediff-current-file
cho phép đi qua sự khác biệt một cách tương tác.
Thông tin thêm
Điều đó sẽ tương tự như những gì quản lý gói Debian thực hiện khi phát hiện tệp cấu hình được tùy chỉnh cục bộ được cập nhật bởi phiên bản mới hơn của gói sở hữu. Để biết ví dụ, hãy xem Phiên bản mới của tệp cấu hình / etc / default / grub, nhưng phiên bản được cài đặt hiện đã được sửa đổi cục bộ - Unix & Linux Stack Exchange
Tìm kiếm trước khi bạn hỏi
Tôi thường tìm đường đến các giải pháp (ví dụ: emacsclient - Từ một tập lệnh bên ngoài, mở tệp và chạy một số biểu thức đơn giản cho dù emacs đã chạy hay chưa - Emacs Stack Exchange ) nhưng sau khi tìm kiếm trên này, tôi không thể tìm thấy bất kỳ giải pháp nào hiện có.
Tôi sẽ xem xét điều chỉnh bản thân mình nhưng không đủ thành thạo trong nội bộ emacs-lisp và emacs.
Phác thảo giải pháp
- Nhấn
C-g
rồi 'Mx ediff-current-file` thực hiện công việc, với chi phí của một số tổ hợp phím. - Mục tiêu ở đây sẽ là chạy
ediff-current-file
trên một phím bấm tại dấu nhắc trên.