DWIM in logical pathname translation?
JP Massar <[email protected]> Sat, 12 Apr 2003 11:43:40 -0700
| Newsgroups | gmane.lisp.corman |
|---|---|
| Message-ID | <[email protected]> |
;; What on earth is going on here?
;; It insists on translating .lsp and .cl file extensions
;; into .lisp file extensions!!
(require 'lp)
(use-package :lp)
(setq *biol-directory* (pathname "C:/Lispcode/biolisp/"))
(progn
(setf (lp::physical-host-type (pathname-device *biol-directory*)) :win32)
(let ((dirstring (namestring *biol-directory*)))
(setf (logical-pathname-translations "biol")
`(("*.*.*" ,dirstring)
("**;*.*.*" ,(concatenate 'string dirstring "**\\"))
(";**;*.*.*" ,(concatenate 'string dirstring "**\\"))
))))
#P"C:\Lispcode\biolisp\"
(("*.*.*" "C:\\Lispcode\\biolisp\\") ("**;*.*.*"
"C:\\Lispcode\\biolisp\\**\\") (";**;*.*.*" "C:\\Lispcode\\biolisp\\**\\"))
;; Looks OK
(translate-logical-pathname "biol:foo.bar")
"C:\\Lispcode\\biolisp\\foo.bar"
(translate-logical-pathname "biol:code;foo.lisp")
"C:\\Lispcode\\biolisp\\code\\foo.lisp"
;; WTF ????? .lsp -> .lisp, .cl -> .lisp
(translate-logical-pathname "biol:code;foo.lsp")
"C:\\Lispcode\\biolisp\\code\\foo.lisp"
(translate-logical-pathname "biol:code;foo.cl")
"C:\\Lispcode\\biolisp\\code\\foo.lisp"
;; Well, at least it doesn't think .c files are lisp code
(translate-logical-pathname "biol:code;foo.c")
"C:\\Lispcode\\biolisp\\code\\foo.c"
-----------------
Why is it doing this, and how can I fix it?
Thanks!