unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Dani Moncayo <dmoncayo@gmail.com>
Cc: lekktu@gmail.com, 8221-done@debbugs.gnu.org
Subject: bug#8221: 24.0.50; Allowed names for the init file. Windows/POSIX inconsistency
Date: Fri, 11 Mar 2011 13:22:18 +0200	[thread overview]
Message-ID: <83y64luck5.fsf@gnu.org> (raw)
In-Reply-To: <AANLkTi=3TQ0sUyzWHhEJQ3p4PNWvowi3bsoK86Wvx+ek@mail.gmail.com>


Version: 23.4

> Date: Fri, 11 Mar 2011 09:26:20 +0100
> From: Dani Moncayo <dmoncayo@gmail.com>
> Cc: 8221@debbugs.gnu.org
> 
> >> On the other hand, and according to the same info node, C:\ is checked
> >> as one possible "home" directory.
> >
> > I think you're reading more that the info node says. What it says is
> > that Emacs is looking for HOME (the environment variable) and if it
> > finds it, it looks there for the "init file". If that fails, it looks
> > for ".emacs" in C:\; and if that fails, it looks for the AppData dir
> > (which is an alternative to HOME, not to C:\). So it is clear (if a
> > bit inconsistent) that looking for .emacs (specifically) on C:\
> > (specifically) is something done just because of back compatibility.
> >
> 
> Yes, I got a bit confused about the exact procedure. Maybe I was
> somewhat biased, but IMO the current wording is a bit confusing:
> >    The home directory is where your init file `.emacs' is stored.  When
> > Emacs starts, it first checks whether the environment variable `HOME'
> > is set.  If it is, it looks for the init file in the directory pointed
> > by `HOME'.  If `HOME' is not defined, Emacs checks for an existing
> > `.emacs' file in `C:\', the root directory of drive `C:'(1).  If
> > there's no such file in `C:\', Emacs next uses the Windows system calls
> > to find out the exact location of your application data directory.  If
> > that system call fails, Emacs falls back to `C:\'.
> 
> That made me think that the principle was (a) Try to find a suitable
> init file in several directories, and (b) Once an init file is found,
> the "home" directory is thereafter established accordingly.
> 
> Thus, I suggest to revise the wording in that node, to avoid this confusion.

I modified the wording of that section, hopefully it's more clear
now.  The full text is below.

I'm closing this bug; feel free to reopen if something is still
unclear.

  @node Windows HOME
  @section HOME and Startup Directories on MS-Windows
  @cindex @code{HOME} directory on MS-Windows

    The Windows equivalent of the @code{HOME} directory is the
  @dfn{user-specific application data directory}.  The actual location
  depends on your Windows version and system configuration; typical values
  are @file{C:\Documents and Settings\@var{username}\Application Data} on
  Windows 2K/XP/2K3, @file{C:\Users\@var{username}\AppData\Roaming} on
  Windows Vista/7/2K8, and either @file{C:\WINDOWS\Application Data}
  or @file{C:\WINDOWS\Profiles\@var{username}\Application Data} on the
  older Windows 9X/ME systems.  If this directory does not exist or
  cannot be accessed, Emacs falls back to @file{C:\} as the default
  value of @code{HOME}.

    You can override this default value of @code{HOME} by explicitly
  setting the environment variable @env{HOME} to point to any directory
  on your system.  @env{HOME} can be set either from the command shell
  prompt or from the @samp{My Computer}s @samp{Properties} dialog.
  @code{HOME} can also be set in the system registry, for details see
  @ref{MS-Windows Registry}.

    For compatibility with older versions of Emacs@footnote{
  Older versions of Emacs didn't check the application data directory.
  }, if there is a file named @file{.emacs} in @file{C:\}, the root
  directory of drive @file{C:}, and @env{HOME} is set neither in the
  environment nor in the Registry, Emacs will treat @file{C:\} as the
  default @code{HOME} location, and will not look in the application
  data directory, even if it exists.  Note that only @file{.emacs} is
  looked for in @file{C:\}; the older name @file{_emacs} (see below) is
  not.  This use of @file{C:\.emacs} to define @code{HOME} is
  deprecated.

    Whatever the final place is, Emacs sets the internal value of the
  @env{HOME} environment variable to point to it, and it will use that
  location for other files and directories it normally looks for or
  creates in the user's home directory.

    You can always find out where Emacs thinks is your home directory's
  location by typing @kbd{C-x d ~/ @key{RET}}.  This should present the
  list of files in the home directory, and show its full name on the
  first line.  Likewise, to visit your init file, type @kbd{C-x C-f
  ~/.emacs @key{RET}} (assuming the file's name is @file{.emacs}).

  @cindex init file @file{.emacs} on MS-Windows
    The home directory is where your init file is stored.  It can have
  any name mentioned in @ref{Init File}.

  @cindex @file{_emacs} init file, MS-Windows
    Because MS-DOS does not allow file names with leading dots, and
  because older Windows systems made it hard to create files with such
  names, the Windows port of Emacs supports an alternative name
  @file{_emacs} as a fallback, if such a file exists in the home
  directory, whereas @file{.emacs} does not.






  reply	other threads:[~2011-03-11 11:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-10 21:36 bug#8221: 24.0.50; Allowed names for the init file. Windows/POSIX inconsistence Dani Moncayo
2011-03-10 22:17 ` bug#8221: 24.0.50; Allowed names for the init file. Windows/POSIX inconsistency Dani Moncayo
2011-03-10 23:35   ` Dani Moncayo
2011-03-11  2:49     ` Juanma Barranquero
2011-03-11  8:26       ` Dani Moncayo
2011-03-11 11:22         ` Eli Zaretskii [this message]
2011-03-11 11:26       ` Eli Zaretskii
2011-03-10 22:59 ` bug#8221: 24.0.50; Allowed names for the init file. Windows/POSIX inconsistence Jason Rumney
2011-03-11  2:40 ` Juanma Barranquero

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83y64luck5.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=8221-done@debbugs.gnu.org \
    --cc=dmoncayo@gmail.com \
    --cc=lekktu@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).