Update of /project/mcclim/cvsroot/mcclim/Drei In directory clnet:/tmp/cvs-serv13252/Drei
Modified Files: lisp-syntax.lisp lisp-syntax-swank.lisp Log Message: I broke the Swank-using code in Drei, now unbroke it.
--- /project/mcclim/cvsroot/mcclim/Drei/lisp-syntax.lisp 2007/12/10 21:25:12 1.34 +++ /project/mcclim/cvsroot/mcclim/Drei/lisp-syntax.lisp 2007/12/11 18:46:27 1.35 @@ -165,26 +165,27 @@ (declare (ignore image)) (eval form)))
-(defgeneric compile-string-for-drei (image string package syntax buffer-mark) +(defgeneric compile-string-for-drei (image string package view buffer-mark) (:documentation "Compile and evaluate `string' in `package'. Two values are returned: The result of evaluating `string' and a list of compiler notes. `Buffer' and `buffer-mark' will be used for hyperlinking the compiler notes to the source code.") - (:method (image string package syntax buffer-mark) + (:method (image (string string) package (view drei-buffer-view) + (buffer-mark mark)) (error "Backend insufficient for this operation")))
-(defgeneric compile-form-for-drei (image form syntax buffer-mark) +(defgeneric compile-form-for-drei (image form view buffer-mark) (:documentation "Compile and evaluate `form', which must be a valid Lisp form. Two values are returned: The result of evaluating `string' and a list of compiler notes. `Buffer' and `buffer-mark' will be used for hyperlinking the compiler notes to the source code.") - (:method (image form syntax buffer-mark) + (:method (image form (view drei-syntax-view) (buffer-mark mark)) (compile-string-for-drei image - (let ((*print-base* (base syntax))) + (let ((*print-base* (base (syntax view)))) (write-to-string form)) - *package* syntax buffer-mark))) + *package* view buffer-mark)))
(defgeneric compile-file-for-drei (image filepath package &optional load-p) (:documentation "Compile the file at `filepath' in --- /project/mcclim/cvsroot/mcclim/Drei/lisp-syntax-swank.lisp 2007/12/08 08:53:50 1.6 +++ /project/mcclim/cvsroot/mcclim/Drei/lisp-syntax-swank.lisp 2007/12/11 18:46:27 1.7 @@ -28,6 +28,11 @@ (defclass swank-local-image () ())
+;; We need these modules loaded. +(eval-when (:compile-toplevel :load-toplevel :execute) + (load (swank::find-module "swank-c-p-c")) + (load (swank::find-module "swank-arglists"))) + ;; If this file is loaded, make local Swank the default way of ;; interacting with the image.
@@ -59,7 +64,7 @@ (swank::*buffer-package* package) (swank::*buffer-readtable* *readtable*)) (let ((result (swank::compile-string-for-emacs - string view-name (offset buffer-mark) buffer-file-name)) + string view-name (offset buffer-mark) (princ-to-string buffer-file-name))) (notes (loop for note in (swank::compiler-notes-for-emacs) collect (make-compiler-note note)))) (values result notes))))