GNU bug report logs - #34077
27.0.50; icomplete, substring completion and C-x C-f misbehaving

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: João Távora <joaotavora@HIDDEN>; dated Mon, 14 Jan 2019 16:33:01 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 34077 <at> debbugs.gnu.org:


Received: (at 34077) by debbugs.gnu.org; 17 Jan 2019 14:02:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jan 17 09:02:51 2019
Received: from localhost ([127.0.0.1]:34294 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1gk8Fu-0000rY-TB
	for submit <at> debbugs.gnu.org; Thu, 17 Jan 2019 09:02:51 -0500
Received: from mail-wm1-f43.google.com ([209.85.128.43]:53049)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <joaotavora@HIDDEN>) id 1gk8Fs-0000rF-FO
 for 34077 <at> debbugs.gnu.org; Thu, 17 Jan 2019 09:02:49 -0500
Received: by mail-wm1-f43.google.com with SMTP id m1so1182600wml.2
 for <34077 <at> debbugs.gnu.org>; Thu, 17 Jan 2019 06:02:48 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:subject:date:in-reply-to:message-id:user-agent:mime-version;
 bh=QMQ5JhBwred0qg75G2PAyN1g7TKatIKVEO2klli6Tvc=;
 b=JfBu+u57vDhetoWhVB35F61sQ3p2wNottBBLdmVOYZFzDrPG3lxqOv0C4eg1CSZCt/
 Jo+kuQuvc7+rbXqGcEmSbu3/+qlyBXDtBvWz9g/KHRWPJA4EwY4y7MZyzrBtc4ouQQ+5
 taV6Z/mmA5HXfsHpRODjls+ii/fZhX4+gAX9X5z2f+uDSpKgvzO/cLV089VqAQHx90QS
 9qyL1uernF3xHKtxkzloYslGgs9pjk19x3tggqXnJYn/GFSpUb5b+wr++4KOMo2T795H
 CQGyLTZ/W2SCGF5fp0lGzRP+vL8GTkVMUWJwtFGIRRtx9j6r/6F7R7VmhM3UQtn0VWWj
 yr2w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:subject:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=QMQ5JhBwred0qg75G2PAyN1g7TKatIKVEO2klli6Tvc=;
 b=HV/5lXNOb7f/daPo51sfV9MQT6eIQC8eCdyLqbpnCBGkNfiAZGO7P0DiJqPn9NF+T8
 61nhZXp3uaB7fciZpf+dAUvD433uTIwj23Ox2NPtaaH11PD5TOnnauJp7GYfUkDGQt5w
 Khd7wW+yBhgcoGf6xheVSjI4bky7u95mgcnYdXQ89oVvkAzwgFXG93qz12T8uq+y0HdF
 925XhFDmHB9PC4lXFDGd1bIsDnqL3UbYemsJtS5KWDdiaL8DdMTsgQgg1zTzM3Y5P39q
 N+rw3vW71QMDWe6QQ9O8GKQLP9yMW1pg4tSRrU4GGzAIxkIT3HiYZKGHRnvsvF2eAatH
 1sdg==
X-Gm-Message-State: AJcUuke/Aifo4N/Tj0jfrSecTYT38hHnXnObFRVAPmvhqchJlWaAjTre
 +fIVGd0UQ3RzlzCTD4RHZvF5vaqg
X-Google-Smtp-Source: ALg8bN70CyvzTllkp/yzHm2N/KS2EglXYi/BvJF3S2hGz9iRTFonzMJOtuvTX3gcyo8GUhlDPnHWlQ==
X-Received: by 2002:a1c:16c5:: with SMTP id 188mr12204059wmw.69.1547733762293; 
 Thu, 17 Jan 2019 06:02:42 -0800 (PST)
Received: from GONDOMAR.yourcompany.com (mail1.siscog.pt. [89.115.233.242])
 by smtp.gmail.com with ESMTPSA id 207sm26484745wmb.12.2019.01.17.06.02.41
 for <34077 <at> debbugs.gnu.org>
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Thu, 17 Jan 2019 06:02:41 -0800 (PST)
From: =?iso-8859-1?Q?Jo=E3o_T=E1vora?= <joaotavora@HIDDEN>
To: bug#34077 <34077 <at> debbugs.gnu.org>
Subject: Re: Status: 27.0.50;
 icomplete, substring completion and C-x C-f misbehaving
Date: Thu, 17 Jan 2019 14:02:39 +0000
In-Reply-To: bug's message of "Thu\, 17 Jan 2019 14\:00\:15 +0000"
Message-ID: <jjbwon32xhc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (windows-nt)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Antivirus: AVG (VPS 190117-0, 17-01-2019), Outbound message
X-Antivirus-Status: Clean
X-Spam-Score: 1.3 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: tag 34077 patch Here's a simpler patch set to fix this: From
 cc389a92a51dfab1707246d77d03c387b02f312d Mon Sep 17 00:00:00 2001 From:
 =?UTF-8?q?Jo=C3=A3o=20T=C3=A1vora?=
 Date: Wed, 16 Jan 2019 23:29:34 +0000 Subject: [PATCH 1/5] Fix nasty cycling
 on minib [...] 
 Content analysis details:   (1.3 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at http://www.dnswl.org/,
 no trust [209.85.128.43 listed in list.dnswl.org]
 -0.0 RCVD_IN_MSPIKE_H2      RBL: Average reputation (+2)
 [209.85.128.43 listed in wl.mailspike.net]
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (joaotavora[at]gmail.com)
 -0.0 SPF_PASS               SPF: sender matches SPF record
 1.3 GAPPY_SUBJECT          Subject: contains G.a.p.p.y-T.e.x.t
 0.0 FAKE_REPLY_C           No description available.
X-Debbugs-Envelope-To: 34077
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.3 (/)

--=-=-=
Content-Type: text/plain

tag 34077 patch

Here's a simpler patch set to fix this:


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0001-Fix-nasty-cycling-on-minibuffer-force-complete-and-e.patch

From cc389a92a51dfab1707246d77d03c387b02f312d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20T=C3=A1vora?= <joaotavora@HIDDEN>
Date: Wed, 16 Jan 2019 23:29:34 +0000
Subject: [PATCH 1/5] Fix nasty cycling on minibuffer-force-complete-and-exit
 (bug#34116)

minibuffer-force-complete sets up cycling after forcing the
completion, which is mostly fine for successive interactive calls.
However minibuffer-force-complete-and-exit also calls it.  In
situations where the former and latter are called in succession this
causes an unwanted extra cycle, which ultimately yields the wrong
completion.

* lisp/minibuffer.el (minibuffer-force-complete): Take DONT-CYCLE
arg.
(minibuffer-force-complete-and-exit): Pass DONT-CYCLE to
minibuffer-force-complete.
---
 lisp/minibuffer.el | 79 +++++++++++++++++++++++++++-------------------
 1 file changed, 47 insertions(+), 32 deletions(-)

diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index 5760a2e49d..74f85e7b90 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -1257,29 +1257,32 @@ completion-all-sorted-completions
 (defun minibuffer-force-complete-and-exit ()
   "Complete the minibuffer with first of the matches and exit."
   (interactive)
-  (minibuffer-force-complete)
+  (minibuffer-force-complete nil nil t)
   (completion--complete-and-exit
    (minibuffer-prompt-end) (point-max) #'exit-minibuffer
    ;; If the previous completion completed to an element which fails
    ;; test-completion, then we shouldn't exit, but that should be rare.
    (lambda () (minibuffer-message "Incomplete"))))
 
-(defun minibuffer-force-complete (&optional start end)
-  "Complete the minibuffer to an exact match.
-Repeated uses step through the possible completions."
+(defun minibuffer-force-complete (&optional start end dont-cycle)
+  "Complete the minibuffer string between START and END to an exact match.
+Repeated uses step through the possible completions, unless
+prevented to do so by DONT-CYCLE."
   (interactive)
   (setq minibuffer-scroll-window nil)
   ;; FIXME: Need to deal with the extra-size issue here as well.
   ;; FIXME: ~/src/emacs/t<M-TAB>/lisp/minibuffer.el completes to
   ;; ~/src/emacs/trunk/ and throws away lisp/minibuffer.el.
+  ;; FIXME: shouldn't we cycle _before_ instead of after forcing??
   (let* ((start (copy-marker (or start (minibuffer-prompt-end))))
          (end (or end (point-max)))
          ;; (md (completion--field-metadata start))
          (all (completion-all-sorted-completions start end))
-         (base (+ start (or (cdr (last all)) 0))))
+         (base (+ start (or (cdr (last all)) 0)))
+         last second-last)
     (cond
      ((not (consp all))
-        (completion--message
+      (completion--message
        (if all "No more completions" "No completions")))
      ((not (consp (cdr all)))
       (let ((done (equal (car all) (buffer-substring-no-properties base end))))
@@ -1287,36 +1290,48 @@ minibuffer-force-complete
         (completion--done (buffer-substring-no-properties start (point))
                           'finished (when done "Sole completion"))))
      (t
+      (setq second-last (last all 2)
+            last        (cdr second-last))
+      ;; If we happened to be already cycling, we must undo the
+      ;; effects of the last rotation (get out yer' pen and paper to
+      ;; get the cons cell math).
+      (when (and dont-cycle completion-cycling)
+        (let ((lastcdr (cddr second-last)))
+          (setcdr (cdr second-last) all)
+          (setq all (cdr second-last))
+          (setcdr second-last lastcdr)
+          (setq last second-last)))
       (completion--replace base end (car all))
       (setq end (+ base (length (car all))))
       (completion--done (buffer-substring-no-properties start (point)) 'sole)
-      ;; Set cycling after modifying the buffer since the flush hook resets it.
-      (setq completion-cycling t)
-      (setq this-command 'completion-at-point) ;For completion-in-region.
-      ;; If completing file names, (car all) may be a directory, so we'd now
-      ;; have a new set of possible completions and might want to reset
-      ;; completion-all-sorted-completions to nil, but we prefer not to,
-      ;; so that repeated calls minibuffer-force-complete still cycle
-      ;; through the previous possible completions.
-      (let ((last (last all)))
+      (unless dont-cycle
+        ;; Set cycling after modifying the buffer since the flush hook resets it.
+        (setq completion-cycling t)
+        (setq this-command 'completion-at-point) ;For completion-in-region.
+        ;; Rotate the completions collected earlier and cache them.  If
+        ;; completing file names, (car all) may be a directory, so we'd
+        ;; now have a new set of possible completions and might want to
+        ;; reset completion-all-sorted-completions to nil, but we prefer
+        ;; not to, so that repeated calls minibuffer-force-complete
+        ;; still cycle through the previous possible completions.
         (setcdr last (cons (car all) (cdr last)))
-        (completion--cache-all-sorted-completions start end (cdr all)))
-      ;; Make sure repeated uses cycle, even though completion--done might
-      ;; have added a space or something that moved us outside of the field.
-      ;; (bug#12221).
-      (let* ((table minibuffer-completion-table)
-             (pred minibuffer-completion-predicate)
-             (extra-prop completion-extra-properties)
-             (cmd
-              (lambda () "Cycle through the possible completions."
-                (interactive)
-                (let ((completion-extra-properties extra-prop))
-                  (completion-in-region start (point) table pred)))))
-        (set-transient-map
-         (let ((map (make-sparse-keymap)))
-           (define-key map [remap completion-at-point] cmd)
-           (define-key map (vector last-command-event) cmd)
-           map)))))))
+        (completion--cache-all-sorted-completions start end (cdr all))
+        ;; Make sure repeated uses cycle, even though completion--done
+        ;; might have added a space or something that moved us outside
+        ;; of the field.  (bug#12221).
+        (let* ((table minibuffer-completion-table)
+               (pred minibuffer-completion-predicate)
+               (extra-prop completion-extra-properties)
+               (cmd
+                (lambda () "Cycle through the possible completions."
+                  (interactive)
+                  (let ((completion-extra-properties extra-prop))
+                    (completion-in-region start (point) table pred)))))
+          (set-transient-map
+           (let ((map (make-sparse-keymap)))
+             (define-key map [remap completion-at-point] cmd)
+             (define-key map (vector last-command-event) cmd)
+             map))))))))
 
 (defvar minibuffer-confirm-exit-commands
   '(completion-at-point minibuffer-complete
-- 
2.19.2


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0005-Avoid-broken-C-M-i-cycling-in-icomplete-mode-bug-340.patch

From f5538c8febc5f28ef08e30fe98b8b91c8fe1e525 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20T=C3=A1vora?= <joaotavora@HIDDEN>
Date: Tue, 15 Jan 2019 16:50:40 +0000
Subject: [PATCH 5/5] Avoid broken C-M-i cycling in icomplete-mode (bug#34077)

If there is only one propective candidate and it happens to be a
directory then (1) C-M-i causes the prospects to be updated to the subfiles of
the completed directory, otherwise (2) the prospects are merely rotated.

It is very hard to tell if (1) or (2) happened because the rotated
prospects may look identical to the updated prospects.  Therefore, in
icomplete-mode, it is preferable to do (1) always, to avoid
iconsistencies with the presentation of prospects in this mode.  There
are already facilities in place to rotate the prospects list.

* lisp/icomplete.el (icomplete-minibuffer-map): Bind C-M-i to
icomplete-force-complete.
(icomplete-force-complete): New command.
---
 lisp/icomplete.el | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/lisp/icomplete.el b/lisp/icomplete.el
index 6d77c0649a..80357af4ad 100644
--- a/lisp/icomplete.el
+++ b/lisp/icomplete.el
@@ -145,13 +145,25 @@ icomplete-post-command-hook
 
 (defvar icomplete-minibuffer-map
   (let ((map (make-sparse-keymap)))
-    (define-key map [?\M-\t] 'minibuffer-force-complete)
+    (define-key map [?\M-\t] 'icomplete-force-complete)
     (define-key map [?\C-j]  'icomplete-force-complete-and-exit)
     (define-key map [?\C-.]  'icomplete-forward-completions)
     (define-key map [?\C-,]  'icomplete-backward-completions)
     map)
   "Keymap used by `icomplete-mode' in the minibuffer.")
 
+(defun icomplete-force-complete ()
+  "Complete the minibuffer.
+Like `minibuffer-force-complete', but don't cycle."
+  (interactive)
+  ;; FIXME: it _could_ make sense to cycle in certain situations, by
+  ;; analyzing the current thing and the thing to cycle to for
+  ;; instance.  Unfortunately that can't be done until a _very nasty
+  ;; hack_ in `minibuffer-force-complete' is removed.  That hack uses
+  ;; transient maps and prevents two consecutive calls to
+  ;; `icomplete-force-complete'.
+  (minibuffer-force-complete nil nil t))
+
 (defun icomplete-force-complete-and-exit ()
   "Complete the minibuffer and exit.
 Use the first of the matches if there are any displayed, and use
-- 
2.19.2


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#34077; Package emacs. Full text available.

Message received at 34077 <at> debbugs.gnu.org:


Received: (at 34077) by debbugs.gnu.org; 15 Jan 2019 17:03:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 15 12:03:43 2019
Received: from localhost ([127.0.0.1]:60319 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1gjS7r-0008SR-AJ
	for submit <at> debbugs.gnu.org; Tue, 15 Jan 2019 12:03:43 -0500
Received: from mail-qt1-f175.google.com ([209.85.160.175]:40614)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <joaotavora@HIDDEN>) id 1gjS7l-0008SA-Rb
 for 34077 <at> debbugs.gnu.org; Tue, 15 Jan 2019 12:03:39 -0500
Received: by mail-qt1-f175.google.com with SMTP id k12so3735437qtf.7
 for <34077 <at> debbugs.gnu.org>; Tue, 15 Jan 2019 09:03:37 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=2YVCkNNRvefXdV7bCVKHq7P3e0grLHG3a2tqRxVC+eQ=;
 b=YdxIY0L2ra+mmNBbQRm/mI1LgwVrWId4dIQmCn4nt46wPmH1KoUMXsMPuU8M1awAwq
 PHSox51QJnYxqpUrMhw/z1ubC/1DNdtHWN3KBdkA088ZATm5p5gwiXxuyKqO9CV9Q64m
 3vghw6quAzvaJLkFXGnw/QuX487H8Sk9Qs44V9/J+UwDJAExxunC3cx+VkYLwajal2SJ
 Pd8sdn+xUxK+3bC39qJJufvmdlfCFrbuLCAFaPp+xT4iDh/AIu2CUVFBdtwpdnNcQihH
 QpUkHwg5pLNe+h0r6QIx9tqWJx6FkMRp8UAx0sm/Eg/vBUA2jVh3U216Zba5urDl07mn
 g+Ew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=2YVCkNNRvefXdV7bCVKHq7P3e0grLHG3a2tqRxVC+eQ=;
 b=lD/Bt7bavHgu15Wi/L1hOq7U73hjtoyXnA2xE1ABqYmJMZP5uKotgfvszuO0jdJOVZ
 Mv+Jg71pVHeQfTxsyVk7Me11okTxIlDyLI5YAVcoMrOPxsinHc9w719hjrJoklZ96WpK
 26Rd+zO3KIxYtWbExXeIO5xHhvqr1Z1d85UK32Z8YgeNYMU2pbxYylA9eBw442sFIXyO
 uSx49T7mvMvw8iUAUIsh60OMjLa5Q3JWCbm3JFU/8CNUZUCg5F0/nQPTgYV6JmY1P/0B
 r8DRJSZHKGkQeybX3S9CY/nEmf+qroMlohwraIFcEqqiordw4/eNHtGxNvcUJ2/n4rJO
 f2Rw==
X-Gm-Message-State: AJcUukeGIGNGQdGDGDiyS9fQP5xnGZMMrpBNiggPZcIWRBFAtICMmY9W
 DaGkplPNOzrQMcj0Z/ge3kFktrzQu9QwsHzMcB7iEw==
X-Google-Smtp-Source: ALg8bN46F+AwrHwaFjWD0bxcoEoIzEIdoD6pzDRMlPu94wE3H8RhOB1MejlLUa1UmWZVnd15UUpJtw5JlNSgKgR8qIQ=
X-Received: by 2002:a0c:d4a7:: with SMTP id u36mr3607589qvh.38.1547571812038; 
 Tue, 15 Jan 2019 09:03:32 -0800 (PST)
MIME-Version: 1.0
References: <jjb5zurw66t.fsf@HIDDEN>
In-Reply-To: <jjb5zurw66t.fsf@HIDDEN>
From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
Date: Tue, 15 Jan 2019 17:03:20 +0000
Message-ID: <CALDnm5154wLfCE9PZjnjNk7wU7Uj861QxZ_0iPGPUZSqzOOcoA@HIDDEN>
Subject: Re: bug#34077: 27.0.50;
 icomplete, substring completion and C-x C-f misbehaving
To: 34077 <at> debbugs.gnu.org
Content-Type: multipart/mixed; boundary="0000000000001f1553057f8224f6"
X-Spam-Score: 1.4 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  On Mon, Jan 14, 2019 at 4:43 PM João Távora wrote: > > Hi
    maintainers, > > I'm using substring completion, icomplete-mode and C-x C-f.
    Navigating > deeper in directories using successive C-M-i's s [...] 
 
 Content analysis details:   (1.4 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
                             provider (joaotavora[at]gmail.com)
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at http://www.dnswl.org/,
                             no trust
                             [209.85.160.175 listed in list.dnswl.org]
 -0.0 SPF_PASS               SPF: sender matches SPF record
  0.1 FROM_EXCESS_BASE64     From: base64 encoded unnecessarily
  1.3 GAPPY_SUBJECT          Subject: contains G.a.p.p.y-T.e.x.t
X-Debbugs-Envelope-To: 34077
Cc: Stefan Monnier <monnier@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.4 (/)

--0000000000001f1553057f8224f6
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Jan 14, 2019 at 4:43 PM Jo=C3=A3o T=C3=A1vora <joaotavora@HIDDEN=
> wrote:
>
> Hi maintainers,
>
> I'm using substring completion, icomplete-mode and C-x C-f.  Navigating
> deeper in directories using successive C-M-i's sometimes fails:
>
>   Emacs -Q
>   M-: (add-to-list 'completion-styles 'substring)
>   M-x icomplete-mode
>   C-x C-f p a t h / t o / e m a c s /
>   s r c C-M-i
>
> Expected to see the same as if I had typed "s r c /", instead I see
> "{lib-src | src }".

Discovered that this is by design in normal non-icomplete.el
conditions, i.e. minibuffer-force-completion is supposed to cycle.

However in icomplete-mode it doesn't make sense because
its "prospects list" will show what appears to be subfiles of the
completed directory.  Crucially, sometimes they *will* be subfiles
of the completed directory (and that depends on whether the user's
pattern matched one or more before the forced completion, which
cannot be known anymore).

Attach a patch that fixes this for icomplete.el only.

--=20
Jo=C3=A3o T=C3=A1vora

--0000000000001f1553057f8224f6
Content-Type: application/octet-stream; 
	name="0001-Repeated-C-M-i-doesn-t-cycle-directories-in-icomplet.patch"
Content-Disposition: attachment; 
	filename="0001-Repeated-C-M-i-doesn-t-cycle-directories-in-icomplet.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_jqy0abze0>
X-Attachment-Id: f_jqy0abze0

RnJvbSA4Mzc4MzNjNjZjNjM4YjNkODYzZjE0MmZmMzdlNTYzYjI3YTM2NzJlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Sm89QzM9QTNvPTIwVD1DMz1BMXZvcmE/PSA8
am9hb3Rhdm9yYUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMTUgSmFuIDIwMTkgMTY6NTA6NDAgKzAw
MDAKU3ViamVjdDogW1BBVENIXSBSZXBlYXRlZCBDLU0taSBkb2Vzbid0IGN5Y2xlIGRpcmVjdG9y
aWVzIGluIGljb21wbGV0ZS1tb2RlCgpEZXBlbmRpbmcgb24gd2V0aGVyIHRoZXJlIGlzIG9uZSBv
ciBtb3JlIGRpcmVjdG9yaWVzIG1hdGNoaW5nIGEKY2VydGFpbiBwYXR0ZXJuLCB3aGVuIEMtTS1p
IGNvbXBsZXRlcyB0byBhIGRpcmVjdG9yeSBuYW1lOgoKMS4gc29tZXRpbWVzIHByb3NwZWN0cyBh
cmUgdXBkYXRlZCB0byB0aGUgc3ViZmlsZXMgb2YgdGhlIGNvbXBsZXRlZCBkaXJlY3RvcnkKMi4g
c29tZXRpbWVzIHRoZXkgc3RheSBvbiB0aGUgcGFyZW50IGRpciwgZ2l2aW5nIHRoZSBpbXByZXNz
aW9uIHRoYXQgdGhlCiAgIGRpcmVjdG9yeSBoYXMgYSBzdWJkaXJlY3Rvcnkgd2l0aCB0aGUgc2Ft
ZSBuYW1lLgoKSW4gaWNvbXBsZXRlLW1vZGUsIGl0IGlzIHByZWZlcmFibGUgdG8gZG8gMSBhbHdh
eXMsIHRvIGF2b2lkCmljb25zaXN0ZW5jaWVzIHdpdGggdGhlIHByZXNlbnRhdGlvbiBvZiBwcm9z
cGVjdHMgaW4gdGhpcyBtb2RlLgoKKiBsaXNwL2ljb21wbGV0ZS5lbCAoaWNvbXBsZXRlLW1pbmli
dWZmZXItbWFwKTogQmluZCBDLU0taSB0bwppY29tcGxldGUtZm9yY2UtY29tcGxldGUuCihpY29t
cGxldGUtZm9yY2UtY29tcGxldGUpOiBOZXcgY29tbWFuZC4KCiogbGlzcC9taW5pYnVmZmVyLmVs
IChtaW5pYnVmZmVyLWZvcmNlLWNvbXBsZXRlKTogQWNjZXB0IG5ldyBhcmcKRE9OVC1DWUNMRS1E
SVJTLgotLS0KIGxpc3AvaWNvbXBsZXRlLmVsICB8IDEwICsrKysrLS0KIGxpc3AvbWluaWJ1ZmZl
ci5lbCB8IDY5ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IDIgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCgpkaWZm
IC0tZ2l0IGEvbGlzcC9pY29tcGxldGUuZWwgYi9saXNwL2ljb21wbGV0ZS5lbAppbmRleCBjMmNm
NGZhYjU4Li5kNmY2MGE4ODIwIDEwMDY0NAotLS0gYS9saXNwL2ljb21wbGV0ZS5lbAorKysgYi9s
aXNwL2ljb21wbGV0ZS5lbApAQCAtMTQ1LDEzICsxNDUsMTkgQEAgaWNvbXBsZXRlLXBvc3QtY29t
bWFuZC1ob29rCiAKIChkZWZ2YXIgaWNvbXBsZXRlLW1pbmlidWZmZXItbWFwCiAgIChsZXQgKCht
YXAgKG1ha2Utc3BhcnNlLWtleW1hcCkpKQotICAgIChkZWZpbmUta2V5IG1hcCBbP1xNLVx0XSAn
bWluaWJ1ZmZlci1mb3JjZS1jb21wbGV0ZSkKKyAgICAoZGVmaW5lLWtleSBtYXAgWz9cTS1cdF0g
J2ljb21wbGV0ZS1mb3JjZS1jb21wbGV0ZSkKICAgICAoZGVmaW5lLWtleSBtYXAgWz9cQy1qXSAg
J2ljb21wbGV0ZS1mb3JjZS1jb21wbGV0ZS1hbmQtZXhpdCkKICAgICAoZGVmaW5lLWtleSBtYXAg
Wz9cQy0uXSAgJ2ljb21wbGV0ZS1mb3J3YXJkLWNvbXBsZXRpb25zKQogICAgIChkZWZpbmUta2V5
IG1hcCBbP1xDLSxdICAnaWNvbXBsZXRlLWJhY2t3YXJkLWNvbXBsZXRpb25zKQogICAgIG1hcCkK
ICAgIktleW1hcCB1c2VkIGJ5IGBpY29tcGxldGUtbW9kZScgaW4gdGhlIG1pbmlidWZmZXIuIikK
IAorKGRlZnVuIGljb21wbGV0ZS1mb3JjZS1jb21wbGV0ZSAoKQorICAiQ29tcGxldGUgdGhlIG1p
bmlidWZmZXIuCitMaWtlIGBtaW5pYnVmZmVyLWZvcmNlLWNvbXBsZXRlJywgYnV0IGRvbid0IGN5
Y2xlLiIKKyAgKGludGVyYWN0aXZlKQorICAobWluaWJ1ZmZlci1mb3JjZS1jb21wbGV0ZSBuaWwg
bmlsICdkb250LWN5Y2xlKSkKKwogKGRlZnVuIGljb21wbGV0ZS1mb3JjZS1jb21wbGV0ZS1hbmQt
ZXhpdCAoKQogICAiQ29tcGxldGUgdGhlIG1pbmlidWZmZXIgYW5kIGV4aXQuCiBVc2UgdGhlIGZp
cnN0IG9mIHRoZSBtYXRjaGVzIGlmIHRoZXJlIGFyZSBhbnkgZGlzcGxheWVkLCBhbmQgdXNlCkBA
IC0zNzAsNyArMzc2LDcgQEAgaWNvbXBsZXRlLWNvbXBsZXRpb25zCiBtYXRjaGVzIGV4aXN0LiIK
ICAgKGxldCogKChpZ25vcmVkLWV4dGVuc2lvbi1yZQogICAgICAgICAgIChhbmQgY29tcGxldGlv
bi1pZ25vcmVkLWV4dGVuc2lvbnMKLSAgICAgICAgICAgICAgIChjb25jYXQgIlxcKD86XFxgXFwu
XFwuPy9cXHwiCisgICAgICAgICAgICAgICAoY29uY2F0ICJcXCg/OlxcYFxcLlxcLi9cXHwiCiAg
ICAgICAgICAgICAgICAgICAgICAgIChyZWdleHAtb3B0IGNvbXBsZXRpb24taWdub3JlZC1leHRl
bnNpb25zKQogICAgICAgICAgICAgICAgICAgICAgICAiXFwpXFwnIikpKQogICAgICAgICAgKG1p
bmlidWZmZXItY29tcGxldGlvbi10YWJsZSBjYW5kaWRhdGVzKQpkaWZmIC0tZ2l0IGEvbGlzcC9t
aW5pYnVmZmVyLmVsIGIvbGlzcC9taW5pYnVmZmVyLmVsCmluZGV4IDU3OGZkOWFiNjMuLmM0ZWQy
ZWYwMDQgMTAwNjQ0Ci0tLSBhL2xpc3AvbWluaWJ1ZmZlci5lbAorKysgYi9saXNwL21pbmlidWZm
ZXIuZWwKQEAgLTEyNzIsOSArMTI3MiwxMSBAQCBtaW5pYnVmZmVyLWZvcmNlLWNvbXBsZXRlLWFu
ZC1leGl0CiAgICA7OyB0ZXN0LWNvbXBsZXRpb24sIHRoZW4gd2Ugc2hvdWxkbid0IGV4aXQsIGJ1
dCB0aGF0IHNob3VsZCBiZSByYXJlLgogICAgKGxhbWJkYSAoKSAobWluaWJ1ZmZlci1tZXNzYWdl
ICJJbmNvbXBsZXRlIikpKSkKIAotKGRlZnVuIG1pbmlidWZmZXItZm9yY2UtY29tcGxldGUgKCZv
cHRpb25hbCBzdGFydCBlbmQpCisoZGVmdW4gbWluaWJ1ZmZlci1mb3JjZS1jb21wbGV0ZSAoJm9w
dGlvbmFsIHN0YXJ0IGVuZCBkb250LWN5Y2xlLWRpcnMpCiAgICJDb21wbGV0ZSB0aGUgbWluaWJ1
ZmZlciB0byBhbiBleGFjdCBtYXRjaC4KLVJlcGVhdGVkIHVzZXMgc3RlcCB0aHJvdWdoIHRoZSBw
b3NzaWJsZSBjb21wbGV0aW9ucy4iCitSZXBlYXRlZCB1c2VzIHN0ZXAgdGhyb3VnaCB0aGUgcG9z
c2libGUgY29tcGxldGlvbnMsIHVubGVzcworRE9OVC1DWUNMRS1ESVJTIGlzIG5vbi1uaWwgYW5k
IG1pbmlidWZmZXIgY29tcGxldGVkIHRvIGEKK2RpcmVjdG9yeSBuYW1lLiIKICAgKGludGVyYWN0
aXZlKQogICAoc2V0cSBtaW5pYnVmZmVyLXNjcm9sbC13aW5kb3cgbmlsKQogICA7OyBGSVhNRTog
TmVlZCB0byBkZWFsIHdpdGggdGhlIGV4dHJhLXNpemUgaXNzdWUgaGVyZSBhcyB3ZWxsLgpAQCAt
MTI4NCw3ICsxMjg2LDggQEAgbWluaWJ1ZmZlci1mb3JjZS1jb21wbGV0ZQogICAgICAgICAgKGVu
ZCAob3IgZW5kIChwb2ludC1tYXgpKSkKICAgICAgICAgIDs7IChtZCAoY29tcGxldGlvbi0tZmll
bGQtbWV0YWRhdGEgc3RhcnQpKQogICAgICAgICAgKGFsbCAoY29tcGxldGlvbi1hbGwtc29ydGVk
LWNvbXBsZXRpb25zIHN0YXJ0IGVuZCkpCi0gICAgICAgICAoYmFzZSAoKyBzdGFydCAob3IgKGNk
ciAobGFzdCBhbGwpKSAwKSkpKQorICAgICAgICAgKGJhc2UgKCsgc3RhcnQgKG9yIChjZHIgKGxh
c3QgYWxsKSkgMCkpKQorICAgICAgICAgc29sZSkKICAgICAoY29uZAogICAgICAoKG5vdCAoY29u
c3AgYWxsKSkKICAgICAgICAgKGNvbXBsZXRpb24tLW1lc3NhZ2UKQEAgLTEyOTcsMzQgKzEzMDAs
MzggQEAgbWluaWJ1ZmZlci1mb3JjZS1jb21wbGV0ZQogICAgICAodAogICAgICAgKGNvbXBsZXRp
b24tLXJlcGxhY2UgYmFzZSBlbmQgKGNhciBhbGwpKQogICAgICAgKHNldHEgZW5kICgrIGJhc2Ug
KGxlbmd0aCAoY2FyIGFsbCkpKSkKLSAgICAgIChjb21wbGV0aW9uLS1kb25lIChidWZmZXItc3Vi
c3RyaW5nLW5vLXByb3BlcnRpZXMgc3RhcnQgKHBvaW50KSkgJ3NvbGUpCi0gICAgICA7OyBTZXQg
Y3ljbGluZyBhZnRlciBtb2RpZnlpbmcgdGhlIGJ1ZmZlciBzaW5jZSB0aGUgZmx1c2ggaG9vayBy
ZXNldHMgaXQuCi0gICAgICAoc2V0cSBjb21wbGV0aW9uLWN5Y2xpbmcgdCkKLSAgICAgIChzZXRx
IHRoaXMtY29tbWFuZCAnY29tcGxldGlvbi1hdC1wb2ludCkgO0ZvciBjb21wbGV0aW9uLWluLXJl
Z2lvbi4KLSAgICAgIDs7IElmIGNvbXBsZXRpbmcgZmlsZSBuYW1lcywgKGNhciBhbGwpIG1heSBi
ZSBhIGRpcmVjdG9yeSwgc28gd2UnZCBub3cKLSAgICAgIDs7IGhhdmUgYSBuZXcgc2V0IG9mIHBv
c3NpYmxlIGNvbXBsZXRpb25zIGFuZCBtaWdodCB3YW50IHRvIHJlc2V0Ci0gICAgICA7OyBjb21w
bGV0aW9uLWFsbC1zb3J0ZWQtY29tcGxldGlvbnMgdG8gbmlsLCBidXQgd2UgcHJlZmVyIG5vdCB0
bywKLSAgICAgIDs7IHNvIHRoYXQgcmVwZWF0ZWQgY2FsbHMgbWluaWJ1ZmZlci1mb3JjZS1jb21w
bGV0ZSBzdGlsbCBjeWNsZQotICAgICAgOzsgdGhyb3VnaCB0aGUgcHJldmlvdXMgcG9zc2libGUg
Y29tcGxldGlvbnMuCi0gICAgICAobGV0ICgobGFzdCAobGFzdCBhbGwpKSkKLSAgICAgICAgKHNl
dGNkciBsYXN0IChjb25zIChjYXIgYWxsKSAoY2RyIGxhc3QpKSkKLSAgICAgICAgKGNvbXBsZXRp
b24tLWNhY2hlLWFsbC1zb3J0ZWQtY29tcGxldGlvbnMgc3RhcnQgZW5kIChjZHIgYWxsKSkpCi0g
ICAgICA7OyBNYWtlIHN1cmUgcmVwZWF0ZWQgdXNlcyBjeWNsZSwgZXZlbiB0aG91Z2ggY29tcGxl
dGlvbi0tZG9uZSBtaWdodAotICAgICAgOzsgaGF2ZSBhZGRlZCBhIHNwYWNlIG9yIHNvbWV0aGlu
ZyB0aGF0IG1vdmVkIHVzIG91dHNpZGUgb2YgdGhlIGZpZWxkLgotICAgICAgOzsgKGJ1ZyMxMjIy
MSkuCi0gICAgICAobGV0KiAoKHRhYmxlIG1pbmlidWZmZXItY29tcGxldGlvbi10YWJsZSkKLSAg
ICAgICAgICAgICAocHJlZCBtaW5pYnVmZmVyLWNvbXBsZXRpb24tcHJlZGljYXRlKQotICAgICAg
ICAgICAgIChleHRyYS1wcm9wIGNvbXBsZXRpb24tZXh0cmEtcHJvcGVydGllcykKLSAgICAgICAg
ICAgICAoY21kCi0gICAgICAgICAgICAgIChsYW1iZGEgKCkgIkN5Y2xlIHRocm91Z2ggdGhlIHBv
c3NpYmxlIGNvbXBsZXRpb25zLiIKLSAgICAgICAgICAgICAgICAoaW50ZXJhY3RpdmUpCi0gICAg
ICAgICAgICAgICAgKGxldCAoKGNvbXBsZXRpb24tZXh0cmEtcHJvcGVydGllcyBleHRyYS1wcm9w
KSkKLSAgICAgICAgICAgICAgICAgIChjb21wbGV0aW9uLWluLXJlZ2lvbiBzdGFydCAocG9pbnQp
IHRhYmxlIHByZWQpKSkpKQotICAgICAgICAoc2V0LXRyYW5zaWVudC1tYXAKLSAgICAgICAgIChs
ZXQgKChtYXAgKG1ha2Utc3BhcnNlLWtleW1hcCkpKQotICAgICAgICAgICAoZGVmaW5lLWtleSBt
YXAgW3JlbWFwIGNvbXBsZXRpb24tYXQtcG9pbnRdIGNtZCkKLSAgICAgICAgICAgKGRlZmluZS1r
ZXkgbWFwICh2ZWN0b3IgbGFzdC1jb21tYW5kLWV2ZW50KSBjbWQpCi0gICAgICAgICAgIG1hcCkp
KSkpKSkKKyAgICAgIChjb21wbGV0aW9uLS1kb25lCisgICAgICAgKHNldHEgc29sZSAoYnVmZmVy
LXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzIHN0YXJ0IChwb2ludCkpKSAnc29sZSkKKyAgICAgICh1
bmxlc3MgKGFuZCBkb250LWN5Y2xlLWRpcnMKKyAgICAgICAgICAgICAgICAgICBtaW5pYnVmZmVy
LWNvbXBsZXRpbmctZmlsZS1uYW1lCisgICAgICAgICAgICAgICAgICAgKGZpbGUtZGlyZWN0b3J5
LXAgc29sZSkpCisgICAgICAgIDs7IFNldCBjeWNsaW5nIGFmdGVyIG1vZGlmeWluZyB0aGUgYnVm
ZmVyIHNpbmNlIHRoZSBmbHVzaCBob29rIHJlc2V0cyBpdC4KKyAgICAgICAgKHNldHEgY29tcGxl
dGlvbi1jeWNsaW5nIHQpCisgICAgICAgIChzZXRxIHRoaXMtY29tbWFuZCAnY29tcGxldGlvbi1h
dC1wb2ludCkgO0ZvciBjb21wbGV0aW9uLWluLXJlZ2lvbi4KKyAgICAgICAgOzsgSWYgY29tcGxl
dGluZyBmaWxlIG5hbWVzLCAoY2FyIGFsbCkgbWF5IGJlIGEgZGlyZWN0b3J5LCBzbyB3ZSdkIG5v
dworICAgICAgICA7OyBoYXZlIGEgbmV3IHNldCBvZiBwb3NzaWJsZSBjb21wbGV0aW9ucyBhbmQg
bWlnaHQgd2FudCB0byByZXNldAorICAgICAgICA7OyBjb21wbGV0aW9uLWFsbC1zb3J0ZWQtY29t
cGxldGlvbnMgdG8gbmlsLCBidXQgd2UgcHJlZmVyIG5vdCB0bywKKyAgICAgICAgOzsgc28gdGhh
dCByZXBlYXRlZCBjYWxscyBtaW5pYnVmZmVyLWZvcmNlLWNvbXBsZXRlIHN0aWxsIGN5Y2xlCisg
ICAgICAgIDs7IHRocm91Z2ggdGhlIHByZXZpb3VzIHBvc3NpYmxlIGNvbXBsZXRpb25zLgorICAg
ICAgICAobGV0ICgobGFzdCAobGFzdCBhbGwpKSkKKyAgICAgICAgICAoc2V0Y2RyIGxhc3QgKGNv
bnMgKGNhciBhbGwpIChjZHIgbGFzdCkpKQorICAgICAgICAgIChjb21wbGV0aW9uLS1jYWNoZS1h
bGwtc29ydGVkLWNvbXBsZXRpb25zIHN0YXJ0IGVuZCAoY2RyIGFsbCkpKQorICAgICAgICA7OyBN
YWtlIHN1cmUgcmVwZWF0ZWQgdXNlcyBjeWNsZSwgZXZlbiB0aG91Z2ggY29tcGxldGlvbi0tZG9u
ZSBtaWdodAorICAgICAgICA7OyBoYXZlIGFkZGVkIGEgc3BhY2Ugb3Igc29tZXRoaW5nIHRoYXQg
bW92ZWQgdXMgb3V0c2lkZSBvZiB0aGUgZmllbGQuCisgICAgICAgIDs7IChidWcjMTIyMjEpLgor
ICAgICAgICAobGV0KiAoKHRhYmxlIG1pbmlidWZmZXItY29tcGxldGlvbi10YWJsZSkKKyAgICAg
ICAgICAgICAgIChwcmVkIG1pbmlidWZmZXItY29tcGxldGlvbi1wcmVkaWNhdGUpCisgICAgICAg
ICAgICAgICAoZXh0cmEtcHJvcCBjb21wbGV0aW9uLWV4dHJhLXByb3BlcnRpZXMpCisgICAgICAg
ICAgICAgICAoY21kCisgICAgICAgICAgICAgICAgKGxhbWJkYSAoKSAiQ3ljbGUgdGhyb3VnaCB0
aGUgcG9zc2libGUgY29tcGxldGlvbnMuIgorICAgICAgICAgICAgICAgICAgKGludGVyYWN0aXZl
KQorICAgICAgICAgICAgICAgICAgKGxldCAoKGNvbXBsZXRpb24tZXh0cmEtcHJvcGVydGllcyBl
eHRyYS1wcm9wKSkKKyAgICAgICAgICAgICAgICAgICAgKGNvbXBsZXRpb24taW4tcmVnaW9uIHN0
YXJ0IChwb2ludCkgdGFibGUgcHJlZCkpKSkpCisgICAgICAgICAgKHNldC10cmFuc2llbnQtbWFw
CisgICAgICAgICAgIChsZXQgKChtYXAgKG1ha2Utc3BhcnNlLWtleW1hcCkpKQorICAgICAgICAg
ICAgIChkZWZpbmUta2V5IG1hcCBbcmVtYXAgY29tcGxldGlvbi1hdC1wb2ludF0gY21kKQorICAg
ICAgICAgICAgIChkZWZpbmUta2V5IG1hcCAodmVjdG9yIGxhc3QtY29tbWFuZC1ldmVudCkgY21k
KQorICAgICAgICAgICAgIG1hcCkpKSkpKSkpCiAKIChkZWZ2YXIgbWluaWJ1ZmZlci1jb25maXJt
LWV4aXQtY29tbWFuZHMKICAgJyhjb21wbGV0aW9uLWF0LXBvaW50IG1pbmlidWZmZXItY29tcGxl
dGUKLS0gCjIuMTkuMgoK
--0000000000001f1553057f8224f6--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#34077; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 14 Jan 2019 16:32:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 14 11:32:55 2019
Received: from localhost ([127.0.0.1]:59251 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1gj5AV-00006c-1y
	for submit <at> debbugs.gnu.org; Mon, 14 Jan 2019 11:32:55 -0500
Received: from eggs.gnu.org ([209.51.188.92]:49755)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <joaotavora@HIDDEN>) id 1gj5AT-00006Q-Lj
 for submit <at> debbugs.gnu.org; Mon, 14 Jan 2019 11:32:54 -0500
Received: from lists.gnu.org ([209.51.188.17]:32867)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <joaotavora@HIDDEN>)
 id 1gj5AO-0000h3-9k
 for submit <at> debbugs.gnu.org; Mon, 14 Jan 2019 11:32:48 -0500
Received: from eggs.gnu.org ([209.51.188.92]:59956)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <joaotavora@HIDDEN>) id 1gj5AN-0000U6-A7
 for bug-gnu-emacs@HIDDEN; Mon, 14 Jan 2019 11:32:47 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: *
X-Spam-Status: No, score=2.0 required=5.0 tests=BAYES_20,FREEMAIL_FROM,
 GAPPY_SUBJECT autolearn=disabled version=3.3.2
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <joaotavora@HIDDEN>) id 1gj5AM-0000gG-LK
 for bug-gnu-emacs@HIDDEN; Mon, 14 Jan 2019 11:32:47 -0500
Received: from mail-wr1-x42b.google.com ([2a00:1450:4864:20::42b]:34940)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16)
 (Exim 4.71) (envelope-from <joaotavora@HIDDEN>)
 id 1gj5AM-0000fk-En
 for bug-gnu-emacs@HIDDEN; Mon, 14 Jan 2019 11:32:46 -0500
Received: by mail-wr1-x42b.google.com with SMTP id 96so23645849wrb.2
 for <bug-gnu-emacs@HIDDEN>; Mon, 14 Jan 2019 08:32:46 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:date:message-id:user-agent:mime-version
 :content-transfer-encoding;
 bh=ryATk08J7Oj+xOw5Urd3dBrtbMDSjNSmDVinC28r8QQ=;
 b=UfNvfvJBc24obPU/DugcZVUa07e1GvpEdbl6Sd0dzZ8xUfxsr+jd9aMw2XJSATuoJ/
 CbOuuVqtnrSA+Cth/zIxebvdDCXVcb+njxr3ZJPRb/CyxMDjPW3mpIJgmTfbv8IXlnmE
 RawJBmkix5Ah6PRX4ltKYx7KdkD8Fim+qEZ4VVqKx4pmcYxqjGtYyAADzRIDEOlo00mt
 soGf9t+zUXsKZYTJvYzjtztE4igS76Cn/w59oUhf4sl3HlJXFuAD1r60hL2n5W1If5+K
 JC8I9FX10xcYgp1Qib098RyBCMtBrWuKdtQLJ760YB+ncAdQfbYkmAAOv91RV65Srdfl
 VnHg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:user-agent
 :mime-version:content-transfer-encoding;
 bh=ryATk08J7Oj+xOw5Urd3dBrtbMDSjNSmDVinC28r8QQ=;
 b=ggp+e/VE0ya/7ucAiNYGj9z7TK9DosS7kVrFCEQMIX81dZt77EOgkaYzWNr0YDMg6Y
 xKaAlQlw0qFWceJrP+PWvSXThg6cPtR0dELvwTatbkIN3xfBvAo0xDC44zeDFmyu2WdA
 bPpwuscBOdJmV9KRg5mh8OHcpwj98OGWUOacPykr8qCGrQ+VSfSjhcTT3qx0979aQ5Rh
 qrDtfvSS391wyE2v/7gBgqPf1VRpKeJytNvh1ezdyqyMCeN1vq9owYdhu0AyJsy+x33H
 a6KJW8nx96PTezii0KJmUd4ec1F+bPu1ZLcLbX1P6Jfvn00Q+Lc2y6vT5yPl7Kr0wi63
 78kg==
X-Gm-Message-State: AJcUukdA2SegbUlSDENvlvT5m0qaw+SLb6fMPeByh1S7R/M8+Iby+X78
 i6eNjJk8WhgOxZo+zRK+GTQ=
X-Google-Smtp-Source: ALg8bN4RfHSGqz2LqahtMW3n04tNYrPtoabRZ7ZGh2LYGMs59prZcX+KflINt+VwPlmONQduHlUxGA==
X-Received: by 2002:adf:f848:: with SMTP id d8mr26546197wrq.178.1547483565416; 
 Mon, 14 Jan 2019 08:32:45 -0800 (PST)
Received: from GONDOMAR.yourcompany.com (mail3.siscog.pt. [195.23.29.18])
 by smtp.gmail.com with ESMTPSA id q9sm103599887wrp.0.2019.01.14.08.32.44
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Mon, 14 Jan 2019 08:32:44 -0800 (PST)
From: =?iso-8859-1?Q?Jo=E3o_T=E1vora?= <joaotavora@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 27.0.50; icomplete, substring completion and C-x C-f misbehaving
Date: Mon, 14 Jan 2019 16:32:42 +0000
Message-ID: <jjb5zurw66t.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (windows-nt)
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
X-Antivirus: AVG (VPS 190114-0, 14-01-2019), Outbound message
X-Antivirus-Status: Clean
X-detected-operating-system: by eggs.gnu.org: Genre and OS details not
 recognized.
X-Received-From: 2a00:1450:4864:20::42b
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Spam-Score: 2.3 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  Hi maintainers, I'm using substring completion,
 icomplete-mode
 and C-x C-f. Navigating deeper in directories using successive C-M-i's
 sometimes
 fails: Emacs -Q M-: (add-to-list 'completion-styles 'substring) M-x
 icomplete-mode C-x C-f p a t h / t o / e m a c s / s r c C-M-i 
 Content analysis details:   (2.3 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (joaotavora[at]gmail.com)
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 1.3 GAPPY_SUBJECT          Subject: contains G.a.p.p.y-T.e.x.t
X-Debbugs-Envelope-To: submit
Cc: monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.3 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  Hi maintainers, I'm using substring completion, icomplete-mode
    and C-x C-f. Navigating deeper in directories using successive C-M-i's sometimes
    fails: Emacs -Q M-: (add-to-list 'completion-styles 'substring) M-x icomplete-mode
    C-x C-f p a t h / t o / e m a c s / s r c C-M-i 
 
 Content analysis details:   (1.3 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
                             provider (joaotavora[at]gmail.com)
  1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
  1.3 GAPPY_SUBJECT          Subject: contains G.a.p.p.y-T.e.x.t
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

Hi maintainers,

I'm using substring completion, icomplete-mode and C-x C-f.  Navigating
deeper in directories using successive C-M-i's sometimes fails:
=20
  Emacs -Q
  M-: (add-to-list 'completion-styles 'substring)
  M-x icomplete-mode
  C-x C-f p a t h / t o / e m a c s /
  s r c C-M-i
=20
Expected to see the same as if I had typed "s r c /", instead I see
"{lib-src | src }".

This doesn't happen all the time: in this situation it seems to have
become confused by the fact that "lib-src" contains the substring "src"

Jo=E3o




Acknowledgement sent to João Távora <joaotavora@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#34077; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Thu, 17 Jan 2019 14:15:01 UTC

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