emacs-devel
[Top][All Lists]
Advanced

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

RE: $HOME default on w32


From: Jay Finger
Subject: RE: $HOME default on w32
Date: Wed, 27 Oct 2004 10:14:29 -0700

Stefan, I agree with your summary of what the two scenarios are.

CSIDL_PERSONAL (i.e. My Documents) is per-user.  By default this is equal to
"$USERPROFILE\My Documents".  On networked systems My Documents is often
redirected to a user-specific location on the network so that users can have
one directory of data.  The system also does sync'ing so that when offline
(e.g. the laptop is not on the network) the data is still available.

CSIDL_PERSONAL wouldn't be set to have multiple users pointing at one
directory unless an admin really wanted that, in which case I think it would
be ok if emacs followed that.

So I think CSIDL_PERSONAL would meet both 1 and 2.

Just to confuse the issue a little:-) there are two others that you might
want to consider, but I don't think they're correct for $HOME.
CSIDL_APPDATA is application specific data (e.g. where an app might save
it's own metadata that users aren't entirely aware of).  For example,
Microsoft Outlook saves some user settings in
CSIDL_APPDATA\Microsoft\Outlook\...  This directory is by default at
"$USERPROFILE\Application Data", but may roam with the user from machine to
machine.  In other words, it is user specific, but might not be machine
specific.

There is also CSIDL_LOCAL_APPDATA.  It is similar to CSIDL_APPDATA, but with
the promise that it will not roam.  In other words it is both user-specific
and machine-specific.

So, if emacs was trying to get a "Designed for Microsoft Windows XP" logo
:-) it might make sense for some things like saved window configuration or
location of backup files to go into CSIDL_APPDATA\GNU\Emacs\...

Personally, I think that $HOME (~) should be CSIDL_PERSONAL, and that's good
enough for now.

jay

> -----Original Message-----
> From: Stefan Monnier [mailto:address@hidden
> Sent: Wednesday, October 27, 2004 5:59 AM
> To: Stephan Stahl
> Cc: Jay Finger; 'Kai Grossjohann' ; address@hidden
> Subject: Re: $HOME default on w32
> 
> >> So what the difference between the two (conceptually) ?
> >> Which one should we use ?
> >> What does it mean if $USERPROFILE points to C:/foo/bar and
> CSIDL_PERSONAL
> >> points to U:/toto/titi ?  What kind of file should go where ?
> 
> > As far as i understand it $USERPROFILE points to the place where the
> > system puts the user files.. (directories like "Cookies",
> > "Favorites", "Start Menu").
> > While "My Documents" holds the users own files.
> 
> > FWIW i use "My Documents" as $HOME because it is the most accessible
> > place when working with windowze.  Every filedialog has an item "My
> > Documents", the second folder in the windowze file explorer is "My
> > Documents".
> 
> So there are two issues w.r.t $HOME:
> 1 - $HOME is used for convenience so the user can access his files with
> the
>     ~ shorthand.
> 2 - $HOME is used to find user-specific (as opposed to global) settings in
>     files such as ~/.emacs.
> 
> Number 2 tells us $HOME should be set to $USERPROFILE whereas number 1
> would
> tend to prefer CSIDL_PERSONAL.
> 
> I find number 2 much more important, so I stick to my original idea.
> 
> 
>         Stefan






reply via email to

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