[slime-devel] slime repl prompt's intangible property

Hertog, Pieter den Pieter.denHertog at isc.politie.nl
Wed May 18 08:50:02 UTC 2005


Hi,

Just for the record: Helmut's update (11-05-2005):
<snip>
 +2005-05-11  Helmut Eller  <heller at common-lisp.net>
 +
 ..
 +	(slime-display-completion-list): Take the completed prefix as
 +	additional argument to initialize completion-base-size.  This is
 +	apparently needed to make mouse-selection working.
<snip>

also solves the symbol completion problem at the slime repl prompt.

By initializing completion-base-size to a sane value, the emacs 
completion code won't use `choose-completion-delete-max-match'
to find/delete the longest matching prefix prior to inserting
the completed symbol.  This avoids the point moving problem inside
the repl prompt (which yields args-out-of-range error) as described 
below.

thanks for the support ;-)

-- 
pieter

-----Original Message-----

> Hi,
> 
> First of all, thanks for Slime!  I am using it to
> take my first baby-steps into the wonderful Lisp.
> 
> At the moment I have a small problem with symbol
> completion at the repl prompt and I was wondering
> whether I am the only one with the problem or just the
> only one without an elegant solution (not unlikely).
> 
> Example:
> 
> CL-USER> *f <TAB>  -> choose *features* and hit RETURN
> 
> will get me an 'args-out-of-range' error.
> 
> The error seems due to the fact that hitting return in 
> the emacs completions buffer ends up calling simple.el's
> 
>   `choose-completion-delete-max-match'
> 
> whose code doesn't cater for the buffer containing text
> with text property `intangible' nearby the symbol to 
> be completed.  That is, it uses (forward-char 1) and 
> assumes point is moved forward 1 char, which is not true 
> when point is in slime's repl prompt.
> 
> My current solution (other than using slime-fuzzy-complete-symbol)
> is to:
> 
> (add-hook 'slime-repl-mode-hook
>           (lambda ()
>             (set (make-local-variable 
> 'inhibit-point-motion-hooks) t)))
> 
> in my .emacs file.
> 
> I was wondering if there is a better solution.
> 
> thanks in advance,
> 
> --
> pieter



More information about the slime-devel mailing list