[slim-vim] Problem with :ecl in Vim-7.x

Larry Clapp larry at theclapp.org
Sat May 31 21:03:19 CDT 2008


On Wed, May 28, 2008 at 04:48:51PM +0200, Mikael Jansson wrote:
> On Wed, May 28, 2008 at 2:23 PM, Larry Clapp <larry at theclapp.org> wrote:
> > You need to make sure that *standard-output* is bound around any
> > :ecl call.  What you bind it to is an interesting question.  For
> > debugging I'd probably bind it to a global string-stream that I'd
> > print out at the end of the :ecl call.  For production, ideally
> > you'd like a Grey stream that prints to the vim output area.
> >
> Wouldn't printing the string out require *standard-output*?

I meant, you capture the string by binding *standard-output* to a
string-stream, and then you print the string via Vim's msg() function
(or whatever it's called -- echo(), maybe?).

> This is the results I got from the various ways of printing things
> out.
> 
> :ecl (princ "foo")
> <99>^A
> :ecl (format t "foo")
> <99>^A
> :ecl (msg "foo") ; MSG defined in if_ecl.c
> ^U^A
> 
> > Have you compiled the version of vim70+async+ecl from theclapp.org
> > and verified that it works?  That seems like a good debugging
> > step.
> >
> Yup, exactly the same results there.  However, I did have to change
> make_cons() into CONS() as make_cons() was #if 0'd out in both ECL
> 0.9j and 0.9i.

Hmm.  Any chance you haven't loaded "if_ecl.lisp"?

-- L



More information about the slim-vim mailing list