GNU bug report logs -
#7211
completion suffix and completions buffer
Previous Next
Reported by: Kevin Ryde <user42 <at> zip.com.au>
Date: Thu, 14 Oct 2010 00:29:01 UTC
Severity: normal
Found in version 23.2
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 7211 in the body.
You can then email your comments to 7211 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#7211
; Package
emacs
.
(Thu, 14 Oct 2010 00:29:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Kevin Ryde <user42 <at> zip.com.au>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Thu, 14 Oct 2010 00:29:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
In partial completion mode, if the choices have a common suffix, then
selecting an entry from the *Completions* buffer returns a string which
is not that choice. For example
(completing-read "enter: " '(("xx-aa" . "")
("yy-aa" . "")))
type "-aa"
press Tab
M-v to go to *Completions* buffer
Ret to choose "xx-aa"
=> return value "xx-aa-aa"
where I hoped the return would be "xx-aa".
In GNU Emacs 23.2.1 (i486-pc-linux-gnu, GTK+ Version 2.20.0)
of 2010-05-16 on raven, modified by Debian
configured using `configure '--build' 'i486-linux-gnu' '--build' 'i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.2/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.2/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.2/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_AU
value of $XMODIFIERS: nil
locale-coding-system: iso-latin-1-unix
default enable-multibyte-characters: t
Information forwarded
to
owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org
:
bug#7211
; Package
emacs
.
(Thu, 14 Oct 2010 00:58:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 7211 <at> debbugs.gnu.org (full text, mbox):
retitle 7211 completion suffix and completions buffer
thanks
Oops, this is the partial completion thingie which is without
partial-completion-mode enabled. The latter might be right already.
Changed bug title to 'completion suffix and completions buffer' from '23.2; partial-completion-mode suffix and completions buffer'
Request was from
Kevin Ryde <user42 <at> zip.com.au>
to
control <at> debbugs.gnu.org
.
(Thu, 14 Oct 2010 00:58:02 GMT)
Full text and
rfc822 format available.
Reply sent
to
Stefan Monnier <monnier <at> iro.umontreal.ca>
:
You have taken responsibility.
(Mon, 08 Nov 2010 20:55:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Kevin Ryde <user42 <at> zip.com.au>
:
bug acknowledged by developer.
(Mon, 08 Nov 2010 20:55:02 GMT)
Full text and
rfc822 format available.
Message #15 received at 7211-done <at> debbugs.gnu.org (full text, mbox):
> In partial completion mode, if the choices have a common suffix, then
> selecting an entry from the *Completions* buffer returns a string which
> is not that choice. For example
> (completing-read "enter: " '(("xx-aa" . "")
> ("yy-aa" . "")))
> type "-aa"
> press Tab
> M-v to go to *Completions* buffer
> Ret to choose "xx-aa"
> => return value "xx-aa-aa"
> where I hoped the return would be "xx-aa".
Thanks. I've installed the patch below (in emacs-23) which should fix
this problem.
Stefan
=== modified file 'lisp/minibuffer.el'
--- lisp/minibuffer.el 2010-10-17 17:30:22 +0000
+++ lisp/minibuffer.el 2010-11-08 20:52:12 +0000
@@ -41,7 +41,7 @@
;; provide the start info but not the end info in
;; completion-base-position.
;; - quoting is problematic. E.g. the double-dollar quoting used in
-;; substitie-in-file-name (and hence read-file-name-internal) bumps
+;; substitute-in-file-name (and hence read-file-name-internal) bumps
;; into various bugs:
;; - choose-completion doesn't know how to quote the text it inserts.
;; E.g. it fails to double the dollars in file-name completion, or
@@ -1075,6 +1075,7 @@
(interactive)
(message "Making completion list...")
(lexical-let* ((start (field-beginning))
+ (end (field-end))
(string (field-string))
(completions (completion-all-completions
string
@@ -1106,10 +1107,12 @@
completions)))
(with-current-buffer standard-output
(set (make-local-variable 'completion-base-position)
- ;; FIXME: We should provide the END part as well, but
- ;; currently completion-all-completions does not give
- ;; us the necessary information.
- (list (+ start base-size) nil)))
+ (list (+ start base-size)
+ ;; FIXME: We should pay attention to completion
+ ;; boundaries here, but currently
+ ;; completion-all-completions does not give us the
+ ;; necessary information.
+ end)))
(display-completion-list completions)))
;; If there are no completions, or if the current input is already the
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 07 Dec 2010 12:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 14 years and 250 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.