[slimpl] Slimplified

Larry Clapp larry at theclapp.org
Wed Feb 8 05:43:00 CST 2006


On Wed, Feb 08, 2006 at 11:42:13AM +0800, Peter Wright wrote:
> I just ran across your mention of SLIMPL/Slimpl (hmm, all caps or
> not?)

I use both, alas.  We/I'll come up with a consistent naming scheme one
of these days.  :)

> on the VIlisp-script page (on vim.sourceforge.net), and so had
> to try it out. Wow. It... does stuff. :)

*grin*  Yeah, but not enough, yet.  Witness your bug report.

> [Note: I'm using SBCL 0.9.3 on Linux 2.6.15 with SLIMPL 0.04 (I
> think[0])]
> 
> The first possibly-a-bug,-sort-of I'd like to mention is that when I
> (following the instructions at http://www.theclapp.org/slimpl/) do
> the very first ,es (with mapleader ,) of an expression like
> 
> (+ 1 2)
> 
> in a Vim, I get a large dump like so (sorry, long line):
> 
> -------------------------------------------------------------------
[:indentation-update event snipped]
> -------------------------------------------------------------------

That's just one of the many events from Swank that SLIMPL doesn't
handle yet.  No cause for alarm.  Maybe I shouldn't print out unknown
events, though.  (FWIW, I find them helpful -- kind of a reminder of
things left to do.  :)

> However, if I just ctrl-l to clear the mess and then ,es again,
> everything appears to work correctly.

Yes, that's exactly what you're supposed to do.  Maybe I should've
mentioned some of this in the README.  ;)  Sorry.

> (CLISP 2.35 seems fine right from the start, just as an extra test)

Yes, Swank on CLISP doesn't send that event (at least, I haven't seen
it yet -- maybe it does if SLIME asks for it, whereas other Lisps send
it un-asked for).

> So... what needs to be done to get multi-line expressions working?
> :)

Do you mean this as separate from the unknown event thing?  If so,
well, they work for me.  The Vim module finds the current toplevel
s-expression via something like this:

  mz99[(y%`z

mz	mark the current cursor position in mark z
99[(	Find the 99th previous unmatched '(' (see ":help [(")
y%	Yank the entire expression
`z	Return to the previous cursor position

That should work in almost every case, except where you have
unclosed-( in comments; Vim doesn't know to skip '(' in comments when
doing a [(.  (I'll teach it to eventually, but haven't yet.)

> [0] I'm not absolutely certain which version of SLIMPL I'm using -
> I'm pretty sure it's 0.04 just due to the tarball size, but there
> isn't a Changelog and the README doesn't mention the version.

If true, then you probably don't have the latest version.  The v0.04
README says "As mentioned, this is pre-alpha software, version 0.04."
on line 221, in the "Conclusion" section.  I'll make it more prominent
in the next version.

Thanks for the bug report!

-- Larry



More information about the slimpl mailing list