Subject: 23.0.60; Cycling between possible completion points in partial-completion-mode

From: Tassilo Horn <[email-masked]>
Date: Tue, 28 Oct 2008 13:00:18 +0100

Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the [email-masked] mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

I have the following directories below ~/uni/repos/

  re-group/
  redseeds-main/
  redseeds-uko/

When I do

  C-x C-f ~/uni/repos/re-<TAB>

the completions are shown and point moves before the hyphen.  To
complete to re-group/ I have to move point explicitly to the end using
`C-e' and enter the g followed by an additional <TAB>.

I think it would be very convenient if <TAB> cycled between all possible
completion points, starting with the last position if the current entry
matches the start of an item completely.  So in my example

  C-x C-f ~/uni/repos/re-<TAB>

would pop up the completion list and let point stay at the end.  An
additional <TAB> would move point to before the hyphen.  Another <TAB>
would move it to the end again.

Is that possible?

It's all tested with emacs -Q.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/share/emacs/23.0.60/etc/DEBUG for instructions.

In GNU Emacs 23.0.60.1 (x86_64-pc-linux-gnu, GTK+ Version 2.14.4)
 of 2008-10-24 on thinkpad
Windowing system distributor `The X.Org Foundation', version 11.0.10502000
configured using `configure  '--prefix=/usr' '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64' '--program-suffix=-emacs-23' '--infodir=/usr/share/info/emacs-23' '--with-sound' '--with-x' '--with-toolkit-scroll-bars' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--with-freetype' '--with-xft' '--with-libotf' '--with-m17n-flt' '--with-x-toolkit=gtk' '--without-hesiod' '--with-kerberos' '--with-kerberos5' '--with-gpm' '--with-dbus' '--build=x86_64-pc-linux-gnu' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu' 'CFLAGS=-g -ggdb -O1 -pipe' 'LDFLAGS=''

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_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Group

Minor modes in effect:
  gnus-topic-mode: t
  gnus-undo-mode: t
  rcirc-track-minor-mode: t
  yas/minor-mode: t
  partial-completion-mode: t
  shell-dirtrack-mode: t
  recentf-mode: t
  iswitchb-mode: t
  window-number-meta-mode: t
  window-number-mode: t
  savehist-mode: t
  exec-abbrev-cmd-mode: t
  show-paren-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<left> <left> <right> <right> <right> <right> <M-backspace> 
w e n n SPC m ö g l i c h M-q M-q <down> <up> <down> 
<down> <down> <down> M-q <down> <down> <down> <up> 
<up> <up> <up> <down> <down> <down> <down> <up> <up> 
<up> <up> <up> <up> <up> <up> <down> <down> <down> 
<down> <down> <down> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <M-backspace> M-q <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> C-c C-c c <return> c <return> SPC c 
<return> <return> SPC c l s <down-mouse-1> <mouse-1> 
C-c g <up> <up> <return> <return> <return> <return> 
<return> <return> <return> <return> <return> <return> 
<return> <return> <return> <return> ^ <return> <return> 
<return> <return> <return> <return> <return> <return> 
<return> <return> <return> <return> <return> <return> 
<return> <return> <return> <return> <return> <return> 
<return> <return> <return> <return> <return> <return> 
<return> <return> <return> <return> <return> <return> 
<return> <return> <return> <return> <return> <return> 
q <return> c <up> <up> <up> <up> <return> <return> 
<return> <return> <return> <return> <down> <return> 
B <backspace> y q <return> <return> <return> q C-h 
i u u u u m e m a <tab> <return> s p a r t i a l - 
c o m p l e t i o n <return> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <up> <up> 
<up> <up> <up> <up> <up> q C-x C-f u n <tab> r <tab> 
r e <tab> l <backspace> - <tab> <tab> <tab> <tab> <tab> 
<tab> <tab> <tab> C-g M-x r e b <return> r e p <tab> 
<return>

Recent messages:
20081028T124829.852> Scoring...
20081028T124829.854> Scoring...done
20081028T124829.855> Generating summary...
20081028T124829.856> Generating summary...done
20081028T124833.885> End of message
20081028T124835.101> Exiting summary buffer and applying spam rules
20081028T124835.110> nnimap: Setting marks in INBOX.mailinglists.emacs-devel...
20081028T124835.131> nnimap: Setting marks in INBOX.mailinglists.emacs-devel...done
20081028T124835.185> No more unread newsgroups
Info-extract-pointer: Node has no Up
Quit
-- 
The glass is neither half-full nor half-empty: it's twice as big as it
needs to be.