From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= Newsgroups: gmane.emacs.devel Subject: Re: Making `eglot-server-programs' a custom variable? Date: Thu, 10 Nov 2022 10:15:41 +0000 Message-ID: References: <86fservpri.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="00000000000046e23d05ed1b0a54" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="16594"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel To: Arash Esbati , Eli Zaretskii , Tim Cross Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Nov 10 11:15:21 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 1ot4af-0004B0-A2 for ged-emacs-devel@m.gmane-mx.org; Thu, 10 Nov 2022 11:15:21 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ot4a2-0003GE-2c; Thu, 10 Nov 2022 05:14:42 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ot4a0-0003Fp-4f for emacs-devel@gnu.org; Thu, 10 Nov 2022 05:14:40 -0500 Original-Received: from mail-oi1-x231.google.com ([2607:f8b0:4864:20::231]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ot4Zy-0003Tv-Gz; Thu, 10 Nov 2022 05:14:39 -0500 Original-Received: by mail-oi1-x231.google.com with SMTP id v81so1347835oie.5; Thu, 10 Nov 2022 02:14:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=++tW2EZlIJG0eauSaNQa871DqvlEWqzEUKCaq1esI3U=; b=Tn37XuW4qIj6V6/0WWDE3Y4YAPl3n0REemITCqToVk+/Mxz78O3vN3hqeaJ03YVe8j cl8UPNce17uZhYQRad7QTvYGjwEiRx7FKkIVOPuaFBhnvrxBHDM1TWHIa/YTfpKzqHl6 JA+Me8EupTZJTMwJU3v6URUHil+K+/UBY20sjr94I2nByWO80sAD/cDmHa0TDzzQWXD/ 6qgBHHFpqQu1VOQ5zz3cB/93DqSuBF6gDmA66CAdx2/mWuCXDrTne1nAGoHQI40tzgZV EST1JA9V8qdJLCHeyGUmoZZjTgjWRcDAnICHOJkudjMKcLM9MwxOKyfVc+dThywmr14z r2tQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=++tW2EZlIJG0eauSaNQa871DqvlEWqzEUKCaq1esI3U=; b=oQsgLWjn9+PlA56b5OkMW0kD3r7QmCLoyNMzELNP89TLyB6PleSF6ZP7g4VlvufP7P 1bO72ZVkWFpOoECOIq/Lr1S0PLkUMEzyVbZ/SjMFZ7zn496cUPkq09+MZ5jKAQm+srQi VBdLOngtrNhVTquuDffLoTsSJLM04TsM+x++Up182I/6dgaMYRPEfd8ZPIS30YRJTit9 g+Jdrgp7jNNBcIVGKMps5TDkmb2LFlN48zjGcYHyXk/yz+2s4QUwH3ag9oOorCxvQEeE 9ilLRobjvVrK1fi/d82FQ8gvNgzaz/ccoLnVcbK/73LxJoXdPr3CRvf+tqB4UyGVSOPT 1W+Q== X-Gm-Message-State: ACrzQf3RmsRlb56HeGgkfuTC96XxL2WJeAfdLARD337mGEIYzLQrw5Lr IgkhJ6mXsi9eJjzkIon4DDb5m2x68f3KPmL+UlvGzIUmHx8= X-Google-Smtp-Source: AMsMyM6JVMMc24Gk0BHttBj7eHThRXAgU9ODTE2dLtGDeEj71Njn7j0ec5bXHXzp2wrILV8v2sRoBn+80RY2nyP1Mmc= X-Received: by 2002:a05:6808:a05:b0:35a:2a65:eb01 with SMTP id n5-20020a0568080a0500b0035a2a65eb01mr26273435oij.215.1668075275869; Thu, 10 Nov 2022 02:14:35 -0800 (PST) In-Reply-To: <86fservpri.fsf@gnu.org> Received-SPF: pass client-ip=2607:f8b0:4864:20::231; envelope-from=joaotavora@gmail.com; helo=mail-oi1-x231.google.com 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:299474 Archived-At: --00000000000046e23d05ed1b0a54 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Arash, I think your suggestion of recommending `with-eval-after-load` is pertinent and should be added to the manual. Eli, even though we provide a healthy dose of built-in server invocations in that variable, we can't and shouldn't aim at being exhaustive. Eglot's manual is meant to be a go-to guide for knowing how to resolve simple problems such as this one, which is very common. The problems solved by eglot-workspace-configuration and other variables are also very common. The manual should be reasonably self sufficient, not too terse or relying on the user's knowledge. The "Quick Start" section that Eli added is a great example of that pragmatism, but other parts need to follow suit. So we really do need a copy-paste recipe for things like this. I'll be committing Arash's trivial and effective suggestion today or tomorrow unless someone seriously objects. That said, I have no objection to converting eglot-server-programs into a defcustom, if someone will commit to translating and maintaining all the complex combination of options into "widget" form. I don't have the time or inclination for this task, but maybe someone has. Tim, I'm on board with making sure the documentation can demonstrate to users how to perform complex customizations of this variable, like the one you suggest. But here, I think I tend to prefer documenting such complex things in one place only, and I see no problem in teaching the user to C-h f to the variable's docstring, which is the canonical source of truth to that interface. Thanks, Jo=C3=A3o --00000000000046e23d05ed1b0a54 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Arash, I think your suggestion of re= commending `with-eval-after-load`
is pertinent and should be adde= d to the manual.

Eli, even though we provide a hea= lthy dose of built-in server invocations
in that variable, we can= 't and shouldn't aim at being exhaustive.

= Eglot's manual is meant to be a go-to guide for knowing how to resolve<= /div>
simple problems such as this one, which is very common.=C2=A0 The= problems
solved by eglot-workspace-configuration and other varia= bles are also
very common. The manual should be reasonably s= elf sufficient, not too
terse or relying on the user's knowle= dge.

The "Quick Start" section that Eli = added is a great example of that
pragmatism, but other parts= need to follow suit.

So we really do need a c= opy-paste recipe for things like this.=C2=A0 I'll be
com= mitting Arash's trivial and effective suggestion today or tomorrow
=
unless someone seriously objects.

T= hat said, I have no objection to converting eglot-server-programs into
a defcustom, if someone will commit to translating and maintaining al= l
the complex combination of options into "widget" form= .=C2=A0 I don't have the
time or inclination for this ta= sk, but maybe someone has.

Tim, I'm on board w= ith making sure the documentation can
demonstrate to users h= ow to perform complex customizations
of this variable, like the o= ne you suggest.=C2=A0=C2=A0 But here, I think
I tend to prefer do= cumenting such complex things in one place only,
and I see n= o problem in teaching the user to C-h f to the variable's
docstring, which is the canonical source of truth to that interface.
<= /div>

Thanks,
Jo=C3=A3o
--00000000000046e23d05ed1b0a54--