From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stephen Berman Newsgroups: gmane.emacs.bugs Subject: bug#14907: 24.3.50; Too few completions shown when case ignored Date: Fri, 19 Jul 2013 14:53:17 +0200 Message-ID: <87ppuehfsy.fsf@rosalinde.fritz.box> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1374238453 10737 80.91.229.3 (19 Jul 2013 12:54:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 19 Jul 2013 12:54:13 +0000 (UTC) To: 14907@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Jul 19 14:54:13 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1V0ACL-0002eW-8n for geb-bug-gnu-emacs@m.gmane.org; Fri, 19 Jul 2013 14:54:13 +0200 Original-Received: from localhost ([::1]:49837 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V0ACK-0004gH-UI for geb-bug-gnu-emacs@m.gmane.org; Fri, 19 Jul 2013 08:54:12 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:41022) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V0ACE-0004gA-Q5 for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:54:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V0ACB-0007D9-NA for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:54:06 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:42743) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V0ACB-0007D5-Jr for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:54:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1V0ACA-0004Ip-Uz for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:54:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stephen Berman Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 19 Jul 2013 12:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 14907 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.137423841916481 (code B ref -1); Fri, 19 Jul 2013 12:54:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 19 Jul 2013 12:53:39 +0000 Original-Received: from localhost ([127.0.0.1]:37059 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V0ABm-0004Hg-1t for submit@debbugs.gnu.org; Fri, 19 Jul 2013 08:53:38 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:39150) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V0ABh-0004H7-Nm for submit@debbugs.gnu.org; Fri, 19 Jul 2013 08:53:34 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V0ABZ-00078Z-KR for submit@debbugs.gnu.org; Fri, 19 Jul 2013 08:53:28 -0400 Original-Received: from lists.gnu.org ([208.118.235.17]:59412) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V0ABZ-00078V-Gt for submit@debbugs.gnu.org; Fri, 19 Jul 2013 08:53:25 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40860) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V0ABW-0004fV-Oa for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:53:25 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V0ABU-00076z-1v for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:53:22 -0400 Original-Received: from mout.gmx.net ([212.227.17.20]:62097) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V0ABT-00076t-PX for bug-gnu-emacs@gnu.org; Fri, 19 Jul 2013 08:53:19 -0400 Original-Received: from rosalinde.fritz.box ([89.245.110.192]) by mail.gmx.com (mrgmx103) with ESMTPSA (Nemesis) id 0Lp3Qu-1UWa3V2bCe-00exph for ; Fri, 19 Jul 2013 14:53:17 +0200 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-Provags-ID: V03:K0:NbAJVipm944spAjwCWSBbOeSNOvXU1QatWN5ia9KIDEXsccNnZn Vdyv9GYLB9mvrTh08YkKHQ1NzYC6tUHfcNnsgrqdu/R80zFGPW9yaKOMB4eLZ9aejzT3xND Lug4CjjI7vS7kMOiOgGb4POElMU5ZIpC5Xb0vbdVp7J5ks55Z2JUobubm546Uye3Y//bYto ypY5d5YYaShWPMnJZiaRQ== X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:76481 Archived-At: -1. cd /tmp; touch a A 0. emacs -Q 1. M-x set-variable RET read-file-name-completion-ignore-case RET t RET 2. C-x C-f a TAB => [Complete, but not unique] 3. TAB => *Completions* buffer shows only file `a'. Likewise, if at step 2 you type C-c C-f A TAB, then after the TAB in step 3, *Completions* shows only file `A'. If I debugged this correctly, the problem is due to completion--twq-all not distinguishing between prefix strings for completions that differ only in case. The following patch fixes this problem for me (I tried to reuse the relevant part of the requoting code, but haven't tested such cases). === modified file 'lisp/minibuffer.el' *** lisp/minibuffer.el 2013-05-30 03:18:06 +0000 --- lisp/minibuffer.el 2013-07-19 07:26:59 +0000 *************** *** 568,573 **** --- 568,580 ---- (cl-assert (string-prefix-p prefix completion 'ignore-case) t) (let* ((new (substring completion (length prefix))) (qnew (funcall qfun new)) + (rest (substring completion 0 (length prefix))) + (qrest (funcall qfun rest)) + ;; Distinguish completions that differ only in case. + (qprefix (if (completion--string-equal-p qprefix qrest) + (propertize qrest 'face + 'completions-common-part) + qprefix)) (qcompletion (concat qprefix qnew))) ;; FIXME: Similarly here, Cygwin's mapping trips this ;; assertion. In GNU Emacs 24.3.50.28 (x86_64-suse-linux-gnu, GTK+ Version 3.4.4) of 2013-07-18 on rosalinde Bzr revision: 113449 yamaoka@jpl.org-20130718112604-s5mf1r4odkd66rfe Windowing system distributor `The X.Org Foundation', version 11.0.11203000 System Description: openSUSE 12.2 (x86_64) Configured using: `configure --without-toolkit-scroll-bars CFLAGS=-g3 -O0' Important settings: value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=local locale-coding-system: utf-8-unix default enable-multibyte-characters: t