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

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

Re: emacs equivalent of vi %


From: Lennart Borgman (gmail)
Subject: Re: emacs equivalent of vi %
Date: Thu, 14 Aug 2008 12:01:42 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071031 Thunderbird/2.0.0.9 Mnenhy/0.7.5.666

Rustom Mody wrote:
Thanks folks!  Heres the code I have:

(define-key minibuffer-local-map "%" 'percentsub)
(defun percentsub ()
  (interactive)
  (insert (file-name-nondirectory
           (buffer-file-name
            (window-buffer (minibuffer-selected-window))))))

Prior to Lennarts suggestion I had hacked together
(cadr (buffer-list))
in place of the last line which was of course quite unacceptable

Any further suggested improvements?  I guess this is going to fail in
some cases when theres no filename...

If you want to add it just to the ":" prompt:

(eval-after-load 'viper-keym
  '(define-key viper-ex-cmd-map [?%] 'percentsub))

On Thu, Aug 14, 2008 at 5:44 AM, Lennart Borgman (gmail)
<address@hidden> wrote:
Nikolaj Schumacher wrote:
Nikolaj Schumacher <address@hidden> wrote:

"Rustom Mody" <address@hidden> wrote:

Bind the character '%' to
(file-name-nondirectory (buffer-file-name))
Also, note that you'll need to make an interactive function out of the
form to bind it to a key.
Oups, that's not all...
It won't work, because `buffer-file-name' will of course return the
minibuffer's file name (i.e. none).  I'm currently not aware of an easy
way to get the originating buffer from the minibuffer.  Sorry.

Maybe minibuffer-selected-window + window-buffer?






reply via email to

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