help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: I'm looking for a project management system for Emacs


From: Dan.Espen
Subject: Re: I'm looking for a project management system for Emacs
Date: Sun, 30 Mar 2014 00:29:53 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Marcin Borkowski <mbork@wmi.amu.edu.pl> writes:

> Dnia 2014-03-29, o godz. 13:11:33
> despen@verizon.net (Dan.Espen) napisaƂ(a):
>
>> Marcin Borkowski <mbork@wmi.amu.edu.pl> writes:
>> 
>> > Hello all,
>> >
>> > as stated in the subject line, I'm looking for a project management
>> > system in Emacs.  Since there are quite a few of them, I thought I
>> > could ask here.  I don't have /strict/ requirements, but rather a
>> > few problems I'd like that system to address, and a few features I'd
>> > probably need.
>> >
>> > 1. When I have many files open, switching to another buffer is a bit
>> > cumbersome, even when using Ido.  I'd like that system to have
>> > something like "ido-switch-buffer-within-project".
>> >
>> > 2. Files of the project might not be located in one folder (so
>> > e.g. Projectile probably won't work for me).  Rationale: there may
>> > be a few files somehere down the ~/Documents hierarchy and /one/
>> > file in ~/org.  On the other hand, I'd like to be able to specify
>> > that "this file and all files in that directory belong to this
>> > project", without manually listing all the files in "that
>> > directory".  It would then be best if adding a file into the
>> > specified directory (or tree) would add it /automatically/ to the
>> > project.
>> >
>> > 3. One file may belong to more than one project.  Rationale: see
>> > above.
>> >
>> > 4. It would be great if I could mark some /global/ variables
>> > project-dependent, i.e., each variable would have its "project
>> > instance", and switching between projects would mean changing its
>> > value accordingly.  (It would probably also need some kind of
>> > persistence, too.)  Rationale: org-clock-history;).
>> >
>> > 5. Of course, I'd like to be able to visit/kill all files/buffers
>> > related to the project with one command.  Also, adding a project
>> > (and a file/files to an existing project) should be possible in some
>> > interactive way (though using some Elisp variable for that might be
>> > acceptable).
>> >
>> > 6. On the other hand, window configuration management is not a must
>> > for me - currently I work 98% of the time on a small netbook and
>> > usually have only one window open anyway.  I'm planning to use a
>> > larger monitor in some time, though, so while not necessary, this
>> > would be a nice bonus.
>> >
>> > Is there anything in existence that would help me?  Are there any
>> > potentially useful features I did not think of that people find
>> > useful?
>> 
>> The only clear requirement I get out of this is open all files in
>> a project.
>
> Well, I thought I was clear enough...

Yeah, I guess I only read it all once.

>> The Makefile has to have the file list anyway.
>
> Assuming that you use make, which is not necessarily true.  And even if
> I do use make, then see point 2 above: I probably wouldn't include the
> org file (which might contain TODOs etc. for many projects) anywhere in
> the Makefile (at least I see no reason to do so, other than to put it
> there so it contains a full list...)
>
> I guess you are thinking of "a project" in terms of "a software
> project".  This might be true or not, in my case (assuming a usual

Nope, big Gnumake fan here.
Any directory/project I do work in is going to have Makefile(s).


> definition of software;)).  Other kinds of projects I'm working on are:
> LaTeX classes and packages (technically they /are/ software, but of a
> rather specific kind) and books/problem sets/articles (for which you
> have to stretch the definition of "software" considerably IMHO).
>
>> Perhaps something like:
>> 
>> PROJ_SRC:=$(wildcard *.c)
>> PROJ_HDR:=$(wildcard *.h)
>> 
>> open_all:
>>         emacsclient $(PROJ_SRC) $(PROJ_HDR)
>
> That's an interesting idea, though it does not solve my number one,
> which is one of the most important (I guess there was a reason to call
> it number one, though I might have done it unconsciously).

Just cycle through all the files in a project?

Maybe you want some TAG files?

-- 
Dan Espen


reply via email to

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