emacs-devel
[Top][All Lists]
Advanced

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

Re: M-! M-n should fetch filename (Re: FFAP)


From: Stefan Monnier
Subject: Re: M-! M-n should fetch filename (Re: FFAP)
Date: Tue, 10 Nov 2009 12:29:36 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

> ***************
> *** 2136,2143 ****
>     (interactive
>      (list
>       (read-shell-command "Shell command: " nil nil
> !                     (and buffer-file-name
> !                          (file-relative-name buffer-file-name)))
>       current-prefix-arg
>       shell-command-default-error-buffer))
>     ;; Look for a handler in case default-directory is a remote file name.
> --- 2152,2163 ----
>     (interactive
>      (list
>       (read-shell-command "Shell command: " nil nil
> !                     (let ((filename
> !                            (cond
> !                             ((eq major-mode 'dired-mode)
> !                              (dired-get-filename nil t))
> !                             (buffer-file-name))))
> !                       (and filename (file-relative-name filename))))
>       current-prefix-arg
>       shell-command-default-error-buffer))
>     ;; Look for a handler in case default-directory is a remote file name.

I think if you rewrite it to

                        (let ((filename
                               (cond
                                (buffer-file-name)
                                ((eq major-mode 'dired-mode)
                                 (dired-get-filename nil t)))))
                          (and filename (file-relative-name filename))))

it's a lot more clear why it's useful (it adds data, rather than just
changing one data for another).


        Stefan




reply via email to

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