From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: [External] : Re: Default custom file was: Re: Propose to add setup-wizard.el to ELPA Date: Thu, 6 Jan 2022 22:09:09 +0000 Message-ID: References: <740A136F-8710-4F4C-BFC1-A3DB418447F4@gmail.com> <87zgoc7u6k.fsf@gmail.com> <83iluzbqcr.fsf@gnu.org> <87r19nxx7x.fsf@gmail.com> <878rvv9esx.fsf@yahoo.com> <87fsq28x4l.fsf@yahoo.com> <87bl0q8vfa.fsf@yahoo.com> <83pmp69vsu.fsf@gnu.org> <8735m17l8c.fsf@yahoo.com> <875yqx5nub.fsf@yahoo.com> <83lezt8cm6.fsf@gnu.org> <871r1k38ym.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="9611"; mail-complaints-to="usenet@ciao.gmane.io" To: Tim Cross , "emacs-devel@gnu.org" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Jan 06 23:10:31 2022 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 1n5axr-0002Kt-0U for ged-emacs-devel@m.gmane-mx.org; Thu, 06 Jan 2022 23:10:31 +0100 Original-Received: from localhost ([::1]:34892 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n5axp-0003nK-IL for ged-emacs-devel@m.gmane-mx.org; Thu, 06 Jan 2022 17:10:29 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:49956) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5awh-00036z-Nt for emacs-devel@gnu.org; Thu, 06 Jan 2022 17:09:19 -0500 Original-Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]:53354) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5awe-0004uO-Ri for emacs-devel@gnu.org; Thu, 06 Jan 2022 17:09:19 -0500 Original-Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 206KwSQS009297; Thu, 6 Jan 2022 22:09:13 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2021-07-09; bh=KwPQ246OtfVta3O747fA7JRizCqUXCxUAFKjgP9aKtE=; b=s8eGs3N9fVoi4kmUxqXzV4DV2NzMUTXrQxyoREoRHoCm87iq9+W8naODiBvtWVXKeu2k CcAIvh4cWduOHrDvvgrBbAQerL2myzV++BeivrfRSocsd6l94NlAbLikIGw7uGyDV2R3 BAwfA7B/stvWc3B1WVUQPSzv1qGbc0PNO7DRjVuIH7zWYgs4mCp+ExvgtBCtJID9AlHs sCoMqcA27HNGUuCNFLwdd7CyzrQjR9wt3vAguqVqJ1jwWwb9DbzhB+p6ijehPbDaLi+D 1uSXMhs6pdmspGb+z1kusgVh6dSXakxt/PVIWrwj2ZJtGpqAscwTB9k21nNIXxXJAQ22 /g== Original-Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3de4vh8m0y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 06 Jan 2022 22:09:13 +0000 Original-Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 206Ltiu5135268; Thu, 6 Jan 2022 22:09:12 GMT Original-Received: from nam02-sn1-obe.outbound.protection.outlook.com (mail-sn1anam02lp2046.outbound.protection.outlook.com [104.47.57.46]) by aserp3020.oracle.com with ESMTP id 3de4vvcadt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 06 Jan 2022 22:09:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cFYBV+ao3h9xt8vXT4BzVtQaYH0FGMyFMBXdigO1v/Zgin/ZR0lkbHmKsnpabnCVw6cJnBgD3LGalWOlc5LL6HTr1VNwYes4V/4kB/Y5F/eLagXjlhk1XFceW0JFLFgfYqfRWWA/5mUPFOugzMDa997/eavbrYq8KCxGEO+p2ICpKKRVRtxaw1gavzf7T8PTarvC07gr2Mb3VZfG/ER0hR8KQ90MpuSS7qUovibyrFo78pqFtwkI5hnv+FuJmXTodhBZorjQy32tIuMhOwbw4g4mFhoTVqPdi5cJvg7kZFktWQjCsXTjmmkx2/D1mcUG6lnuGIRo/+orC2b7FVcotg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KwPQ246OtfVta3O747fA7JRizCqUXCxUAFKjgP9aKtE=; b=eye10Of+8mJ6RbPoVpltkRAt8bYE7c8NL0QXgXjUKDVJA5yDRDhy2Rtab92sMuCNrSW9EwUAdRAS8t+2SllpeGd0JIr4dgSY2ZuRKoqVct7WYKMr3/0i/A+CoZC3JtdI3I/PrTTMvLc8LHNU8gmPNxhJKGQTOTUDrBW9HmRBIHd4+1urc45Lf4BoRP4k4wCe1va7feVqTEJQ2/ckvGhZ6zPJYwvcCY/3ZFbRIOgWIX9niC3ityjrkV3PDIqchzriYrkfHvGFz0stQ0ilp0IfZHUg7e2RS7ynYT8remkcAgcAcW7M5h2kZo7HNUW4bXzs+CJEGBJLu43zxSCRTqdhpQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KwPQ246OtfVta3O747fA7JRizCqUXCxUAFKjgP9aKtE=; b=sYVsLoxeI/MhsPCdpbUcVgc/taroVBSalbVByMk0v0FxOIxavXYjKfKTqzu0ak1nbbdMHBbZunEoQYNwGs5W5NUnSnv+bmt/1iakF1lGDUGROU5DnG1W121dlSxgWoyAHz1IyidtBYNrJrDhO+e/OqCLN/jVzTs3wSTJ0ucO4KA= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by BY5PR10MB4257.namprd10.prod.outlook.com (2603:10b6:a03:211::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.7; Thu, 6 Jan 2022 22:09:09 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::99a4:696f:5f30:36b3]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::99a4:696f:5f30:36b3%7]) with mapi id 15.20.4867.009; Thu, 6 Jan 2022 22:09:09 +0000 Thread-Topic: [External] : Re: Default custom file was: Re: Propose to add setup-wizard.el to ELPA Thread-Index: AQHYAzmXyRg93iqmYUuTMoi36bkxtaxWf9jA In-Reply-To: <871r1k38ym.fsf@gmail.com> Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: abb7078b-e164-440b-77dd-08d9d1612a15 x-ms-traffictypediagnostic: BY5PR10MB4257:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: YbLTMN2Hu+CBPXvJANpmNjSjudMnRz0Hu5HC2A3yUBogAIfp2NFiwFIbH5Uld2d8QtKmvhsHUFElRluDLM2+AnZLXQNADtkHyxhRk/zaAwloJGLXCUSz5Zj4usXA2tcdIx+NJeNEbgj49FLKdQe7w0Nz4a9trya7Jj/ddrXnYvrJBDlxOFaXvreIC8hxADxmZtzSvO/ASgB/Ba1CAxDrMsl8VKWj0IJccHyf/olFozbgFfijz7ofAIpaQm6QqSbeed1OfTBvJqOttgYMEXsxg6+MaAEdI7yu8yMX54aDt9UtdZ0etmBA4SoAzuUtCi/izfY+dJpTd7hRh1hkcwoCYIk1e6hN6Y1VuQS5QyE/NUyx9Dcuf9FFO/KFCP/amANH3wOvxVA6PahCA9tOpxHp2tDwqR0sMrYFUaKFmXUPLjzxeHfrISv/4rRtOVXqlR/gLFHGNDW//I14J0SZ37XuTW/TFSB1SnAiZRBT+NAq3lePZWXbSz26CuBhO00367CfuKj9om+r2GGh5x5uF4SDCUXqyheDX1J5sSAD5jR1IVi0oaYbbI+f5ZeL/gpW3CT/Ck19FLgWWQoDSD6Wm7qMn0d2jDeIdf3aKAkxjMMn922d2U6mLDJ65DVWcWWiCzLYyPeYEPqibsqmD5kBFlk/VcvR0wGcPe69S1O2HnLYrWFpx3SZ7YfzuIcVb3poQ31BtfxxnKbObTWh5OmsqKzoKA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(122000001)(83380400001)(71200400001)(38100700002)(55016003)(6506007)(66476007)(44832011)(7696005)(8936002)(26005)(33656002)(52536014)(66556008)(8676002)(86362001)(2906002)(110136005)(186003)(9686003)(508600001)(76116006)(38070700005)(66946007)(316002)(5660300002)(66446008)(64756008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?hcqWUXZOJvULQlUecx+fiHNCI73A5FKcBlmLxItvJaqOaSK106CMJnav9cYB?= =?us-ascii?Q?KlAx8DVTep/6iHvTa2I2MpYadPZNKopDf2C3liumP4VTwT/bWkC44f12I8iW?= =?us-ascii?Q?s0h/bank5IpmWFBwJ9CbBq4T+wcDz3n54o1uO6BV++6sFGRWB119pE1vVVG7?= =?us-ascii?Q?oY3GNVD+lTHa8Tyotz5kEb/wEyKitATix2lAySyAOEHfEdAuGu/NRPsLhyXS?= =?us-ascii?Q?hPqoJk7JaxTx0xH5jCsNSp6fjMdOC7DM84Xne3dE6yksAzS/Is9kVtTU3znr?= =?us-ascii?Q?86USgXq5trEg5P38XVCzb9BGywGbkwNxx/uYqlkvm1MjmfEzwDlUOeoImkzl?= =?us-ascii?Q?uwtE3ilVjAyKBqdf7ovaEmo5m6H+SdeZDeIBSCc892KrYcGJ/xTdLfhT5T9A?= =?us-ascii?Q?B+c1KtDh+E86IGzd8vayl/vsD+mWVXmvYpDJUO054ShSno8ZJchjS0ipl+yN?= =?us-ascii?Q?/kuDf0aMURvvt9cynyi89PiTClQ13Z6H06h2u8DjwLJPD/5dru2oEo3hCheT?= =?us-ascii?Q?Pre/Tg7p6ZLoHcgK4g2WfHMKIAjcygANHUEkUc2Z3EjiOCewXIbsS5UaMMCl?= =?us-ascii?Q?47fLmhMyzlZQA3brk/oTicODShgWuxWASLHKpYi7AUs8ABQvBDSb85ieAp2C?= =?us-ascii?Q?nV X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: abb7078b-e164-440b-77dd-08d9d1612a15 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Jan 2022 22:09:09.6625 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hbUvMHt3woxIWfsp9A2vui8CaR1nPcVsUTqQYSbblwn5gMRX/n77VFLWYBQdeeF2jugkwejJvqU/e34myNGFsg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR10MB4257 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10219 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 mlxlogscore=999 adultscore=0 phishscore=0 mlxscore=0 spamscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2201060136 X-Proofpoint-ORIG-GUID: SeR2I0-rNPPUP4TEsepR1N97vFoiJKPq X-Proofpoint-GUID: SeR2I0-rNPPUP4TEsepR1N97vFoiJKPq Received-SPF: pass client-ip=205.220.165.32; envelope-from=drew.adams@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=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.29 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:284349 Archived-At: > > And what if there's a `custom-set-variables', > > `customize-set-variable', `customize-set-value', > > `custom-save-variables', customize-save-variable, > > `customize-save-all', `custom-save-all', > > `custom-save-faces', `customize-save-customized', > > or `customize-saved' in the init file? > > > > What if such is not in the init file but in > > some file that's loaded by the init file? > > > > What if such files get loaded conditionally? > > Are you going to analyze the code and then > > search through all the possible source code > > for occurrences? What if some such code is > > generated? >=20 > I think this is one of the more important and easily overlooked issue > raised in this thread. I've noticed in recent times a growing use of > the various customise functions in a programatic manner within user > initialisation code. Such code is often spread across multiple files > which are loaded by the user's init file at startup. >=20 > For this issue, I do have to put myself in the very conservative camp. > I'm not convinced we have a real issue here and may be either > creating problems that are more theoretical than actual or guilty of > premature optimisations. >=20 > For new users, I don't think there are any real issues with the existing > situation. Most of the issues raised seem to be more issues that arise > once the user has become more experienced and wants to delve deeper into > their Emacs configuration. By that point, they will typically have the > skills to use the existing facilities to break off the custom data into > its own file and load it at whatever point is appropriate for their > style of configuration. >=20 > I fear that if we try to make the Emacs startup process 'smarter', we > are likely to actually make it more frustrating for those who like to > have fine grained control and unnoticeable by those who don't care. In > the end, all we get is more complexity wiht little improved > functionality. Thanks for your input, Tim. I have a suspicion that what you're wary of, or objecting to, is perhaps really the automatic loading of `custom-file' if it isn't already loaded. That's the only "complexity" I can imagine you think you see. (I don't see that just giving `custom-file' a default value adds complexity.) If not - if you have a problem also with the aim of getting more users to use `custom-file', so as to separate Custom automatic editing of init files (when it saves) - then what is your critique of that aim? (If you agree with that aim, but not with any of the proposals to move toward it, please make that clear too.) To be clear, the aim is not at all "to make the Emacs startup process 'smarter'", and not at all to provide some kind of "optimization" (premature or otherwise). And I don't think anything proposed so far does that. The problem to try to solve - particularly for new users or users unsure of Emacs Lisp - is to prevent users (accidentally or with good intentions) from messing with generated code, and (less likely) to prevent Customize from messing with user code. That's all. Is that a purely "theoretical" problem? As I asked earlier: The default behavior of Emacs now is to have a single file that mixes user coding and Custom coding. Why is that a great idea? ^^^^^^^^^^^^^^^^^^^^^^^^ No one has answered that. Forget, for a second (and no, I'm not saying this isn't important), that there is habit & legacy. Just imagine that you are designing from scratch. Would you really want Customize (or any other code generation) to write to a file that users code also? We don't do that for any other generated Elisp code. We write all such code to dedicated, separate files - not files that users code in. (We don't _prevent_ users from editing such files, of course.) Why do we do that? Premature optimization? Paranoid theoretical problem-worrying? ___ In order of decreasing priority (to me): 1. Let's agree on the problem, potential at least. 2. Given the problem, let's agree that, in some way, we want to prevent mixing user coding with automatic coding. 3. Given that aim, let's agree that Customize should - by default - save to a different file from a user init file. 4. Given that goal, how do we get there? ___ On the road from 1 to 4, how far do you get? Personally, I get as far as #4. I proposed some concrete changes as solution, but #4 is an open question. Possible solutions include: a. At a minimum (I think) explicitly encourage users - particularly new users - to define `custom-file', and load it to get their saved settings. b. What I proposed, which I won't repeat but I can summarize as `custom-file'-default-value. Please note that even poor (a) has never been done: we don't encourage use of `custom-file'. I don't think doing nothing is good (see 1-3). And I don't think that (a) alone (recommending use of `custom-file') is sufficient.