all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stephen Leake <stephen_leake@stephe-leake.org>
To: emacs-devel@gnu.org
Subject: Re: running EDE from a file that is not under a project root dir
Date: Thu, 06 Aug 2015 10:03:03 -0500	[thread overview]
Message-ID: <86twsc8no8.fsf@stephe-leake.org> (raw)
In-Reply-To: <55C3488F.5050600@siege-engine.com> (Eric Ludlam's message of "Thu, 06 Aug 2015 07:44:15 -0400")

Eric Ludlam <eric@siege-engine.com> writes:

> On 08/06/2015 04:37 AM, Stephen Leake wrote:
>> For example, if you are in an Ada file that is not part of the current
>> project, and invoke 'ada-find-other-file' (to move from body to
>> specification), you will get an error "file is not in the current
>> project". That prevents the sort of error you describe above.
>>
>> But all commands that use project information should get it from the
>> single current project, yes.
>
> Ah, this is the distinction I was missing.  The global project only
> affects unaffiliated files.  I think I could agree with that.

Only a few project-related commands work from files that are not part of
any project; xref-find-identifier would be one of the ones that does.

In files that are part of a project, it is still the single global
project that is used.

>> There are two levels of "optional" here; `ede-current-project' could
>> always check the global var first; people who don't want that style just
>> leave it set to nil.
>>
>> Or the single global variable could be one of a user-configurable list
>> of things that ede-current-project checks.
>
> The logic I would expect is that the buffer local variable wins, and
> if it is empty, it checks the global project.  That would prevent
> mistakes and provide flexibility.  If you want the global value to win
> against the local value, that could be an option which I would avoid
> using. ;)

As long as I can avoid having the buffer local variable ever get set,
that would work for me. From the little I've seen, that seems like major
surgery on the current EDE project-detect code.

> I tend to work across multiple projects at the same time because CEDET
> is a support library, so I test it with different other projects.
> Having to constantly select what is active would be a PITA for me.

Ok, that's a good use case. Hence the Emacs Prime Directive :).

>> Hmm. In addition, I would expect the Development | Load Project menu
>> command to set the global variable, but others won't. So that needs to
>> be configurable somehow. Ah; if ede-current-project is set to not check
>> the global variable, it doesn't matter if it gets set. That was easy :).
>
> The load menu just makes sure the project has been loaded in, then you
> can use project browsers and such.  Selecting the active project seems
> like a different feature.  

It could be a separate menu item, as long as they are both clearly
visible at the same time. 

So "load project" would add the project to the list of projects that
"select project" offers.

> I'd want to see the suite of options before
> recommending what goes where.

Right; the devil is in the details.

-- 
-- Stephe



  reply	other threads:[~2015-08-06 15:03 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-04 18:13 running EDE from a file that is not under a project root dir Stephen Leake
2015-08-04 23:18 ` Dmitry Gutov
2015-08-05  7:48   ` Stephen Leake
2015-08-05  9:30     ` Dmitry Gutov
2015-08-06  8:01       ` Stephen Leake
2015-08-06 10:34         ` Dmitry Gutov
2015-08-06 14:39           ` Stephen Leake
2015-08-06 21:45             ` Dmitry Gutov
2015-08-07 14:15               ` Stephen Leake
2015-08-05  1:57 ` Eric Ludlam
2015-08-05  6:43   ` Stephen Leake
2015-08-05  7:20     ` Stephen Leake
2015-08-05 15:09       ` Eli Zaretskii
2015-08-05 11:42     ` Eric Ludlam
2015-08-06  8:37       ` Stephen Leake
2015-08-06 10:55         ` David Engster
2015-08-06 14:55           ` Stephen Leake
2015-08-07 10:48             ` David Engster
2015-08-07 14:28               ` Stephen Leake
2015-08-07 14:53                 ` David Engster
2015-08-10 10:09             ` Steinar Bang
2015-08-06 11:44         ` Eric Ludlam
2015-08-06 15:03           ` Stephen Leake [this message]
2015-08-05 11:51     ` Eric Ludlam
2015-08-06  8:58       ` Stephen Leake
2015-08-08 15:26         ` Stephen Leake
2015-08-08 21:07           ` Eric Ludlam
2015-08-05  9:54   ` Dmitry Gutov

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

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

  git send-email \
    --in-reply-to=86twsc8no8.fsf@stephe-leake.org \
    --to=stephen_leake@stephe-leake.org \
    --cc=emacs-devel@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.