From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Marcin Borkowski Newsgroups: gmane.emacs.help Subject: Re: I'm looking for a project management system for Emacs Date: Sat, 29 Mar 2014 19:03:34 +0100 Organization: WMI UAM Message-ID: <20140329190334.70af90c9@aga-netbook> References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1396116248 29926 80.91.229.3 (29 Mar 2014 18:04:08 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 29 Mar 2014 18:04:08 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sat Mar 29 19:04:03 2014 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WTxbu-0003Gj-EF for geh-help-gnu-emacs@m.gmane.org; Sat, 29 Mar 2014 19:04:02 +0100 Original-Received: from localhost ([::1]:40437 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WTxbt-0003vh-RE for geh-help-gnu-emacs@m.gmane.org; Sat, 29 Mar 2014 14:04:01 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:33310) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WTxbd-0003vO-EZ for help-gnu-emacs@gnu.org; Sat, 29 Mar 2014 14:03:51 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WTxbX-0000Tm-OU for help-gnu-emacs@gnu.org; Sat, 29 Mar 2014 14:03:45 -0400 Original-Received: from msg.wmi.amu.edu.pl ([2001:808:114:2::50]:34248) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WTxbX-0000Tc-EJ for help-gnu-emacs@gnu.org; Sat, 29 Mar 2014 14:03:39 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by msg.wmi.amu.edu.pl (Postfix) with ESMTP id F31884209C for ; Sat, 29 Mar 2014 19:03:36 +0100 (CET) Original-Received: from msg.wmi.amu.edu.pl ([127.0.0.1]) by localhost (msg.wmi.amu.edu.pl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MLFAjPOsXgwU for ; Sat, 29 Mar 2014 19:03:36 +0100 (CET) Original-Received: from aga-netbook (unknown [212.67.140.17]) by msg.wmi.amu.edu.pl (Postfix) with ESMTPSA id AE36942072 for ; Sat, 29 Mar 2014 19:03:36 +0100 (CET) In-Reply-To: X-Mailer: Claws Mail 3.8.1 (GTK+ 2.24.20; i686-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:808:114:2::50 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:96837 Archived-At: Dnia 2014-03-29, o godz. 13:11:33 despen@verizon.net (Dan.Espen) napisa=C5=82(a): > Marcin Borkowski writes: >=20 > > 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? >=20 > The only clear requirement I get out of this is open all files in > a project. Well, I thought I was clear enough... > 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 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: >=20 > PROJ_SRC:=3D$(wildcard *.c) > PROJ_HDR:=3D$(wildcard *.h) >=20 > 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). Best, --=20 Marcin Borkowski http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski Adam Mickiewicz University