From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Default emacs init file location confusion Date: Tue, 07 Jan 2020 19:21:09 +0200 Message-ID: <837e23chdm.fsf@gnu.org> References: <83y2ukc55g.fsf@gnu.org> <85C8025D-ACFD-4DEB-B030-E46B3109323E@gnu.org> <83lfqjckjn.fsf@gnu.org> <83blrfci4q.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="118520"; mail-complaints-to="usenet@blaine.gmane.org" Cc: rpluim@gmail.com, smartlitchi@gmail.com, emacs-devel@gnu.org To: Elias =?utf-8?Q?M=C3=A5rtenson?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 07 18:21:57 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iosYG-000Qes-CN for ged-emacs-devel@m.gmane.org; Tue, 07 Jan 2020 18:21:56 +0100 Original-Received: from localhost ([::1]:53866 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iosYE-0007yj-RR for ged-emacs-devel@m.gmane.org; Tue, 07 Jan 2020 12:21:54 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55400) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iosXL-0006WO-EX for emacs-devel@gnu.org; Tue, 07 Jan 2020 12:21:00 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:50929) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iosXL-0000Oz-A7; Tue, 07 Jan 2020 12:20:59 -0500 Original-Received: from [176.228.60.248] (port=2378 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iosXK-0001LC-Il; Tue, 07 Jan 2020 12:20:59 -0500 In-reply-to: (message from Elias =?utf-8?Q?M=C3=A5rtenson?= on Wed, 8 Jan 2020 01:11:37 +0800) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:244074 Archived-At: > From: Elias MÃ¥rtenson > Date: Wed, 8 Jan 2020 01:11:37 +0800 > Cc: Robert Pluim , smartlitchi@gmail.com, > emacs-devel > > The confusion is that once I start Emacs without any configuration, the $HOME/.config/emacs will be created, > and after that the $HOME/.emacs.d will never be used, even though I don't actually have a configuration yet. > All I did was to start Emacs once. But Emacs did that with ~/.emacs.d/ as well: it would create it if it didn't exist when you first started. It did that silently without any warning. How is this situation different? The way to prevent the above is described in NEWS, btw. > I don't think the $HOME/.config/emacs should be created until there is actually a configuration to save. Or, > alternatively, before the user have confirmed where they want the configuration directory to be created. I'm not sure this is practical: there must be gazillion places where we assume that directory exists. E.g., what about auto-saving? we could defer the creation of the directory until we actually call do-auto-save, but that will only buy us what, 30 sec? > Since the $HOME/.config behaviour is new, it will not be easy for them to figure out why nothing works and > they will give up, perhaps never trying Emacs again. We need to decide which directory to create if neither of the 2 candidates exist. Previously, we had only one candidate, and we'd create it without any regrets. I don't think I see how the current situation is suddenly different. Moreover, I don't think I understand how to do something smarter, without breaking gobs of code that depends on user-emacs-directory be existing. Ideas welcome.