[slime-cvs] CVS update: slime/ChangeLog slime/swank-loader.lisp slime/slime.el

Helmut Eller heller at common-lisp.net
Thu Jan 19 22:56:19 UTC 2006


Update of /project/slime/cvsroot/slime
In directory common-lisp:/tmp/cvs-serv3035

Modified Files:
	ChangeLog swank-loader.lisp slime.el 
Log Message:
Return to the previous loading strategy: load everything when
swank-loader is loaded.  It's just to convenient to give that up.  To
customize the fasl directories, the new variable
swank-loader:*fasl-directory* can be set before loading swank-loader.

* swank-loader.lisp (*fasl-directory*, *source-directory*): New variables.  
 (load-swank): Call it during loading.


Date: Thu Jan 19 16:56:19 2006
Author: heller

Index: slime/ChangeLog
diff -u slime/ChangeLog:1.828 slime/ChangeLog:1.829
--- slime/ChangeLog:1.828	Tue Jan 17 14:34:19 2006
+++ slime/ChangeLog	Thu Jan 19 16:56:16 2006
@@ -1,3 +1,15 @@
+2006-01-19  Helmut Eller  <heller at common-lisp.net>
+
+	Return to the previous loading strategy: load everything when
+	swank-loader is loaded.  It's just to convenient to give that up.
+	To customize the fasl directories, the new variable
+	swank-loader:*fasl-directory* can be set before loading
+	swank-loader.
+	
+	* swank-loader.lisp (*fasl-directory*, *source-directory*): New
+	variables.
+	(load-swank): Call it during loading.
+
 2006-01-14  Helmut Eller  <heller at common-lisp.net>
 
 	* slime.el (slime-compile-defun): If point was at the opening


Index: slime/swank-loader.lisp
diff -u slime/swank-loader.lisp:1.54 slime/swank-loader.lisp:1.55
--- slime/swank-loader.lisp:1.54	Tue Jan 17 14:29:58 2006
+++ slime/swank-loader.lisp	Thu Jan 19 16:56:16 2006
@@ -8,9 +8,22 @@
 ;;; are disclaimed.
 ;;;
 
+;; If you want customize the source- or fasl-directory you can set
+;; swank-loader:*source-directory* resp. swank-loader:*fasl-directory*
+;; before loading this files. (you also need to create the
+;; swank-loader package.)
+;; E.g.:
+;;
+;;   (make-package :swank-laoder)
+;;   (defparameter swank-loader::*fasl-directory* "/tmp/fasl/")
+;;   (load ".../swank-loader.lisp")
+
+
 (cl:defpackage :swank-loader
   (:use :cl)
-  (:export :load-swank))
+  (:export :load-swank 
+           :*source-directory*
+           :*fasl-directory*))
 
 (cl:in-package :swank-loader)
 
@@ -151,13 +164,20 @@
                              source-directory))
           `("swank-backend" ,@*sysdep-files* "swank")))
 
+(defvar *source-directory* (or *load-pathname*
+                               *default-pathname-defaults*)
+  "The directory where to look for the source.")
+
+(defvar *fasl-directory* (default-fasl-directory)
+  "The directory where fasl files should be placed.")
+
 (defun load-swank (&key 
-                   (fasl-directory (default-fasl-directory))
-                   (source-directory #.(or *compile-file-pathname*
-                                           *load-pathname*
-                                           *default-pathname-defaults*)))
+                   (source-directory *source-directory*)
+                   (fasl-directory *fasl-directory*))
   (compile-files-if-needed-serially (swank-source-files source-directory) 
                                     fasl-directory)
   (funcall (intern (string :warn-unimplemented-interfaces) :swank-backend))
   (load-site-init-file source-directory)
   (load-user-init-file))
+
+(load-swank)
\ No newline at end of file


Index: slime/slime.el
diff -u slime/slime.el:1.576 slime/slime.el:1.577
--- slime/slime.el:1.576	Tue Jan 17 14:26:07 2006
+++ slime/slime.el	Thu Jan 19 16:56:18 2006
@@ -1490,9 +1490,8 @@
                                    (concat slime-path slime-backend))))
         (encoding (slime-coding-system-cl-name coding-system))
         (filename (slime-to-lisp-filename port-filename)))
-    (format "%S\n%S\n%S\n\n"
+    (format "%S\n%S\n\n"
             `(load ,loader :verbose t)
-            `(swank-loader:load-swank)
             `(swank:start-server ,filename :external-format ,encoding))))
 
 (defun slime-swank-port-file ()
@@ -2270,7 +2269,7 @@
         (let ((pkg (ignore-errors (read (current-buffer)))))
           (if pkg (format "%S" pkg)))))))
 
-;;; Synchronous requests is implemented in terms of asynchronous
+;;; Synchronous requests are implemented in terms of asynchronous
 ;;; ones. We make an asynchronous request with a continuation function
 ;;; that `throw's its result up to a `catch' and then enter a loop of
 ;;; handling I/O until that happens.




More information about the slime-cvs mailing list