emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A project-files implementation for Git projects


From: Dmitry Gutov
Subject: Re: A project-files implementation for Git projects
Date: Tue, 17 Sep 2019 15:55:55 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

On 17.09.2019 15:03, Eli Zaretskii wrote:

'find' can handle an arbitrary list of ignores, including whitelisting
entries (a feature which I've yet to add, but still).

So you are going to convert the likes of .gitignore to a long list of
'find's -name arguments?  Instead of just using the tools that can do
this at a flip of a command-line argument?  Why?

First of all, it's already done and working.

Second, like I said, using Git for this purpose seems easy enough. Others, less so.

That's a separate topic, IMO, but IME (which is admittedly thin) any
"project" kind of feature requires the user to register the files
somehow, before the file appears in the tree shown by the project's
UI.

Not in my experience.

It's not intuitive that a user has to vc-register a file before it shows up in 'project-find-file'. At the very least, we'll have confused users, and I'm not sure explaining it all in the manual is the answer.

Second, I'd prefer it to keep working like it already does.

That's not exactly what Tassilo said, and "bzr help ls" is just a few
keystrokes away of each one of us.

I didn't have it installed, but OK.

From what I see, it doesn't allow to "unignore" certain files selectively, and I'm not sure if there's a way to apply additional ignores except by doing it in Lisp.

And the filenotify-based cache would do one job.

IME, filenotify doesn't scale well, so I won't recommend it for
non-toy projects in this context.

Even if we just listen to "create", "rename" and "delete" events?

Too bad. I imagine it has more to do with maturity of the package, then, so maybe someday.

I think you are wrong here.  It is 'find' that needs to be coerced to
do a job that is not really its prime, and a project's view is in most
cases almost exactly that of the VCS used for the project.

It's a job we've been using 'find' for for decades, and I only had to adapt some existing code.

The
difference is just-now added files that were not yet registered, and
how many of these can there be?

That's not the only problem. We want to change the ignores list arbitrarily, or maybe just use a user-defined one. It will usually correlate with the contents of gitignore/hgignore/bzrignore, but not exactly. And neither Hg or Bzr seem to offer easy ways to adjust their lists of ignores before output.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]