* bug#4176: marked as done (23.1; partial completions)
2009-08-17 14:30 ` bug#4176: 23.1; partial completions Eli Barzilay
[not found] ` <handler.4176.B.125051942125598.ack@emacsbugs.donarmstrong.com>
@ 2009-08-20 20:30 ` Emacs bug Tracking System
1 sibling, 0 replies; 4+ messages in thread
From: Emacs bug Tracking System @ 2009-08-20 20:30 UTC (permalink / raw)
To: Stefan Monnier
[-- Attachment #1: Type: text/plain, Size: 865 bytes --]
Your message dated Tue, 18 Aug 2009 15:11:54 -0400
with message-id <jwv1vn9uev7.fsf-monnier+emacsbugreports@gnu.org>
and subject line Re: bug#4176: 23.1; partial completions
has caused the Emacs bug report #4176,
regarding 23.1; partial completions
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@emacsbugs.donarmstrong.com
immediately.)
--
4176: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=4176
Emacs Bug Tracking System
Contact owner@emacsbugs.donarmstrong.com with problems
[-- Attachment #2: Type: message/rfc822, Size: 5584 bytes --]
From: Eli Barzilay <eli@barzilay.org>
To: bug-gnu-emacs@gnu.org
Subject: 23.1; partial completions
Date: Mon, 17 Aug 2009 10:30:10 -0400
Message-ID: <19081.26994.931953.186612@winooski.ccs.neu.edu>
With the default settings, enter
C-h f select-window TAB
and Emacs will tell you that this is the only completion.
Trying this with `sele-wind TAB' does a partial completion to
`select-window' and moves the cursor to the right place -- a
second TAB pops up the completions (showing both functions) saying
"complete but not unique" *but* moves the cursor to the end.
It would be very nice if the cursor was always at the right place, and
it would not say that this is the only completion. Doing
(setq completion-styles '(partial-completion))
is fixes the message, but the cursor still moves to the end.
Another related problem -- the doc string for `completion-styles'
doesn't say anything about what's allowed (should mention
`completion-styles-alist'). Also, the functions that are used in
`completion-styles-alist' are not documented -- which leaves the user
with no explanation at all about the available completion styles.
In GNU Emacs 23.1.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.10.14)
of 2009-08-01 on winooski.ccs.neu.edu
Windowing system distributor `The X.Org Foundation', version 11.0.10300000
configured using `configure '--prefix=/home/eli/bin/local/emacs-dir''
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: POSIX
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_US
value of $XMODIFIERS: nil
locale-coding-system: iso-latin-1-unix
default-enable-multibyte-characters: t
Major mode: Emacs-Lisp
Minor modes in effect:
whitespace-mode: t
cua-mode: t
tooltip-mode: t
mouse-wheel-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
global-auto-composition-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
temp-buffer-resize-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
l e c t <tab> <tab> <tab> <tab> <tab> <tab> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
- w i <tab> <tab> <C-left> <end> <tab> <tab> <tab>
<tab> <tab> <tab> <C-left> <left> l <end> <tab> <tab>
<tab> <tab> <tab> <tab> <tab> C-g C-g C-g <up> <left>
<left> <delete> <up> ; <f2> <down> <down> <right> C-x
C-e C-h f s e l e c <tab> - w i n <tab> <tab> <tab>
<tab> <C-left> <C-left> <C-right> <tab> <C-left> <left>
<tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab>
<C-left> <left> <tab> <tab> <tab> <tab> <tab> <tab>
<tab> <tab> <tab> <tab> <C-left> <C-left> <C-right>
<tab> <tab> <tab> <tab> <tab> <tab> C-g <up> <left>
<left> ; <left> <up> <delete> <up> <delete> <f2> <down>
<down> <down> <end> C-x C-e <up> C-h f s e l e - w
i n d <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab>
<tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab>
<tab> <tab> <C-left> <left> <tab> <tab> <tab> <tab>
<tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab>
<tab> <left> <left> <C-left> <left> <tab> <tab> <tab>
<tab> <tab> <tab> <tab> C-g C-g C-h f s e l - w i n
<tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> C-g
C-g <up> <C-left> <up> ; <f2> <down> <down> <down>
<end> C-x C-e C-h f s e l e c t - w i n d o <C-left>
<C-left> <C-right> <backspace> <backspace> <tab> <tab>
<tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab> <tab>
<tab> <tab> <tab> <tab> <tab> <tab> C-g C-g C-h f s
e l - w i n <tab> <tab> <tab> <tab> <tab> <tab> <tab>
<tab> C-g C-g M-x r e p o r t - w i n <backspace> <backspace>
e <backspace> <backspace> e m a - b u <tab> <retur
n>
[-- Attachment #3: Type: message/rfc822, Size: 5199 bytes --]
From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Eli Barzilay <eli@barzilay.org>
Subject: Re: bug#4176: 23.1; partial completions
Date: Tue, 18 Aug 2009 15:11:54 -0400
Message-ID: <jwv1vn9uev7.fsf-monnier+emacsbugreports@gnu.org>
>>>>> "Eli" == Eli Barzilay <eli@barzilay.org> writes:
> With the default settings, enter
> C-h f select-window TAB
> and Emacs will tell you that this is the only completion.
> Trying this with `sele-wind TAB' does a partial completion to
> `select-window' and moves the cursor to the right place -- a
> second TAB pops up the completions (showing both functions) saying
> "complete but not unique" *but* moves the cursor to the end.
Removing the second (goto-char (field-end)) in minibuffer-complete was
indeed a correct solution, in the end. I've installed a sligtly
different patch so that the point-motion is consolidated inside
completion--do-completion. See below the patch I installed.
> It would be very nice if the cursor was always at the right place, and
> it would not say that this is the only completion. Doing
> (setq completion-styles '(partial-completion))
> is fixes the message, but the cursor still moves to the end.
The "sole completion" message is correct, given the default value of
completion-styles.
> Another related problem -- the doc string for `completion-styles'
> doesn't say anything about what's allowed (should mention
> `completion-styles-alist').
Thanks, it does mention it now.
> Also, the functions that are used in `completion-styles-alist' are not
> documented -- which leaves the user with no explanation at all about
> the available completion styles.
The functions are low-level, so the user shouldn't be expected to look
at them and/or their docstrings to find out what the style does.
The name of the style should hopefully be sufficient.
Stefan
--- minibuffer.el.~1.77.~ 2009-08-04 14:03:35.000000000 -0400
+++ minibuffer.el 2009-08-18 15:07:35.000000000 -0400
@@ -308,7 +308,8 @@
ALL-COMPLETIONS is the function that lists the completions.")
(defcustom completion-styles '(basic partial-completion emacs22)
- "List of completion styles to use."
+ "List of completion styles to use.
+The available styles are listed in `completion-styles-alist'."
:type `(repeat (choice ,@(mapcar (lambda (x) (list 'const (car x)))
completion-styles-alist)))
:group 'minibuffer
@@ -388,7 +389,9 @@
(cond
((null comp)
(ding) (minibuffer-message "No match") (minibuffer--bitset nil nil nil))
- ((eq t comp) (minibuffer--bitset nil nil t)) ;Exact and unique match.
+ ((eq t comp)
+ (goto-char (field-end))
+ (minibuffer--bitset nil nil t)) ;Exact and unique match.
(t
;; `completed' should be t if some completion was done, which doesn't
;; include simply changing the case of the entered string. However,
@@ -462,11 +465,9 @@
(case (completion--do-completion)
(#b000 nil)
- (#b001 (goto-char (field-end))
- (minibuffer-message "Sole completion")
+ (#b001 (minibuffer-message "Sole completion")
t)
- (#b011 (goto-char (field-end))
- (minibuffer-message "Complete, but not unique")
+ (#b011 (minibuffer-message "Complete, but not unique")
t)
(t t)))))
@@ -694,11 +695,9 @@
(interactive)
(case (completion--do-completion 'completion--try-word-completion)
(#b000 nil)
- (#b001 (goto-char (field-end))
- (minibuffer-message "Sole completion")
+ (#b001 (minibuffer-message "Sole completion")
t)
- (#b011 (goto-char (field-end))
- (minibuffer-message "Complete, but not unique")
+ (#b011 (minibuffer-message "Complete, but not unique")
t)
(t t)))
^ permalink raw reply [flat|nested] 4+ messages in thread