Subject: Re: bug#7518: image-dired defcustom'd paths

From: MON KEY <[email-masked]>
Date: Sun, 5 Dec 2010 19:56:36 -0500

On Sat, Dec 4, 2010 at 8:05 PM, Chong Yidong <[email-masked]> wrote:
> MON KEY <[email-masked]> writes:

>> AFAIK `image-dired' isn't loaded by default. Why should _each_ of
>> these variables elevate to creation of a `user-emacs-directory'
>> if/when one doesn't already exit?
>

> This sentence does not parse.
>

>> Why should _each_ of these variables elevate to creation of a
>> `user-emacs-directory' if/when one doesn't already exit?
>

`image-dired-dir' is the "top-level" defcustom from which other related
`image-dired-*' vars derive their path default values.  As such, only
`image-dired-dir' need evaluate a form containing `locate-user-emacs-file'
any other of the paths which "inherit" from `image-dired-dir' will either find
an existing directoy already available or will incorrectly create one which
may otherwise be separate from a user paths specified the in some other
`image-dired-*' var.

IOW, "hands of my directory tree image-dired!"

Moreover, I would argue that none of the `image-dired-*' vars should
be hardwired
by default to `user-home-directory' not only is this non-transparently intrusive
but it is potentially error prone on w32.

Let the user explicitly specify a path for these instead if this is
what is wanted.

As an aside, none of the `image-dired-*' path customizations have :type
specializations more specific than string
so at the very least it isn't immediately clear that these vars are creat.

>
> The usage of locate-user-emacs-file in image-dired is correct, as far as
> I can tell.
>

Maybe not. :)
Most other packages don't operate this way to they?

--
/s_P\