From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ergus Newsgroups: gmane.emacs.devel Subject: Project local variables. Date: Tue, 3 Nov 2020 20:41:40 +0100 Message-ID: <20201103194140.cyjy56zgx7757pxx@Ergus> References: <20201103194140.cyjy56zgx7757pxx.ref@Ergus> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="16232"; mail-complaints-to="usenet@ciao.gmane.io" To: Emacs-Devel List Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Nov 03 20:43:20 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ka2DA-00048u-CK for ged-emacs-devel@m.gmane-mx.org; Tue, 03 Nov 2020 20:43:20 +0100 Original-Received: from localhost ([::1]:39738 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ka2D9-0000s5-Cd for ged-emacs-devel@m.gmane-mx.org; Tue, 03 Nov 2020 14:43:19 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:60324) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ka2C0-0008Pf-Ae for emacs-devel@gnu.org; Tue, 03 Nov 2020 14:42:08 -0500 Original-Received: from sonic316-11.consmr.mail.bf2.yahoo.com ([74.6.130.121]:43553) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ka2Bw-0008Ok-11 for emacs-devel@gnu.org; Tue, 03 Nov 2020 14:42:07 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1604432521; bh=z2lDqz+k74uNhtRy7UdbuMxFCyugi26vCsbNz7tBqck=; h=Date:From:To:Subject:References:From:Subject; b=mOiOiJ/aHI4My7ikwO2YrwzXkkiveypLgMS+lW0g/vNABaCU4a6vjJW3C4Dzt+eL0K06xLge7CxZJzmCoA4CJtibEkcKnORxeCW1Q5a49vGqAXyC8t4unxN8UGxjjHbjX0YxYulF8v8FD9kiqaEODSB+xpIYsNRB9Xlb8iMkpxBapWk8xlIQhBcxG8p5Vyb+is9Eriat2WHd+HKfhkoL+eQiZdF/jobAp9cmuYTSWDAGPwwQO7TwxdP0n9ZTDjr7MI0sVCfmz8sgdQg3iiu/OD1Xn8yk+SXS9DeC0dMuxK7bVhA/ZYTcO8QK2ewgqstXbGyUJNVVcuqQi2L2af8u0g== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1604432521; bh=rDbQL/1rkymEqFCpr+3yc45MrYhp5YaTSBBjMUBvyI7=; h=Date:From:To:Subject; b=nn+uL7uhKndTs9zfILtGVUjIdGUR+UNuMGdW5KBQG0784U8YZtldoe8V+qzEgwrgdd1mqpjMTNy2Dtwb+2rBQ8IcAQRlvcXoLWIS5tkB6XwKkAiiDlrnvhRR9zsPcB5P30aV9yqnyWMW7NQXvwA6yt1+2hbPzHPdtSylrJ+e6CKQH2wKtGQ/L5u+KVqyIua0eEcbdnwe3tKWB7hNYz7IoVWLwDHZBY6U+Dg039VHhe1d7U1JV8d9+0370T6ZwE91fZP3fVnl5E9RXjJ2JMr5yPwXX4HWPdNMQk1YHrVJ84+bbg8idAXoyh/U011uXWhMT/l67CwLZWc9RRzUoleruw== X-YMail-OSG: RV1YPg4VM1klbDxgRp5nu_rzO.j201Mi0l.uLUbAjBJKvYECG2clMNcY9X1OyUO U6GqnsFtBr7kbqcYhAAI2cIoPXmVClUmvDn9axe5vBoxp7o_6kIBCrNGBem_xmi8L90NWdJQ4dkj QLPXDN.dM1kZRpFFgB_VZlOgUOxoiVRIagCu3DCOF8FcMWjD0SnDC7zYBU0eZPrzRePwECVTsyKJ ouq..xBGEUi9HES_qq6JUOj0owPwQcLQ_5kSzrsNSnoJjTusZza9o_gCoyZBCMz2MpIt1hNDZDNy K8wcrWfngpDM_NLr8hJ9V5VNP74QxjGmFHhVYzdH3EMBWr8fV.8yMTFXgGk3a1d0p0wKynN7yOfE RneQ2u1kmA3vlBz468LgTpJF7CNZP.mFEFJ6yXWuFBHytbWclD2F49n5r3HrvUTvMa_ZxNEQGv5E WRHXk1UrLCAs5JUKTZmLGNQNzOkfchT_SagpFR7A8UZT6tdlX3JLGjXC7w0ekAMeaqhn_ji8fASP KVn_I9J6MB3qo5RooGT5HnwXqzJ24n3kLeW2.h2vofGb6E6I18r.IFSQN2cNyEMs0QReE6tv5QLT CE.qo9l6R.QYKTO2t5lMx62d6vJi4Og5OUXK1V9cmoc15p_.rxIQY.pQy61kDzvncNTXbjJO98HG pBHKAxDT61gMDiyHbfHCQdUNODxRzwa_ucL7xZGIfFO2RfJnfupXrvImTLWNdXbuuJnW5cxHl35n SSgwpbfjzQWyXTtaWVfAWf9aGrjTTNp5AfxOLnqP2LL4n5HpJvfx7G9DlIuBPWEeuEdoXQ.iI5JB FDiB9pCpq1hbTMiIfPtHg13mTW7x9ag7UptH77Thc8 Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic316.consmr.mail.bf2.yahoo.com with HTTP; Tue, 3 Nov 2020 19:42:01 +0000 Original-Received: by smtp413.mail.ir2.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 2d959442ec83487c1c7168c207d6956c; Tue, 03 Nov 2020 19:41:54 +0000 (UTC) Content-Disposition: inline X-Mailer: WebService/1.1.16944 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Apache-HttpAsyncClient/4.1.4 (Java/11.0.7) Received-SPF: pass client-ip=74.6.130.121; envelope-from=spacibba@aol.com; helo=sonic316-11.consmr.mail.bf2.yahoo.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/11/03 14:42:01 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:258661 Archived-At: Hi: Looking at the evolution of project.el I want to know if there is any sort of project local environment/namespace/scope. The idea is to provide some variables that could be shared by all the files in the same project but that could be modified by external-packages at the elisp level. something like "setq-project"?? A use case is for example when working in tramp some operations are expensive like looking for an executable in the remote system. The search could be made only once; but then if a local file is open the cached value will be wrong. The other case is to use the buffer-local variables, but then it will need to be initialized once/per file every time a file is open. Something that in my case affected performance especially with lsp and elpy Currently I am using a work-around with a global hash-table and a variable definer in the dir-locals.el as a prefix, but maybe something more elegant should/must be already implemented and I am not aware of?? Best, Ergus