gather.el provides search regexp and kill text. This is not replacing
nor modifying Emacs kill-ring
mechanism. You MUST know about elisp
regular-expression.
Have similar concept of occur
. If I think occur
have line oriented
feature, gather.el have list oriented feature. You can handle the list,
as long as you can handle Emacs-Lisp list object.
Put this file into load-path'ed directory, and byte compile it if desired. And put the following expression into your ~/.emacs.
(require 'gather)
(define-key ctl-x-r-map "\M-w" 'gather-matching-kill-save)
(define-key ctl-x-r-map "\C-w" 'gather-matching-kill)
(define-key ctl-x-r-map "\M-y" 'gather-matched-insert)
(define-key ctl-x-r-map "\M-Y" 'gather-matched-insert-with-format)
(define-key ctl-x-r-map "v" 'gather-matched-show)
********** Emacs 22 or earlier **********
(require 'gather)
(global-set-key "\C-xr\M-w" 'gather-matching-kill-save)
(global-set-key "\C-xr\C-w" 'gather-matching-kill)
(global-set-key "\C-xr\M-y" 'gather-matched-insert)
(global-set-key "\C-xr\M-Y" 'gather-matched-insert-with-format)
(global-set-key "\C-xrv" 'gather-matched-show)
C-x r M-w
: Kill the regexp in current-buffer.
C-x r C-w
: Kill and delete regexp in current-buffer.
C-x r M-y
: Insert killed text to point.
C-x r M-Y
: Insert killed text as formatted text to point.
C-x r v
: View killed text status.
Why gather.el?
- Hope to get list of function names in elisp file buffer.
- C-x r M-w with regexp like "(defun \(.+?\_>\)"
- Now, you can paste function names by C-x r M-y with 1
- Write a external document of functions has been gathered.