From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Managing environments (Python venv, guix environment, etc.) Date: Tue, 19 Jul 2016 09:39:42 -0400 Message-ID: References: <87y453sy0n.fsf@earth.catern.com> <87r3arripr.fsf@earth.catern.com> <87eg6qoj2l.fsf@earth.catern.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1468935905 24786 80.91.229.3 (19 Jul 2016 13:45:05 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 19 Jul 2016 13:45:05 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 19 15:44:57 2016 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 1bPVKQ-0000fE-A4 for ged-emacs-devel@m.gmane.org; Tue, 19 Jul 2016 15:44:54 +0200 Original-Received: from localhost ([::1]:56194 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPVKP-0006DR-Dt for ged-emacs-devel@m.gmane.org; Tue, 19 Jul 2016 09:44:53 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:57675) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPVFo-0001nr-Cs for emacs-devel@gnu.org; Tue, 19 Jul 2016 09:40:12 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bPVFj-0007dN-5E for emacs-devel@gnu.org; Tue, 19 Jul 2016 09:40:07 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:52966) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPVFi-0007bg-UR for emacs-devel@gnu.org; Tue, 19 Jul 2016 09:40:03 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1bPVFd-0005Zw-2x for emacs-devel@gnu.org; Tue, 19 Jul 2016 15:39:57 +0200 Original-Received: from 69-165-156-121.dsl.teksavvy.com ([69.165.156.121]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 19 Jul 2016 15:39:57 +0200 Original-Received: from monnier by 69-165-156-121.dsl.teksavvy.com with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 19 Jul 2016 15:39:57 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 34 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 69-165-156-121.dsl.teksavvy.com User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) Cancel-Lock: sha1:vLKGvWD7JaTvD7186BziImnmHqw= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:205842 Archived-At: >> Hard to tell. Even the question is unclear to me. The approach >> I suggest assumes you don't need/want to make changes to what I consider >> "core" and instead use existing hooks (in this case >> file-name-handler-alist). So it could be distributed via GNU ELPA, >> for example. > Oh, no, I do want to get this into Emacs. Because the use of these kind > of environments is pretty common at this point, and it would be nice if > Emacs natively understood them in a generic way. Then, yes, ELPA > packages could build on that functionality to support specific > kinds of environments. Same with the new project and xref functionality. I don't know enough about what you'd like to put in core to comment, then. > That seems like a decent UI. But in the manually set case, it is tricky > to implement, because of the related buffers problem... My impression is that this will have to be fixed case-by-case. There is a precedent for that, which is the handling of buffer-local settings. E.g. vc-diff is expected to obey the vc-diff-switches settings of the "original buffer" rather than those of the buffer where the process runs. So we sometimes go through the trouble to read some variables before switching to the destination buffer. Environments would "simply" fall into this case. But yes, those issues will have to fixed one-by-one. > Also, since this is a headline feature of GNU Guix, it would be nice to > support it in GNU Emacs. I'm not maintainer any more so I don't need to make those decisions. But if I were maintainer, I'd need to see the code before I could make a decision. Stefan