help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Insert word at point in minibuffer


From: Nick Sandow
Subject: Re: Insert word at point in minibuffer
Date: Sat, 16 Aug 2008 11:31:27 -0700
User-agent: Thunderbird 2.0.0.16 (Windows/20080708)

Hello again,

Actually, the code below is broken. Allow me to try posting that again. As mentioned before, this allows you to yank into the minibuffer the word at point.

Really, what I want to know is, can this be done "out of the box" in Emacs?

Here's the code:

(defun badger-minibuffer-yank-word ()
 "Insert into the minibuffer the word at point in the selected
window.  If invoked outside of the minibuffer, throw an error.

A good way to use this function is to bind it to a key in
mini-buffer-local-map, like so:

 (define-key
   minibuffer-local-map (kbd \"C-w\") 'badger-minibuffer-yank-word)

If point is not at a word, throw an error."
 (interactive)
 (insert (save-excursion
    (set-buffer (window-buffer (minibuffer-selected-window)))
    (thing-at-point 'word))))
(define-key minibuffer-local-map (kbd "M-w") 'badger-minibuffer-yank-word)

The Badger wrote:
Hi,

I wanted to be able to insert the word at point into the minibuffer. This is useful when doing, for example, M-x query-replace on the word at point. You run the query-replace, hit a key to put the current word into the minibuffer, and go from there. Quite often I want to do this, so it saves time over typing the word in over and over.

My solution is presented below. However, can this be done out of the box in Emacs? The less custom code I have to write, the better. God knows I have enough of that in Emacs already.


(defun badger-minibuffer-yank-word ()
 "Insert into the minibuffer the word at point in the selected
window.  If invoked outside of the minibuffer, throw an error.

A good way to use this function is to bind it to a key in
mini-buffer-local-map, like so:

 (define-key
   minibuffer-local-map (kbd \"C-w\") 'njs-buffer-yank)

If point is not at a word, throw an error."

 (interactive)
 (insert (njs-call-in-buffer (lambda () (thing-at-point 'word))
(window-buffer (minibuffer-selected-window))))
  (save-excursion
    (set-buffer (window-buffer (minibuffer-selected-window)))
    (thing-at-point 'word)))
(define-key minibuffer-local-map (kbd "M-w") 'badger-minibuffer-yank-word)







reply via email to

[Prev in Thread] Current Thread [Next in Thread]