chiark / gitweb /
dot/lisp-init.lisp: Work in the `mdw-hacks' package rather than `cl-user'.
[profile] / dot / lisp-init.lisp
index fdb222970e7f918c6b2cff15be970bba5fac6c16..b374e54a4807319e54728b02e7b0be75b93f34d0 100644 (file)
@@ -1,7 +1,8 @@
-(defpackage #:mdw-hacks
+(cl:defpackage #:mdw-hacks
   (:use #:cl)
   (:export #:crank-swank))
-(use-package '#:mdw-hacks)
+(cl:defparameter mdw-hacks::*previous-package* cl:*package*)
+(cl:in-package #:mdw-hacks)
 
 ;; Obtain ASDF from somewhere.
 #+sbcl (require :asdf)
@@ -22,25 +23,20 @@ (setf *compile-verbose* nil)
 
 ;; 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)
-#+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")
-                                           #+cmu (unix:unix-getenv "HOME")
-                                           "/home/mdw")
-                                       "/"))))
+#+(and unix (or sbcl clisp))
+(let* ((#1=#:homestring (or #+sbcl (sb-ext:posix-getenv "HOME")
+                           #+clisp (ext:getenv "HOME")
+                           #+cmu (unix:unix-getenv "HOME")
+                           "/home/mdw"))
+       (#2=#:home (pathname (concatenate 'string #1# "/"))))
   (setf (logical-pathname-translations "HOME")
-       `(("HOME:**;*.*.*" ,(merge-pathnames "**/*.*" #1# nil)))))
+       `(("HOME:**;*.*.*" ,(merge-pathnames "**/*.*" #2# 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)
@@ -66,3 +62,4 @@ (defun mdw-hacks:crank-swank (&rest #1=#:args)
 ;; Done.
 (pushnew :mdw *features*)
 ;;#+(and cmu mp) (mp::startup-idle-and-top-level-loops)
+(setf *package* *previous-package*)