Invoking Emacs from a "temporary environment"

Dani Moncayo <[email protected]>
Newsgroups gmane.emacs.windows
Message-ID <CAH8Pv0gZp5Z1K0Ao6LRQtdBSr6XSU3bP28UU8-_2r7m3GTe2RQ@mail.gmail.com>
Hi,

I'm on a Windows 8 machine, and I'd like to invoke Emacs from a
temporary environment that sets the HOME variable to the directory I
want (because I don't want to set that variable at system level).

This approach work when I start an interactive cmd console and do:
  set HOME=C:\whatever
  C:\path\to\runemacs.exe

But if I try to do everything with this single command (intended for
the target of a shortcut):
   cmd /C "set HOME=C:\whatever &&  C:\path\to\runemacs.exe"

I see an Emacs session with a *Warnings* buffer and this text inside:
  Warning (initialization): Unable to create `user-emacs-directory'
(~/.emacs.d/).
  Any data that would normally be written there may be lost!
  If you never want to see this message again,
  customize the variable `user-emacs-directory-warning'.

Also, I observe that that Emacs session hasn't taken the configuration
I have under "C:\whatever", even though "C-x d ~/ <RET>" shows the
contents of "C:\whatever".

I've also tried this command:
  cmd /C "set HOME=C:\whatever &&  set"

and I see that the last "set" shows a HOME environment variable with a
value of "C:\whatever", as expected.

So, why doesn't Emacs do the right thing when invoked that way?  Any
idea what's going on here?

TIA.

-- 
Dani Moncayo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.