aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTino Calancha2018-08-13 19:24:31 +0900
committerTino Calancha2018-08-13 19:24:31 +0900
commite73e6838aa595e5a3d217480c96b1d04d3d1cb16 (patch)
tree70ef7f61617fb4bea83eda94f77c7db3bd57f797
parent12f7116714cf0cc3566ea2a5b1184c99cbfe7b90 (diff)
downloademacs-e73e6838aa595e5a3d217480c96b1d04d3d1cb16.tar.gz
emacs-e73e6838aa595e5a3d217480c96b1d04d3d1cb16.zip
Ibuffer: Add toggle ibuffer-do-toggle-lock
Toggle the locked status in marked buffers or the buffer at point (Bug#32421). * lisp/ibuffer.el (ibuffer-do-toggle-lock): New command. (ibuffer-mode-map): Bind it to 'L'. (ibuffer-mode-operate-map): Add entries for `ibuffer-do-toggle-read-only' and `ibuffer-do-toggle-lock'. * etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.2): Announce the change.
-rw-r--r--etc/NEWS5
-rw-r--r--lisp/ibuffer.el16
2 files changed, 21 insertions, 0 deletions
diff --git a/etc/NEWS b/etc/NEWS
index a1c12a6766c..e563473661e 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -45,6 +45,11 @@ often cause crashes. Set it to nil if you really need those fonts.
45 45
46* Changes in Specialized Modes and Packages in Emacs 26.2 46* Changes in Specialized Modes and Packages in Emacs 26.2
47 47
48** Ibuffer
49
50---
51*** New toggle 'ibuffer-do-toggle-lock', bound to 'L'.
52
48** Gnus 53** Gnus
49 54
50--- 55---
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el
index 03018d08a58..08b0801cb51 100644
--- a/lisp/ibuffer.el
+++ b/lisp/ibuffer.el
@@ -590,6 +590,7 @@ directory, like `default-directory'."
590 (define-key map (kbd "R") 'ibuffer-do-rename-uniquely) 590 (define-key map (kbd "R") 'ibuffer-do-rename-uniquely)
591 (define-key map (kbd "S") 'ibuffer-do-save) 591 (define-key map (kbd "S") 'ibuffer-do-save)
592 (define-key map (kbd "T") 'ibuffer-do-toggle-read-only) 592 (define-key map (kbd "T") 'ibuffer-do-toggle-read-only)
593 (define-key map (kbd "L") 'ibuffer-do-toggle-lock)
593 (define-key map (kbd "r") 'ibuffer-do-replace-regexp) 594 (define-key map (kbd "r") 'ibuffer-do-replace-regexp)
594 (define-key map (kbd "V") 'ibuffer-do-revert) 595 (define-key map (kbd "V") 'ibuffer-do-revert)
595 (define-key map (kbd "W") 'ibuffer-do-view-and-eval) 596 (define-key map (kbd "W") 'ibuffer-do-view-and-eval)
@@ -862,6 +863,10 @@ directory, like `default-directory'."
862 '(menu-item "Print" ibuffer-do-print)) 863 '(menu-item "Print" ibuffer-do-print))
863 (define-key-after operate-map [do-toggle-modified] 864 (define-key-after operate-map [do-toggle-modified]
864 '(menu-item "Toggle modification flag" ibuffer-do-toggle-modified)) 865 '(menu-item "Toggle modification flag" ibuffer-do-toggle-modified))
866 (define-key-after operate-map [do-toggle-read-only]
867 '(menu-item "Toggle read-only flag" ibuffer-do-toggle-read-only))
868 (define-key-after operate-map [do-toggle-lock]
869 '(menu-item "Toggle lock flag" ibuffer-do-toggle-lock))
865 (define-key-after operate-map [do-revert] 870 (define-key-after operate-map [do-revert]
866 '(menu-item "Revert" ibuffer-do-revert 871 '(menu-item "Revert" ibuffer-do-revert
867 :help "Revert marked buffers to their associated file")) 872 :help "Revert marked buffers to their associated file"))
@@ -1361,6 +1366,16 @@ Otherwise, toggle read only status."
1361 :modifier-p t) 1366 :modifier-p t)
1362 (read-only-mode (if (integerp arg) arg 'toggle))) 1367 (read-only-mode (if (integerp arg) arg 'toggle)))
1363 1368
1369(define-ibuffer-op ibuffer-do-toggle-lock (&optional arg)
1370 "Toggle locked status in marked buffers.
1371If optional ARG is a non-negative integer, lock buffers.
1372If ARG is a negative integer or 0, unlock buffers.
1373Otherwise, toggle lock status."
1374 (:opstring "toggled lock status in"
1375 :interactive "P"
1376 :modifier-p t)
1377 (emacs-lock-mode (if (integerp arg) arg 'toggle)))
1378
1364(define-ibuffer-op ibuffer-do-delete () 1379(define-ibuffer-op ibuffer-do-delete ()
1365 "Kill marked buffers as with `kill-this-buffer'." 1380 "Kill marked buffers as with `kill-this-buffer'."
1366 (:opstring "killed" 1381 (:opstring "killed"
@@ -2513,6 +2528,7 @@ Operations on marked buffers:
2513 `\\[ibuffer-do-view-other-frame]' - View the marked buffers in another frame. 2528 `\\[ibuffer-do-view-other-frame]' - View the marked buffers in another frame.
2514 `\\[ibuffer-do-revert]' - Revert the marked buffers. 2529 `\\[ibuffer-do-revert]' - Revert the marked buffers.
2515 `\\[ibuffer-do-toggle-read-only]' - Toggle read-only state of marked buffers. 2530 `\\[ibuffer-do-toggle-read-only]' - Toggle read-only state of marked buffers.
2531 `\\[ibuffer-do-toggle-lock]' - Toggle lock state of marked buffers.
2516 `\\[ibuffer-do-delete]' - Kill the marked buffers. 2532 `\\[ibuffer-do-delete]' - Kill the marked buffers.
2517 `\\[ibuffer-do-isearch]' - Do incremental search in the marked buffers. 2533 `\\[ibuffer-do-isearch]' - Do incremental search in the marked buffers.
2518 `\\[ibuffer-do-isearch-regexp]' - Isearch for regexp in the marked buffers. 2534 `\\[ibuffer-do-isearch-regexp]' - Isearch for regexp in the marked buffers.