[slime-devel] does change-directory change *default-pathname-defaults*

On clisp 2.48+cygwin and slime of 2010-09-03, changing directory leaves *default-pathname-defaults* unchanged. Is that a feature or bug? Thanks, Mirko

Mirko Vukovic <mirko.vukovic@gmail.com> writes:
It's a feature. EXT:CD changes the POSIX current working directory. Setting *default-pathname-defaults* changes the default lisp pathname defaults. Changing them doesn't change the default-directory in emacs either. Well, if you want to keep synchronized the POSIX current working directory with *default-pathname-defaults*, you could use com.informatimago.common-lisp.browser:cd instead of ext:cd. http://www.informatimago.com/develop/lisp/com/informatimago/common-lisp/brow... It has a hook to let your update *default-pathname-defaults*. I put: (PUSH (FUNCTION EXT:CD) COM.INFORMATIMAGO.COMMON-LISP.BROWSER:*CHANGE-DIRECTORY-HOOK*) (CD (EXT:CD)) in my ~/.clisprc.lisp to initialize it. And if you're using slime, you could also update default-directory in emacs too from this hook. Notice that swank has it's own current directory: swank:set-default-directory swank:default-directory which, in the case of clisp is hardwired to ext:cd, but which doesn't update default-directory in emacs. -- __Pascal Bourguignon__ http://www.informatimago.com/

* (Pascal J. Bourguignon) <87ocafa8xj.fsf@kuiper.lan.informatimago.com> : Wrote on Wed, 27 Oct 2010 18:37:28 +0200: | |> On clisp 2.48+cygwin and slime of 2010-09-03, changing directory |> leaves *default-pathname-defaults* unchanged. |> |> Is that a feature or bug? | | It's a feature. | | EXT:CD changes the POSIX current working directory. | | Setting *default-pathname-defaults* changes the default lisp pathname | defaults. | | Changing them doesn't change the default-directory in emacs either. | | | Well, if you want to keep synchronized the POSIX current working | directory with *default-pathname-defaults*, you could use | com.informatimago.common-lisp.browser:cd instead of ext:cd. IME, the only sensible value for *d-p-d* is #p"". Which is reason never to use slime's change directory functions. -- Madhu
participants (4)
-
Madhu
-
Mirko Vukovic
-
pjb@informatimago.com
-
Stas Boukarev