From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.devel Subject: Re: Per-language project-search-path, was: Re: Unified project interface Date: Sun, 2 Aug 2015 03:25:27 +0300 Message-ID: <55BD6377.6000609@yandex.ru> References: <557039DB.4060607@yandex.ru> <85iob2a2mm.fsf@stephe-leake.org> <55B2CDA4.8020207@yandex.ru> <868ua5caz6.fsf@stephe-leake.org> <55B441DD.9060806@yandex.ru> <86zj2jb1tx.fsf@stephe-leake.org> <55B517AC.5020401@yandex.ru> <86oaiybvbf.fsf@stephe-leake.org> <55B62B53.5060003@yandex.ru> <861tftaxgx.fsf@stephe-leake.org> <55B78F49.6010101@yandex.ru> <868ua09s1y.fsf@stephe-leake.org> <55B7CD86.20306@yandex.ru> <86oaiv8zqn.fsf@stephe-leake.org> <55B9590C.3080108@yandex.ru> <86wpxi6ovl.fsf@stephe-leake.org> <55BABE27.4040105@yandex.ru> <868u9wz4mw.fsf@stephe-leake.org> <55BC1D5F.4010502@yandex.ru> <86d1z7jnl9.fsf@stephe-leake.org> <55BCD3E9.40606@yandex.ru> <86oaiqj0q1.fsf@stephe-leake.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1438475147 17595 80.91.229.3 (2 Aug 2015 00:25:47 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 2 Aug 2015 00:25:47 +0000 (UTC) To: Stephen Leake , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Aug 02 02:25:42 2015 Return-path: Envelope-to: ged-emacs-devel@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 1ZLh5x-0001Ab-MW for ged-emacs-devel@m.gmane.org; Sun, 02 Aug 2015 02:25:41 +0200 Original-Received: from localhost ([::1]:54978 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZLh5w-0007FP-IR for ged-emacs-devel@m.gmane.org; Sat, 01 Aug 2015 20:25:40 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:41784) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZLh5s-0007FJ-An for emacs-devel@gnu.org; Sat, 01 Aug 2015 20:25:37 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZLh5p-0006X3-4o for emacs-devel@gnu.org; Sat, 01 Aug 2015 20:25:36 -0400 Original-Received: from mail-wi0-x233.google.com ([2a00:1450:400c:c05::233]:33537) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZLh5o-0006Wv-NM for emacs-devel@gnu.org; Sat, 01 Aug 2015 20:25:32 -0400 Original-Received: by wicmv11 with SMTP id mv11so95954457wic.0 for ; Sat, 01 Aug 2015 17:25:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:to:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-type:content-transfer-encoding; bh=U83gRCO8yI+9jc/lPuGW91icWYtVHezggNuV2gW8Q8c=; b=Gat+EVsxjli71cuXHKhqOk/tea14fMRBDc1XKqPBNdRb3uwJFs7mZa+qxEPytYh7Mo /NJiwLA2fZ06bGsesuHVExcdbNp0W6RVcjRH63k69MvehiZo21tj9O2pjQt6akxXirNw 75pXMYmp67u9N5d6AcGRKYBJ0jtKL6wAp1Ev66CuYPolWQEieDmUoYzOoo36UC7Rwya5 8RkagPBLJGzMJR9VFbqH3+RkZnmX7IenyKVbQrXd/6diuTVtC1A6FZJ33HHk1WtcHuB0 p5NLrIzvgQIbS5Kfh9ha/o9e3paBb6LPvJdlZ61XaRo2Rf73jEgoXjf2Iv6nVRVzreZN 3yeA== X-Received: by 10.194.237.232 with SMTP id vf8mr20356315wjc.22.1438475132035; Sat, 01 Aug 2015 17:25:32 -0700 (PDT) Original-Received: from [192.168.1.2] ([185.105.175.24]) by smtp.googlemail.com with ESMTPSA id uc16sm5553757wib.8.2015.08.01.17.25.30 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 01 Aug 2015 17:25:31 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:40.0) Gecko/20100101 Thunderbird/40.0 In-Reply-To: <86oaiqj0q1.fsf@stephe-leake.org> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:400c:c05::233 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:188286 Archived-At: On 08/01/2015 09:57 PM, Stephen Leake wrote: > I often mix languages in one directory anyway; the file extension > indicates the language, so there's no need for it in the directory name. All right. That's fine if you don't need it. >> And what about jdee? Would you treat lisp/.dir-locals.el as the >> project file for Elisp, and ask the user to select it? > > I think you are asking > > "what project would you use while editing elisp files that implement > jdee" > > ... > > Yes, serious users will want to explicitly select the active project. Okay. I could add that different languages can have interdependencies (like templates can references to "normal" source code), so it's not always easy to separate them. But I guess you can use their search paths together, and rely on filtering by extension. > If I'm debugging jdee, I want the search path to be elisp load-path, > whether I'm in a notes.text file, a jdee .el file, or a test .java file. > So I don't want Emacs to guess what the active project is, nor determine > the search path based on the mode. Fair enough. > (setq project-find-functions 'project-explicit-prj) When the package is ready, this should be added via add-hook, when a certain minor mode is enabled. > > A menu or completion list of previously selected projects would be > very useful here (I'm working on that). That minor mode could provide a relevant command. > - Provide a way for functions to require a particular type of project file > > This is mostly there; all functions that only work with projects of > some type should be cl-defmethods for that type. That's fine, but it's better is more functions are universal.