Parent Directory | Revision Log
|Links to HEAD:||(view) (annotate)|
|Links to SLIME-0-5:||(view) (annotate)|
(accept-connection): Use a character stream to match swank.lisp.
(swank-compile-string): Include only one :SOURCE-PATH attribute in the plist, and replace the front element with a 0 (fixes a problem probably due to recent hacks to the elisp source-path lookups).
*** empty log message ***
Bind *slime-input* and *slime-io* to dummy values.
Move more stuff to swank.lisp.
Report style-warnings separately from notes (patch from Christopher Rhodes). Use REQUIRE to load sb-introspect instead of loading the source file (requires the sb-introspect library to be installed, which doesn't yet happen in the sourceforge-lagged SBCL anoncvs, but does in the real one).
Many fixes for the OpenMCL port: * swank.lisp (apropos-symbols): Change back to using the standard 2-argument APROPOS-LIST and check symbols explicitly when EXTERNAL-ONLY is true. Move loading of sys-dependent backend code into 'swank-loader'. * swank-sbcl.lisp: Moved declarations of *PREVIOUS-COMPILER-CONDITION* into 'swank.lisp' to kill warnings about undefined variables. * swank-openmcl.lisp (handle-compiler-warning): Use source position instead of function name for warning locations. (swank-compile-string): Compile into a temporary file instead of using COMPILE so finding warning positions works when using C-c C-c. (compute-backtrace): Don't display frames without a function. (apropos-list-for-emacs): Implement APROPOS. (who-calls): Implement WHO-CALLS. (completions): Implement COMPLETIONS. Use NIL instead of zero so FRESH-LINE does the right thing. * slime.el (slime-maybe-compile-swank): Removed function---compile the backend using 'swank-loader.lisp' instead. (slime-backend): Changed default backend to 'slime-loader'. (slime-lisp-binary-extension): Deleted as this is no longer needed. * swank-loader.lisp: New file.
Transplanted Helmut's serve-event server to replace the existing thread-using server. SLIME now has no dependency on SB-THREAD
The macro `with-trapping-compiler-notes' is now defined in the portable code, and expands to a call to the backend-defined `call-trapping-compiler-notes' with the body wrapped in a lambda. This is to avoid swank.lisp referring to macros in the backends -- it gets compiled first so it thinks they're functions.
Third portablizing iteration: more refactoring common bits pprint-eval set-package *compiler-notes* clear-compiler-notes *notes-database* clear-note-database features canonicalize-filename compiler-notes-for-file compiler-notes-for-emacs measure-time-interval call-with-compilation-hooks list-all-package-names apropos-symbols print-output-to-string print-description-to-string describe-symbol describe-function apply-macro-expander swank-macroexpand-1 swank-macroexpand disassemble-symbol
Second iteration refactoring common bits: server-port *swank-debug-p* start-server *emacs-io* *slime-output* read-next-form read-form *redirect-output* read-from-emacs send-to-emacs prin1-to-string-for-emacs defslimefun *buffer-package* from-string to-string guess-package-from-string eval-string interactive-eval defslimefun-unimplemented *swank-io-package*
First checkin on the way to rearranging the backends. Rename swank.lisp to swank-cmucl.lisp, then create new swank.lisp which loads an appropriate backend according to *features*. Next, identify common functions in the backends and move them into swank.lisp
First cut at an SBCL backend for SLIME. Note that this requires the SB-INTROSPECT package which is presently only in SBCL CVS HEAD ;;; Cursory testing has found that the following appear to work ;;; ;;; * Symbol completion. ;;; * Evaluation of forms with C-M-x ;;; * Apropos ;;; * Compilation of defuns with C-c C-c ;;; * File compilation with C-c C-k, apparently including error parsing ;;; * Disassembling the symbol at point with C-c M-d ;;; * Describing symbol at point with C-c C-d ;;; * Macroexpanding with C-c RET ;;; * find-definition, using sb-introspect ;;; * Basic debugger stuff: restarts, backtrace, toggle details ;;; * Can now interrupt a busy sbcl with C-c C-g ;;; * Most of the tests ;;; ;;; Things that aren't done/don't work yet: ;;; ;;; * Cross-referencing (nor is it likely, absent XREF port to SBCL) ;;; * testsuite can't find LOOP, reports bogus failure on some arglist lookups ;;; * eval-in-frame ;;; * M-. has an off-by-two (character positions) error ;;; * A slime command to load an asdf system. Note that this might involve ;;; compiling/loading files that Emacs has no buffers for ;;; * Dealing with multiple threads
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
|Powered by ViewVC 1.1.5|