[slim-vim] ECL Slime, first cut

Brad Beveridge brad.beveridge at gmail.com
Tue Apr 25 09:53:08 CDT 2006


> It works fine from within Vim mostly as is; I had to add the swank
> package for some of the code in scraps.lisp to work:
Good.  The reason I didn't try was mostly because I was afraid that I
might crash my Vim :)  And I'm used to using ViLisp - thanks.
When I am just playing with stuff I normally do it in scraps.lisp,
then push it into a real file later.

> (defpackage #:swank
>   (:export #:connection-info
>            #:listener-eval))
Swank  needs its own file (swank-null?), it's a little weird that we
need kinda null symbols so we can send un-evaluated symbols to The
Real Swank.

> The response to swank:connection-info (which you have in scraps)
>
>   (swank-protocol:encode-message '(:emacs-rex (swank:connection-info) nil t 1) *stream*)
>   => "(:return (:ok (:pid 5976 :style nil :lisp-implementation (:type
Ah, yes - I only just added the return handling code.  Obviously
didn't test against connection-info :)
I think that it is almost time to steal destructure-case from Slime to
use in the protocol handlers.

>
> Other than that, so far so good!  Great work!
>
Thanks!  Right now my way of working is to run Emacs and Slime, look
at the slime-events buffer and see what the communication looks like. 
It shouldn't take long to implement the basic Slime commands.  From
what I can see, the fd-handler communications have a lot less commands
that the thread based stuff, though I haven't looked into why this is
yet.  But I figure for the initial work fd-handler style ought to do
fine.

Cheers
Brad


More information about the slim-vim mailing list