GNU bug report logs - #12254
24.2; completion fails backward-char

Previous Next

Package: emacs;

Reported by: Leo <sdl.web <at> gmail.com>

Date: Wed, 22 Aug 2012 02:42:01 UTC

Severity: normal

Tags: notabug

Found in version 24.2

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#12254: closed (24.2; completion fails backward-char)
Date: Wed, 29 Aug 2012 18:07:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Wed, 29 Aug 2012 14:05:19 -0400
with message-id <jwvsjb5fuha.fsf-monnier+emacs <at> gnu.org>
and subject line Re: bug#12254: 24.2; completion fails backward-char
has caused the debbugs.gnu.org bug report #12254,
regarding 24.2; completion fails backward-char
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
12254: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12254
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Leo <sdl.web <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.2; completion fails backward-char
Date: Wed, 22 Aug 2012 10:40:25 +0800
[Message part 3 (text/plain, inline)]
This is a regression. It doesn't happen in Emacs 23.4.

1. Emacs -q -l b.el (b.el is attached)
2. M-x b-mode
3. Type I followed by <tab> to complete to IGNORE
4. C-b

In step 4, C-b could not move backwards; point appears to be trapped
there.

Leo
[b.el (application/emacs-lisp, inline)]
[Message part 5 (message/rfc822, inline)]
From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Leo <sdl.web <at> gmail.com>
Cc: 12254-done <at> debbugs.gnu.org
Subject: Re: bug#12254: 24.2; completion fails backward-char
Date: Wed, 29 Aug 2012 14:05:19 -0400
tags 12254 notabug
thanks

> (defun b-completion-at-point ()
>   (let ((beg (progn
>                (skip-syntax-backward "w")
>                (point)))
>         (end (progn
>                (skip-syntax-forward "w")
>                (point))))
>     (list beg end '("IGNORE" "DEBUG" "HELLO"))))

This needs to save-excursion.

> This is a regression. It doesn't happen in Emacs 23.4.

That's only because completion-at-point-functions is used less often so
the bug in the above code doesn't bite as often.
But your above completion function is already buggy in Emacs-23.4 since
it can't complete "IG!R" to "IGNORE", whereas after adding the
save-excursion such completion works just fine.


        Stefan


This bug report was last modified 12 years and 263 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.