summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/buff-menu.el11
2 files changed, 19 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 237518c3eea..f1b73026f1e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
+2013-07-03 Matthias Meulien <orontee@gmail.com>
+
+ * buff-menu.el (Buffer-menu-mode-map): Bind "M-s a C-o" to
+ `Buffer-menu-multi-occur'. Add it to the menu.
+ (Buffer-menu-mode): Document it in docstring.
+ (Buffer-menu-multi-occur): New command. (Bug#14673)
+
2013-07-03 Dmitry Gutov <dgutov@yandex.ru>
* progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more
@@ -999,6 +1006,7 @@
2013-06-18 Matthias Meulien <orontee@gmail.com>
* tabify.el (untabify, tabify): With prefix, apply to entire buffer.
+ <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00545.html>
2013-06-18 Glenn Morris <rgm@gnu.org>
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 6c02233e1e2..1eda9f19625 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -129,6 +129,7 @@ commands.")
(define-key map "T" 'Buffer-menu-toggle-files-only)
(define-key map (kbd "M-s a C-s") 'Buffer-menu-isearch-buffers)
(define-key map (kbd "M-s a M-C-s") 'Buffer-menu-isearch-buffers-regexp)
+ (define-key map (kbd "M-s a C-o") 'Buffer-menu-multi-occur)
(define-key map [mouse-2] 'Buffer-menu-mouse-select)
(define-key map [follow-link] 'mouse-face)
@@ -169,6 +170,9 @@ commands.")
(bindings--define-key menu-map [ir]
'(menu-item "Isearch Marked Buffers..." Buffer-menu-isearch-buffers
:help "Search for a string through all marked buffers using Isearch"))
+ (bindings--define-key menu-map [mo]
+ '(menu-item "Multi Occur Marked Buffers..." Buffer-menu-multi-occur
+ :help "Show lines matching a regexp in marked buffers using Occur"))
(bindings--define-key menu-map [s3] menu-bar-separator)
(bindings--define-key menu-map [by]
'(menu-item "Bury" Buffer-menu-bury
@@ -226,6 +230,7 @@ In Buffer Menu mode, the following commands are defined:
buffer selected before this one in another window.
\\[Buffer-menu-isearch-buffers] Incremental search in the marked buffers.
\\[Buffer-menu-isearch-buffers-regexp] Isearch for regexp in the marked buffers.
+\\[Buffer-menu-multi-occur] Show lines matching regexp in the marked buffers.
\\[Buffer-menu-visit-tags-table] visit-tags-table this buffer.
\\[Buffer-menu-not-modified] Clear modified-flag on that buffer.
\\[Buffer-menu-save] Mark that buffer to be saved, and move down.
@@ -477,6 +482,12 @@ If UNMARK is non-nil, unmark them."
(interactive)
(multi-isearch-buffers-regexp (Buffer-menu-marked-buffers)))
+(defun Buffer-menu-multi-occur ()
+ "Show all lines in marked buffers containing a match for a regexp."
+ (interactive)
+ (let ((regexp (occur-read-primary-args)))
+ (multi-occur (Buffer-menu-marked-buffers) (car regexp))))
+
(defun Buffer-menu-visit-tags-table ()
"Visit the tags table in the buffer on this line. See `visit-tags-table'."