unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Lars Ingebrigtsen <larsi@gnus.org>
To: Glenn Morris <rgm@gnu.org>
Cc: vmalloc@gmail.com, 16577@debbugs.gnu.org,
	Stefan Monnier <monnier@iro.umontreal.ca>
Subject: bug#16577: Add regexp-based version of completion-ignored-extensions
Date: Sun, 20 Feb 2022 14:26:47 +0100	[thread overview]
Message-ID: <87r17xsm7c.fsf_-_@gnus.org> (raw)
In-Reply-To: <oaiot3se1u.fsf@fencepost.gnu.org> (Glenn Morris's message of "Tue, 28 Jan 2014 21:43:41 -0500")

Glenn Morris <rgm@gnu.org> writes:

> In the short term, maybe it would be better if .git etc were removed
> from completion-ignored-extensions.

This was eight years ago, which is probably still short term in Emacs
years.

Anyway, this problem is still present in Emacs 29.  To reproduce:

mkdir /tmp/dir
mkdir /tmp/dir/a.git
mkdir /tmp/dir/aCVS
mkdir /tmp/dir/b
mkdir /tmp/dir/c
emacs -Q /tmp/dir
M-x ido-mode
C-x C-f

Notice that it only completes to b and c, and a.git and aCVS are
excluded.  This is because:

completion-ignored-extensions
=>
(".o" "~" ".bin" ".lbin" ".so" ".a" ".ln" ".blg" ".bbl" ".elc" ".lof" ".glo" ".idx" ".lot" ".svn/" ".hg/" ".git/" ".bzr/" "CVS/" "_darcs/" "_MTN/" ".fmt" ".tfm" ".class" ".fas" ".lib" ".mem" ".x86f" ".sparcf" ".dfsl" ".pfsl" ".d64fsl" ".p64fsl" ".lx64fsl" ".lx32fsl" ".dx64fsl" ".dx32fsl" ".fx64fsl" ".fx32fsl" ".sx64fsl" ".sx32fsl" ".wx64fsl" ".wx32fsl" ".fasl" ".ufsl" ".fsl" ".dxl" ".lo" ".la" ".gmo" ".mo" ".toc" ".aux" ".cp" ".fn" ".ky" ".pg" ".tp" ".vr" ".cps" ".fns" ".kys" ".pgs" ".tps" ".vrs" ".pyc" ".pyo")

So we're using this mechanism to try to exclude directories named "CVS",
which end up excluding directories called "aCVS".

I think perhaps of introducing a regexp-based extra mechanism here that
we should introduce a new completion-ignored-files variable, which would
default to '(".svn/" ".hg/" ".git/" ".bzr/" "CVS/" "_darcs/" "_MTN/")
(probably), and then remove those from -extensions.

However, this will require a lot of work --
completion-ignored-extensions is used many places (and it's commonly
used as a regexp), so it may require rewriting a whole bunch of stuff.
And it'll be slightly non-backwards-compatible if a user has removed
"CVS/" from the old variable, and then it reappears in the new one.

But it sounds worth doing, I think.

Anybody have any opinions?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





  reply	other threads:[~2022-02-20 13:26 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-28 11:15 bug#16577: 24.3; Ido omitting directories with similar names to other directories Rotem Yaari
2014-01-28 16:00 ` Eli Zaretskii
2014-01-28 17:18   ` Glenn Morris
2014-01-28 17:24     ` Eli Zaretskii
2014-01-28 17:35       ` Rotem Yaari
2014-01-28 17:39         ` Eli Zaretskii
2014-01-28 18:59       ` Glenn Morris
2014-01-28 19:17         ` Eli Zaretskii
2014-01-28 20:15           ` Glenn Morris
2014-01-28 21:39             ` Stefan Monnier
2014-01-29  2:43             ` Glenn Morris
2022-02-20 13:26               ` Lars Ingebrigtsen [this message]
2022-02-20 15:06                 ` bug#16577: Add regexp-based version of completion-ignored-extensions Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-02-20 22:05                   ` bug#16577: [External] : " Drew Adams
2022-02-21 14:00                   ` Lars Ingebrigtsen
2022-02-21 16:06                     ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-02-21 16:20                       ` Lars Ingebrigtsen
2022-02-21 16:23                         ` Lars Ingebrigtsen
2022-02-21 16:57                           ` Eli Zaretskii
2022-02-21 17:01                             ` Lars Ingebrigtsen
2022-02-21 17:13                               ` Eli Zaretskii
2022-02-21 17:36                                 ` Lars Ingebrigtsen
2022-02-21 17:01                         ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-02-21 17:33                           ` bug#16577: [External] : " Drew Adams
2022-02-22 13:17                           ` Lars Ingebrigtsen
2022-02-22 13:56                             ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-02-23 12:05                               ` Lars Ingebrigtsen
2022-02-20 21:48                 ` bug#16577: [External] : " Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r17xsm7c.fsf_-_@gnus.org \
    --to=larsi@gnus.org \
    --cc=16577@debbugs.gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rgm@gnu.org \
    --cc=vmalloc@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).