chiark / gitweb /
dot/emacs: Bind a key to `magit-toggle-buffer-lock'.
[profile] / dot / lisp-init.lisp
index 54df25f65a80c85edab9850e2df808ff073d1602..64faf2bdb0fe24c790012115914d4f7fbff3c37a 100644 (file)
@@ -31,22 +31,51 @@ (let ((old-output *standard-output*)
                                       si:*tpl-prompt-hook* old-prompt)
                                 (si::tpl-prompt)))))
 
+#+ccl
+(setf ccl::*inhibit-greeting* t)
+
+#+abcl
+(setf ext:*warn-on-redefinition* nil)
+
 ;; Obtain ASDF from somewhere.
 (require "asdf")
 
-;; Get CMU CL to quit on EOF.
+;; Get CMU CL and CCL to quit on EOF.
 #+cmu
 (setf ext:*batch-mode* t)
+#+ccl
+(setf ccl:*quit-on-eof* t)
 
 ;; Tell SBCL where to find its source source.
 #+sbcl
 (sb-ext:set-sbcl-source-location #p"/usr/share/sbcl-source/")
 
+;; Get SBCL to shut up about package variance.  This is a standard result of
+;; my approach to symbol exports, and I don't care.
+#+sbcl
+(progn
+  (unless (fboundp 'real-note-package-variance)
+    (setf (symbol-function 'real-note-package-variance)
+           (symbol-function 'sb-impl::note-package-variance)))
+  (handler-bind ((sb-ext:package-lock-violation #'continue)
+                (sb-kernel:redefinition-warning #'muffle-warning))
+    (defun sb-impl::note-package-variance
+       (&rest args &key package &allow-other-keys)
+      (let ((ignore (getf sb-ext:*on-package-variance* :ignore)))
+       (unless (or (eq ignore t)
+                   (and (listp ignore)
+                        (member (package-name package) ignore)))
+         (apply #'real-note-package-variance args)))))
+  (setf sb-ext:*on-package-variance* '(:ignore t)))
+
 ;; Tell some Lisps about my home directory.  CMU CL already has a search list
-;; which does the same job.
-#+(and unix (or sbcl clisp ecl))
+;; which does the same job, and CCL sets up a logical-pathname host.
+#+(and unix (or sbcl clisp ecl abcl))
 (let* ((homestring (or #+sbcl (sb-ext:posix-getenv "HOME")
-                      #+(or clisp ecl) (ext:getenv "HOME")
+                      #+(or clisp ecl abcl) (ext:getenv "HOME")
+                      #+abcl (java:jstatic "getProperty"
+                                           "java.lang.System"
+                                           "user.home")
                       "/home/mdw"))
        (home (pathname (concatenate 'string homestring "/"))))
   (setf (logical-pathname-translations "HOME")
@@ -97,7 +126,10 @@ (set-dispatch-macro-character
    (declare (ignore char arg))
    (values (read-line stream))))
 
-;; Start up swank.
+;; Use double-precision by default.
+(setf *read-default-float-format* 'double-float)
+
+;; Start up Swank.
 (export 'crank-swank)
 (defun crank-swank (&rest args)
   (let ((swank (find-package "SWANK")))