>>>>> "Pascal" == Pascal Bourguignon <[EMAIL PROTECTED]> writes:
Pascal> The translation for PACKAGES maps an absolute logical pathname:
Pascal> (#P"PACKAGES:COM;INFORMATIMAGO;**;*.*.*"
Pascal> to a relative physical pathname:
Pascal> #P"**/*.*.~*~")
Pascal> Unfortunately, when I translate a pathname:
Pascal> (translate-logical-pathname
Pascal> "PACKAGES:COM;INFORMATIMAGO;COMMON-LISP;UTILITY.LISP")
Pascal> I get an absolute pathname:
Pascal> #P"/common-lisp/utility.lisp"
Pascal> I wanted:
Pascal> #P"common-lisp/utility.lisp"
Ah, I see. Hmm. I guess the question is what is
(translate-pathname
"PACKAGES:COM;INFORMATIMAGO;COMMON-LISP;UTILITY.LISP"
#P"PACKAGES:COM;INFORMATIMAGO;**;*.*.*"
#P"**/*.*.~*~")
supposed to return. I'll have to read up on that. The comments in
the code say that :relative or :absolute is taken from the source
directory. Don't know if that's right or not.
Pascal> (I would have been happy too if the relative physical pathname
generated by:
Pascal> (make-pathname
Pascal> :directory (append
Pascal> (let ((d (pathname-directory
*DEFAULT-PATHNAME-DEFAULTS*)))
Pascal> (or d '(:relative)))
Pascal> '(:wild-inferiors))
Pascal> :name :wild :type :wild :version :wild))))
*default-pathname-defaults* is #p"", which is slightly different from
#p"./". #p"" has a directory slot of nil, but #p"./" has a directory
slot of '(:relative).
Pascal> would have been #P"./**/*.*.~*~" to more clearly mark the
_relative_ property
But #P"./**/*.*" is the same object as #p"**/*.*", so it might be
possible to cause the object to be printed as #p"./**/*.*".
Ray