[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed
From: |
Leo Liu |
Subject: |
bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed |
Date: |
Fri, 04 Jan 2013 11:49:59 +0800 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.2.91 (OS X 10.8.2) |
On 2012-12-15 18:59 +0800, Juri Linkov wrote:
> I agree it shouldn't matter in which buffer FUNCTION is called.
> The problem is caused by the flawed design of dired-x where
> `dired-guess-default' doesn't propagate the value of `files'
> to the evaluated expressions in `dired-guess-shell-alist-default'.
Ideally, yes. But not common in elisp where stateful is the norm. We
just have to use the least surprise principle.
> Also note how `dired-guess-shell-alist-default' is forced to use the
> dynamically bound variable `file'.
>
> The proper fix would be to redesign `dired-guess-shell-alist-default'
> to funcall lambdas with one arg `files' instead of using `eval'.
>
> So instead of
>
> (setq dired-guess-shell-alist-user
> '(("." (let ((files (dired-get-marked-files t current-prefix-arg)))
> (let (dired-guess-shell-alist-user)
> (dired-guess-default files))))))
>
> Leo would be able to use
>
> (setq dired-guess-shell-alist-user
> '(("." (lambda (files)
> (let (dired-guess-shell-alist-user)
> (dired-guess-default files))))))
>
> This could help to move useful features from dired-x.el to dired-aux.el.
This seems like a good design. Cheers.
Leo
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, (continued)
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, martin rudalics, 2013/01/07
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Leo Liu, 2013/01/08
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Glenn Morris, 2013/01/08
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Glenn Morris, 2013/01/08
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Leo Liu, 2013/01/08
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Leo Liu, 2013/01/09
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Juri Linkov, 2013/01/09
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Leo Liu, 2013/01/09
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Leo Liu, 2013/01/18
- bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed, Leo Liu, 2013/01/08
bug#13152: 24.2.90; [REGRESSION] dired-get-marked-files changed,
Leo Liu <=