aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ibuffer.el27
1 files changed, 21 insertions, 6 deletions
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el
index 0fd29719344..78dab1c93e5 100644
--- a/lisp/ibuffer.el
+++ b/lisp/ibuffer.el
@@ -579,6 +579,7 @@ directory, like `default-directory'."
579 (define-key map (kbd "R") 'ibuffer-do-rename-uniquely) 579 (define-key map (kbd "R") 'ibuffer-do-rename-uniquely)
580 (define-key map (kbd "S") 'ibuffer-do-save) 580 (define-key map (kbd "S") 'ibuffer-do-save)
581 (define-key map (kbd "T") 'ibuffer-do-toggle-read-only) 581 (define-key map (kbd "T") 'ibuffer-do-toggle-read-only)
582 (define-key map (kbd "L") 'ibuffer-do-toggle-lock)
582 (define-key map (kbd "r") 'ibuffer-do-replace-regexp) 583 (define-key map (kbd "r") 'ibuffer-do-replace-regexp)
583 (define-key map (kbd "V") 'ibuffer-do-revert) 584 (define-key map (kbd "V") 'ibuffer-do-revert)
584 (define-key map (kbd "W") 'ibuffer-do-view-and-eval) 585 (define-key map (kbd "W") 'ibuffer-do-view-and-eval)
@@ -851,6 +852,10 @@ directory, like `default-directory'."
851 '(menu-item "Print" ibuffer-do-print)) 852 '(menu-item "Print" ibuffer-do-print))
852 (define-key-after operate-map [do-toggle-modified] 853 (define-key-after operate-map [do-toggle-modified]
853 '(menu-item "Toggle modification flag" ibuffer-do-toggle-modified)) 854 '(menu-item "Toggle modification flag" ibuffer-do-toggle-modified))
855 (define-key-after operate-map [do-toggle-read-only]
856 '(menu-item "Toggle read-only flag" ibuffer-do-toggle-read-only))
857 (define-key-after operate-map [do-toggle-lock]
858 '(menu-item "Toggle lock flag" ibuffer-do-toggle-lock))
854 (define-key-after operate-map [do-revert] 859 (define-key-after operate-map [do-revert]
855 '(menu-item "Revert" ibuffer-do-revert 860 '(menu-item "Revert" ibuffer-do-revert
856 :help "Revert marked buffers to their associated file")) 861 :help "Revert marked buffers to their associated file"))
@@ -1349,6 +1354,16 @@ Otherwise, toggle read only status."
1349 :modifier-p t) 1354 :modifier-p t)
1350 (read-only-mode (if (integerp arg) arg 'toggle))) 1355 (read-only-mode (if (integerp arg) arg 'toggle)))
1351 1356
1357(define-ibuffer-op ibuffer-do-toggle-lock (&optional arg)
1358 "Toggle locked status in marked buffers.
1359If optional ARG is a non-negative integer, lock buffers.
1360If ARG is a negative integer or 0, unlock buffers.
1361Otherwise, toggle lock status."
1362 (:opstring "toggled lock status in"
1363 :interactive "P"
1364 :modifier-p t)
1365 (emacs-lock-mode (if (integerp arg) arg 'toggle)))
1366
1352(define-ibuffer-op ibuffer-do-delete () 1367(define-ibuffer-op ibuffer-do-delete ()
1353 "Kill marked buffers as with `kill-this-buffer'." 1368 "Kill marked buffers as with `kill-this-buffer'."
1354 (:opstring "killed" 1369 (:opstring "killed"
@@ -1896,11 +1911,9 @@ If point is on a group name, this function operates on that group."
1896 (let ((procs 0) 1911 (let ((procs 0)
1897 (files 0)) 1912 (files 0))
1898 (dolist (string strings) 1913 (dolist (string strings)
1899 (if (string-match "\\(?:\\`([[:ascii:]]+)\\)" string) 1914 (when (get-text-property 1 'ibuffer-process string)
1900 (progn (setq procs (1+ procs)) 1915 (setq procs (1+ procs)))
1901 (if (< (match-end 0) (length string)) 1916 (setq files (1+ files)))
1902 (setq files (1+ files))))
1903 (setq files (1+ files))))
1904 (concat (cond ((zerop files) "No files") 1917 (concat (cond ((zerop files) "No files")
1905 ((= 1 files) "1 file") 1918 ((= 1 files) "1 file")
1906 (t (format "%d files" files))) 1919 (t (format "%d files" files)))
@@ -1912,7 +1925,8 @@ If point is on a group name, this function operates on that group."
1912 (filename (ibuffer-make-column-filename buffer mark))) 1925 (filename (ibuffer-make-column-filename buffer mark)))
1913 (if proc 1926 (if proc
1914 (concat (propertize (format "(%s %s)" proc (process-status proc)) 1927 (concat (propertize (format "(%s %s)" proc (process-status proc))
1915 'font-lock-face 'italic) 1928 'font-lock-face 'italic
1929 'ibuffer-process proc)
1916 (if (> (length filename) 0) 1930 (if (> (length filename) 0)
1917 (format " %s" filename) 1931 (format " %s" filename)
1918 "")) 1932 ""))
@@ -2498,6 +2512,7 @@ Operations on marked buffers:
2498 `\\[ibuffer-do-view-other-frame]' - View the marked buffers in another frame. 2512 `\\[ibuffer-do-view-other-frame]' - View the marked buffers in another frame.
2499 `\\[ibuffer-do-revert]' - Revert the marked buffers. 2513 `\\[ibuffer-do-revert]' - Revert the marked buffers.
2500 `\\[ibuffer-do-toggle-read-only]' - Toggle read-only state of marked buffers. 2514 `\\[ibuffer-do-toggle-read-only]' - Toggle read-only state of marked buffers.
2515 `\\[ibuffer-do-toggle-lock]' - Toggle lock state of marked buffers.
2501 `\\[ibuffer-do-delete]' - Kill the marked buffers. 2516 `\\[ibuffer-do-delete]' - Kill the marked buffers.
2502 `\\[ibuffer-do-isearch]' - Do incremental search in the marked buffers. 2517 `\\[ibuffer-do-isearch]' - Do incremental search in the marked buffers.
2503 `\\[ibuffer-do-isearch-regexp]' - Isearch for regexp in the marked buffers. 2518 `\\[ibuffer-do-isearch-regexp]' - Isearch for regexp in the marked buffers.