dot/lisp-init.lisp: Turns out SBCL has a magic function to set `SYS'.
[profile] / dot / lisp-init.lisp
index e060815..7cccc83 100644 (file)
 
 ;; Tell SBCL where to find its source source.
 #+sbcl
-(let ((#1=#:sbcl-src #p"/usr/share/sbcl-source/"))
-  (flet ((#2=#:sbcl-dir (#3=#:p)
-          (merge-pathnames #3# #1#)))
-    (setf (logical-pathname-translations "SYS")
-         `(("SYS:SRC;**;*.*.*" ,(#2# "src/**/*.*"))
-           ("SYS:CONTRIB;**;*.*.*" ,(#2# "contrib/**/*.*"))))))
+(sb-ext:set-sbcl-source-location #p"/usr/share/sbcl-source/")
 
+;; Tell some Lisps about my home directory.
 #+sbcl (require :sb-posix)
-#+(and unix (or sbcl cmu))
+#+cmu (ext:clear-search-list "HOME")
+#+(and unix (or sbcl clisp cmu))
 (let ((#1=#:home (pathname (concatenate 'string
                                        (or #+sbcl (sb-posix:getenv "HOME")
                                            #+clisp (ext:getenv "HOME")
                                            "/home/mdw")
                                        "/"))))
   (setf (logical-pathname-translations "HOME")
-       `(("HOME:**;*.*.*" ,(merge-pathnames "**/*.*" #1#)))))
+       `(("HOME:**;*.*.*" ,(merge-pathnames "**/*.*" #1# nil)))
+       (logical-pathname-translations "CL")
+       '(("CL:SOURCE;**;*.*.*" #p"/usr/share/common-lisp/source/**/*.*")
+         ("CL:SYSTEMS;**;*.*.*" #p"/usr/share/common-lisp/systems/**/*.*"))))
 
 ;; Various fixings.
 #+clisp (setf custom:*parse-namestring-ansi* t)