emacs-devel
[Top][All Lists]
Advanced

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

Re: Unified project interface


From: Stephen Leake
Subject: Re: Unified project interface
Date: Tue, 28 Jul 2015 06:05:42 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (windows-nt)

Stephen Leake <address@hidden> writes:

> Dmitry Gutov <address@hidden> writes:
>
>> On 07/26/2015 09:57 PM, Stephen Leake wrote:
>>
>>> A list of project names. Depending on the project manager, that implies
>>> a list of project files in one syntax or another, each of which
>>> specifies a set of project directories (explicitly or implicitly).
>>
>> Could you give an example?
>
> Ada, gradle.
>
>> Since they're referred only by names, this sounds like a list of
>> dependencies on the installed packages. Those we usually don't want to
>> edit, and I'd classify them as system includes.
>
> I don't know who this "we" is, but I usually structure a large project
> as a main with several lower level libraries, all of which I maintain,
> and I edit them all together to implement new functionality in main. So
> that has to be a choice.
>
>>> Trust what the project file says. The user told Emacs to use the project
>>> file; it should not try to be smarter.
>>
>> So, xref-find-regexp won't call project-root. Got it.
>
> Actually, 'xref-find-regexp' should be named 'project-find-regexp' (or
> prj-find-regexp). Keep 'xref' for strictly cross-reference stuff;
> 'project' is for more general project stuff.
>
> Either that, or drop 'project' and just call it all 'xref'.
>
>>> If the user wants documentation in the project, then it is in the
>>> project file. If the project manager tool is brain-dead and can't handle
>>> documentation, the the user can switch tools.
>>
>> In that case, will the user add the documentation directory to the
>> search-path section of the project file?
>
> Yes, except most backend project files don't have things called
> "search-path", since they are not for editors; it would be
> "source-path".
>
>> To sum up, I see a strong case for project-search-path as you
>> described it (maybe under a different name; like project-directories,
>> as it is now), and so far, no real case for project-root.
>
> Ok, we are converging.

I just realized project.el is in emacs master; I thought it was only in
the experimental branch.

So some specific change proposals:

- Rename 'project-directories' to 'project-root-directories' or
  'project-roots'. The current project root should always be first in
  the list.

- 'project-search-path' should not include 'project-root-directories'.

- 'elisp-search-path' should not include 'package-user-dir';
  package-user-dir is not an elisp source directory, and load-path
  already includes the subdirs of it, if packages are initialized.
  
-- 
-- Stephe



reply via email to

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