From: Aleksandr S. <al....@gm...> - 2010-01-18 17:33:20
|
Hi, On my machine with Mac OS X 10.5.8 TRANSLATE-LOGICAL-PATHNAME seems to be broken. Below is transcript of the session that illustrates that. Please note two points: 1) translate-logical-pathname failed for "SYS:", but succeeded for "SYS:SRC;" 2) it returned a proper pathname for "home", but for "home:Library;" it didn't keep case of characters and returned #P"/Users/asko/library/" while it should return #P"/Users/asko/Library/" On Mac OS X with case-sensitive file-system as it is on my mac, the item 2 leads to producing invalid paths. Here is the transcript: $ sbcl This is SBCL 1.0.34.7, an implementation of ANSI Common Lisp. More information about SBCL is available at <http://www.sbcl.org/>. SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * (translate-logical-pathname "sys:") debugger invoked on a SB-INT:SIMPLE-FILE-ERROR: no translation for #P"SYS:" Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT] Exit debugger, returning to top level. (TRANSLATE-LOGICAL-PATHNAME #P"SYS:")[:EXTERNAL] 0] 0 * (translate-logical-pathname "sys:src;") #P"/Users/asko/Library/sbcl/sbcl/src/" * (setf (logical-pathname-translations "home") `(("**;*.*.*" ,(concatenate 'string (posix-getenv "HOME") "/**/*.*")))) (("**;*.*.*" "/Users/asko/**/*.*")) * (translate-logical-pathname "home:") #P"/Users/asko/" * (translate-logical-pathname "home:Library;") #P"/Users/asko/library/" * Thanks, Aleksandr -- "Perfection is attained by slow degrees. She requires the hand of time." – Voltaire |