[slime-devel] a bug in slime-fuzzy-complete-symbol

Leo sdl.web at gmail.com
Fri May 15 22:41:52 UTC 2009


On 2009-05-15 23:23 +0100, Stas Boukarev wrote:
> Stas Boukarev <stassats at gmail.com> writes:
>
>> Stas Boukarev <stassats at gmail.com> writes:
>>
>>> Leo <sdl.web at gmail.com> writes:
>>>
>>>> Hi there,
>>>>
>>>> I think there is a bug in slime-fuzzy-complete-symbol. Here are steps to
>>>> reproduce:
>>>>
>>>> 1. (setq slime-complete-symbol-function 'slime-fuzzy-complete-symbol)
>>>>
>>>> 2. M-x slime-describe-function
>>>>
>>>> 3. lo TAB TAB
>>>>
>>>> After step 1, 2 and 3, the minibuffer takes up half of the screen as in
>>>> this screenshot: http://imagebin.org/49185.
>>>>
>>> Attached patch should fix it. Though, I can't find a better way to
>>> switch back to minibuffer.
>> I finally found. Here is corrected version of the patch.
>>
> And this also fixes long delay before actually showing complition list.

Thank you. It fixed all the problems I have with slime-fuzzy.

> Index: contrib/slime-fuzzy.el
> ===================================================================
> RCS file: /project/slime/cvsroot/slime/contrib/slime-fuzzy.el,v
> retrieving revision 1.9
> diff -u -r1.9 slime-fuzzy.el
> --- contrib/slime-fuzzy.el	8 Jan 2009 10:33:12 -0000	1.9
> +++ contrib/slime-fuzzy.el	15 May 2009 22:21:40 -0000
> @@ -281,8 +281,8 @@
>                   (slime-fuzzy-done))
>                  ;; Incomplete
>                  (t
> -                 (slime-minibuffer-respecting-message "Complete but not unique")
> -                 (slime-fuzzy-choices-buffer completion-set interrupted-p beg end)))))))
> +                 (slime-fuzzy-choices-buffer completion-set interrupted-p beg end)
> +                 (slime-minibuffer-respecting-message "Complete but not unique")))))))
>  
>  
>  (defun slime-get-fuzzy-buffer ()
> @@ -369,7 +369,9 @@
>        (setq buffer-quit-function 'slime-fuzzy-abort)) ; M-Esc Esc
>      (when slime-fuzzy-completion-in-place
>        ;; switch back to the original buffer
> -      (switch-to-buffer-other-window slime-fuzzy-target-buffer))))
> +      (if (minibufferp slime-fuzzy-target-buffer)
> +          (select-window (minibuffer-window))
> +          (switch-to-buffer-other-window slime-fuzzy-target-buffer)))))
>  
>  (defun slime-fuzzy-fill-completions-buffer (completions interrupted-p)
>    "Erases and fills the completion buffer with the given completions."

-- 
.:  Leo  :.  [ sdl.web AT gmail.com ]  .: I use Emacs :.

               www.git-scm.com
    git - the one true version control system





More information about the slime-devel mailing list