GNU bug report logs - #41572
28.0.50; [PATCH] Support plain project marked with file .emacs-project

Previous Next

Package: emacs;

Reported by: Zhu Zihao <cjpeople2013 <at> gmail.com>

Date: Thu, 28 May 2020 04:46:02 UTC

Severity: normal

Merged with 54228

Found in versions 28.0.50, 29.0.50

Fixed in version 29.1

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


Message #201 received at 41572 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: philipk <at> posteo.net, rudi <at> constantly.at, eric <at> ericabrahamsen.net,
 cjpeople2013 <at> gmail.com, theo <at> thornhill.no, mardani29 <at> yahoo.es,
 joaotavora <at> gmail.com, manuel.uberti <at> inventati.org, juri <at> linkov.net,
 salutis <at> me.com, arstoffel <at> gmail.com, 41572 <at> debbugs.gnu.org
Subject: Re: bug#41572: 28.0.50; [PATCH] Support plain project marked with
 file .emacs-project
Date: Sat, 26 Nov 2022 16:27:32 +0200
> Date: Sat, 26 Nov 2022 15:22:36 +0200
> Cc: philipk <at> posteo.net, rudi <at> constantly.at, eric <at> ericabrahamsen.net,
>  cjpeople2013 <at> gmail.com, theo <at> thornhill.no, mardani29 <at> yahoo.es,
>  salutis <at> me.com, joaotavora <at> gmail.com, manuel.uberti <at> inventati.org,
>  juri <at> linkov.net, arstoffel <at> gmail.com, 41572 <at> debbugs.gnu.org
> From: Dmitry Gutov <dgutov <at> yandex.ru>
> 
> On 26/11/22 09:47, Eli Zaretskii wrote:
> 
> >> +(defcustom project-vc-extra-root-markers nil
> >> +  "List of additional \"markers\" to signal project roots.
> >> +
> >> +A marker is either a base file name or a glob pattern for such.
> >> +
> >> +These will be used in addition to regular directory markers such
> >> +as .git, .hg, and so on, dependent on the value of
> >> +`vc-handled-backends'.
> > 
> > "These will be used" how?  This crucial information is sorely missing from
> > this description.  Likewise, how "markers" that are not files are used and
> > are useful?
> 
> Not files, meaning, markers which are globs with wildcards?
> 
> >>                          They are most useful when a VC project
> >> +has subdirectories inside it that need to be considered as
> >> +separate projects, but still use the parent's ignore rules and
> >> +general behaviors.
> > 
> > How are "markers" useful in this scenario?
> 
> As mentioned in e.g. 
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54228#11, monorepos often 
> contain subdirectories which one might want to handle separately.
> 
> Those subdirectories often come in standard structures, e.g. a frontend 
> subdirectory might contain a file called "package.json", a backend 
> subdirectory might contain "Gemfile" or "build.gradle", or perhaps 
> "autogen.sh", and so on.
> 
> Adding those to the markers list will tag those subdirectories as 
> projects on their own. People can also use the file names special to 
> their particular organization instead of those above.
> 
> >> +It can also be used for projects outside of VC repositories.
> >> +Their behavior will still obey the relevant variables, such as
> >> +`project-vc-ignores' or `project-vc-name'."
> > 
> > And in this one?
> 
> This covers the use cases described in the first messages of this and 
> the merged bug report:
> 
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=41572#5
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54228#5
> 
> People would add ".project" or ".emacs-project" to 
> project-vc-extra-root-markers and see things work.
> 
> Might have to restart Emacs, though, if they already called project 
> commands in the given directory, because the current project info is cached.
> 
> > IOW, please describe the main ideas of this approach instead of relying on
> > use immediately gleaning that from a patch with incomplete documentation.
> 
> If you have further questions, please ask.

Thanks, but I meant for at least some of the above to be in the doc strings
and/or explained here in plain English.  Readers aren't supposed to search
bug reports for relevant information.  (And for me personally, this means I
won't be able to look up the relevant information before at least another
week or two, which is a pity.)




This bug report was last modified 2 years and 170 days ago.

Previous Next


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