emacs-devel
[Top][All Lists]
Advanced

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

Re: master 1e3b0f2: Improve doc strings of project.el


From: Dmitry Gutov
Subject: Re: master 1e3b0f2: Improve doc strings of project.el
Date: Sun, 21 Jun 2020 00:58:51 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0

On 20.06.2020 15:36, Eli Zaretskii wrote:

What I meant is, is there harm in modeling that kind of project as VC
project with just lots of exceptions (additional ignores). Or is that
just difficult.

I don't understand the question.  What is a "VC project", and how is
it relevant to the use case I described with grepping another
directory to see how others solved some problem?

A VC project is a project recognized by the VC project backend.

It's tweakable by customizing project-vc-ignores (or, more preferably, setting that variable in dir-locals.el) and the project-vc-external-roots-function variable.

OTOH, we already have a customization point that allows to exclude more
files than .gitignore does (the project-vc-ignores variable).

I don't think exclusion alone is enough.  We need also a way of
_including_ files in a project.

It's on my list. As long as we're talking about whitelisting files in
the same directory tree.

That's part of the issue, but it isn't all of it.

But also see project-external-roots.

That supports only entire directory trees, so is not selective enough,
IMO.

Perhaps. But does that affect your usage?

I'm still not sure about the entirety of your usage scenario.

You have this project, which is current. Do you switch to other projects in the same session? How do they generally look? Is is generally the same idea of having an arbitrary set of files and buffers?

*And* one can use the project API to introduce a project backend that
does not rely on VC repositories.

I think we should have commands to do so in the core.  It's too basic
a capability for any IDE for us to leave it to add-ons.

Commands? Project backends are applied automatically in the current model.

Don't understand what you are saying here, either.  Are you saying a
backend cannot support some notion of starting a project, or of adding
a file to a project?

If we do decide on the separate backend approach, this can be done. But the commands would need to clearly specify that they work (and probably enable) a particular kind of project backend. So this is workable, but a bit clunky, so I'd like to see a bit more general support for this approach before adding it to project.el. But that shouldn't stop us from working on it.

BTW, you're saying it's a "basic IDE capability", and that other editors have that. Do you have a particular editor in mind as an example? So we're speaking the same language.



reply via email to

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