0

I'm writing Common Lisp on WinXP in Emacs (downloaded a fork of Lispbox that comes with CCL 1.11 and changed the default .emacs.d to Spacemacs)

I have a .bat file that launches emacs and sets HOME to my custom home directory (I want this setup to be portable)

My files are organized in the following fashion:

lispbox
|-home
 |-src
  |-projects and stuff
 |-.emacs.d
|-mingw
|-emacs
|-ccl
|-git
|-aspell
|-quicklisp
|-lispbox.bat (this sets HOME to the home folder and does some PATH magic before launching emacs) 

It works in elisp ((file-truename "~") returns d:/Program Files/Lispbox/lispbox/home), and CL's (getenv "HOME") returns my custom directory
But when I try to reference ~ in stuff like quickproject or pathname it returns the default C:\Documents and Settings\USER (quickproject created my project at C:\Documents and Settings\USER\src\myproj)

Is there a way to make CCL use my home directory whenever I refer to ~ (preferably without affecting files outside my lisp directory, I don't want to symlink my home to the system home or something)?

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
ohmree
  • 375
  • 3
  • 15
  • CCL on Windows appears to determine a user's home directory from the `USERPROFILE` environment variable: [get-user-home-dir](https://github.com/Clozure/ccl/blob/master/level-1/linux-files.lisp#L939) and [tilde-expand](https://github.com/Clozure/ccl/blob/master/level-1/linux-files.lisp#L666). – dkim Mar 31 '17 at 11:20
  • It worked! thanks :) – ohmree Mar 31 '17 at 18:56

0 Answers0