]> git.eshelyaron.com Git - emacs.git/commitdiff
Enable "Revert Buffer" if file has different writability
authorLars Ingebrigtsen <larsi@gnus.org>
Tue, 22 Feb 2022 14:44:14 +0000 (15:44 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Tue, 22 Feb 2022 17:56:09 +0000 (18:56 +0100)
* lisp/menu-bar.el (menu-bar-file-menu): Enable "Revert Buffer" if
the file has different writability than the buffer (bug#17148).

lisp/menu-bar.el

index e26355293f387ad6b5514621974bb79001208ab1..ab64928fe76a8b81e853b18b0ebc2e86f364cd77 100644 (file)
                         t))
                   :help "Recover edits from a crashed session"))
     (bindings--define-key menu [revert-buffer]
-      '(menu-item "Revert Buffer" revert-buffer
-                  :enable (or (not (eq revert-buffer-function
-                                       'revert-buffer--default))
-                              (not (eq
-                                    revert-buffer-insert-file-contents-function
-                                    'revert-buffer-insert-file-contents--default-function))
-                              (and buffer-file-number
-                                   (or (buffer-modified-p)
-                                       (not (verify-visited-file-modtime
-                                             (current-buffer))))))
-                  :help "Re-read current buffer from its file"))
+      '(menu-item
+        "Revert Buffer" revert-buffer
+        :enable
+        (or (not (eq revert-buffer-function
+                     'revert-buffer--default))
+            (not (eq
+                  revert-buffer-insert-file-contents-function
+                  'revert-buffer-insert-file-contents--default-function))
+            (and buffer-file-number
+                 (or (buffer-modified-p)
+                     (not (verify-visited-file-modtime
+                           (current-buffer)))
+                     ;; Enable if the buffer has a different
+                     ;; writeability than the file.
+                     (not (eq (not buffer-read-only)
+                              (file-writable-p buffer-file-name))))))
+        :help "Re-read current buffer from its file"))
     (bindings--define-key menu [write-file]
       '(menu-item "Save As..." write-file
                   :enable (and (menu-bar-menu-frame-live-and-visible-p)