From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Mou Tong Newsgroups: gmane.emacs.bugs Subject: bug#65359: [PATCH] eglot: add "lexical" LSP server Date: Fri, 18 Aug 2023 01:38:39 +0000 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="_004_B60940577BFE406A9D8C9A9931C288E2outlookcom_" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26858"; mail-complaints-to="usenet@ciao.gmane.io" To: 65359@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Aug 18 03:44:24 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1qWoXH-0006nw-Hg for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 18 Aug 2023 03:44:24 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qWoWy-0000OF-C4; Thu, 17 Aug 2023 21:44:04 -0400 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 1qWoWw-0000O2-Rp for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 21:44:02 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qWoWw-0000gD-JB for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 21:44:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qWoWw-0006l2-Lk for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 21:44:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Mou Tong Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 18 Aug 2023 01:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 65359 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: "bug-gnu-emacs@gnu.org" Original-Received: via spool by submit@debbugs.gnu.org id=B.169232304025959 (code B ref -1); Fri, 18 Aug 2023 01:44:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 18 Aug 2023 01:44:00 +0000 Original-Received: from localhost ([127.0.0.1]:45792 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qWoWt-0006kc-Ey for submit@debbugs.gnu.org; Thu, 17 Aug 2023 21:43:59 -0400 Original-Received: from lists.gnu.org ([2001:470:142::17]:56652) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qWoWn-0006kM-Lr for submit@debbugs.gnu.org; Thu, 17 Aug 2023 21:43:58 -0400 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 1qWoWh-0000N6-Dp for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 21:43:47 -0400 Original-Received: from mail-bn8nam12olkn2082d.outbound.protection.outlook.com ([2a01:111:f400:fe5b::82d] helo=NAM12-BN8-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qWoWd-0000eq-I8 for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 21:43:46 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hUtGJJ5GKqET1bXjFi0DziwwZDxWtGh4Kvo/YxDUN34URvAwcEqxmn9bgpRwBwvcjoZKulqs4nSnl/4ru7haI+daq4y2q8NWRLLyRymG6XKJzseFCFEQnvkG7WvTLskuxSGxlWQoGUoX9je0L+S6/eQDjGlIJSi/VW6HOBWKMlYIdF7Xqd2dqcXeXfuN8efJg0AP6oDd8i9SHZhlXz42Y+KNnzigYvFhvGim75DPUH2V2mVO+JqwZCAVJXr9D7DjqXdAK0IW6ANGUDEY7gAX8hr9BZtp7qyRbFjm+Xr+2CesqjaA94lV04516+7NwWJww2hyoNw5nlPUnfwB6McMPw== 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=P+HG8R7XpEhG6nXt1ayxl0ms2LTQw7edrp+57pFeMtI=; b=Kzfs485lDDVlrbxmYfJFdAvBl9iuobSOtMWlmnWILqFTyIvJKYKDrq9NOcfEkNcJczQECOEpYafLjHe//w3g+TSdobO78sNldPHbrtXM+Fre4CBjblbq0NDokAy1TvHkQnAvyUixM8oLsSZCJivnH0gxYIkNvHGMm63Nyp4TsaxTMYn0CYJFr6Dni2j9c+CsfIsdlcYUO5AavUrydwZfg69cih2qmmjcoqZUKrUKJTTL219roomXnDbcNKUhBjIl/KspojPqtM5410SYJruXWp5KDJGq4Tvt4tQfbLQPbXFkUoj44GtwxmT7PWjm5PCarpqK8JQWs75W8tsD+pnpiQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=P+HG8R7XpEhG6nXt1ayxl0ms2LTQw7edrp+57pFeMtI=; b=EnT87yTJvbwfb1jOkuHH0CcKi8Gb21zB/xzKzrFiwyUTJgCNw8nNgNNcGcQdHn9z0Zmhpi2/taBk9AsPA1enk5xfNaGQeCIPupUT+RjWv/1hvhKSEkMjzYRRMCsAOAN7CTTCAarljKG9g+4I3L1tY8Tz/RZqCkxPRYYZsmMHP99CgXZXQw43jV85YFtq7Tr+QilFcTDeAwbSeAdFOcR2cBTbRZbbdmU5LixnKqTWiuwfdTh0VfzAWn90cfc09DmXMN93bqgpavxnZF9lj9CCYn4K6p82owN3qEz0M1UVG6Ymdqb45gz7X5MlBUNQJjkC9VP9jq8ev41unYFKa8eUug== Original-Received: from SJ0P220MB0675.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:3ad::6) by SJ0P220MB0723.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:402::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.14; Fri, 18 Aug 2023 01:38:39 +0000 Original-Received: from SJ0P220MB0675.NAMP220.PROD.OUTLOOK.COM ([fe80::5069:7939:ccb6:2af4]) by SJ0P220MB0675.NAMP220.PROD.OUTLOOK.COM ([fe80::5069:7939:ccb6:2af4%3]) with mapi id 15.20.6699.013; Fri, 18 Aug 2023 01:38:39 +0000 Thread-Topic: [PATCH] eglot: add "lexical" LSP server Thread-Index: AQHZ0XS2bt7VQ1cAIkyTrPSItcfdyQ== Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: yes x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [P2Jxj5MauRm6r8cwAWoPNiE12qR4L4d1YL6Q285w2AA=] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0P220MB0675:EE_|SJ0P220MB0723:EE_ x-ms-office365-filtering-correlation-id: a21539b8-e257-4649-3d94-08db9f8bd8f6 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: O17wHBgXTRjxrEAcyL5YAW0vGwhXl/BEmsqh/Zs8Jttwayp8uO0AzRGN83eqMzCdCSqGCy5GofAzm3h+ofL+SWbq5u0yrNQ0GR04fGYpgbB5PrKGL4p8CnTQ6Go3BFcInc9BKsU32cbvo5EM5lo0xK3SfM2oiDV8Vb6V738/DZvGN8fZInM1s6xx5a1LZ39sPR6acQ+158U7lpvhV00CdCdLIL32bQftD+5RQlv1ZxTD9aP1+XIovsc5BOsvL6dOMA7bKQGEIhfkf7UyWaE8BQqVimim8thhx/TqcaZK6xUBQks7H6A6u+CF2R6bh9xtstl8dkxwcPfkFZ9M3G1ZEWy8S2KkOu0f2u7eEJkrMBiCenm3i0JQaLxgLoLhmD1myPWzOHDDtAmMbzbw8jUpslzBMgfwkiu7ZoU1pgbM/rs7aPwDRDIC5eu9e8dPGYcdBFOxCcp1Ak38I1jbKfiD9pNO8mogng0IlOJuhDXx/VGuk+2SVrygNedByasaJ2UxdgBPsuLRnlN3gfpfMHQsHdMK+oxsOIVXntEZ4izrhH3ZVLi5EFLRmGB+kp/z/pkkHXrGA0ad7QhvynH9tPj0MbIEYhNpG6QU5aRu5xEIs+Y0dVj1hO3yTRH+JFnBnPaDa7ihAK0jd7aIMxx+WoFcUQ== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: S9JFqJUbi4pAv+tHv9OuX2pJchJHWd+1KS10z3xigNGFcQTvRdTS2zt7p6EJNRWO9CAZrAhj/wDg/fDwmcvCmnXxn/KwOT1xsxLPPRqPYIl9Z4MEP8gUPXJ9BCipnjcbtEOrEtdmrnfthMXosVXeMvt+Y8y0ozGUht4rFhwneyJam4N8ni5HD0LpZchEHcM2hewFobaawtms/Lfph1y1pfG+dOSLZbtU/IdQafVVHiu0rNzPAOY+W8s5+miLzFF+vjWGSApcMpJyc5KjE9cGYbPfS3cC4EFabxWhv4ou1kVczbbRJSNqIKpbp/b7Iq3EaT8YgrQh/w29vNsHRn3y7ZnlINyFzHez/MkjXnEzDTCpkx6UU4WjlIn5pZFyU4IoXfUI8f03ByM5E04We9TaRqL5xKnX/ZkWOS6JZOziUbVphyBSeWGOVqLv3tFivj5xtfx9u1oZcF4CSqLgmOlkN2dLZlZoDWV8BgtHPFsRC7rqbUZRJLdH4aW3/vaEikw1a0wUrM+mI24X3sP6e+E2/FCaVD0siJqbrXVG5xsXNF3NsCEUGb1h+uX3OC5QS+FUtkUpAicPUopYdpAb1TefOE4ppTAlyYG9cid0wd1bru9rMtVvXiXtIzTJDbClGVI5HyjtiKlHHxaH+16Ghx5ReqdslfpaNcsIZFLshpO097RvPK9rhLwaZuBF+K2JNjE9gdiz0XEZcdxcyqt3dRCn1ssjSJYxGxmk+SDwjLNgtr0N1C2Yuy/2ltRQmt f6BYakg9bPSaYosiVhHC5YDZsS2E9v+mkFpHSGnoMevUglRi8SNlFxFISYj2ObKVDzDZQAsZrUyZO/CgnHDfC2/EXGGTE5rTWz X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0P220MB0675.NAMP220.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: a21539b8-e257-4649-3d94-08db9f8bd8f6 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Aug 2023 01:38:39.1817 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0P220MB0723 Received-SPF: pass client-ip=2a01:111:f400:fe5b::82d; envelope-from=mou.tong@outlook.com; helo=NAM12-BN8-obe.outbound.protection.outlook.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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:267702 Archived-At: --_004_B60940577BFE406A9D8C9A9931C288E2outlookcom_ Content-Type: multipart/alternative; boundary="_000_B60940577BFE406A9D8C9A9931C288E2outlookcom_" --_000_B60940577BFE406A9D8C9A9931C288E2outlookcom_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable There is a new LSP server for elixir: [lexical]. Although it said there had problems to use it with eglot, but I didn't meet the [problem] it said in the instruction. And I had used it for serveral projects and it worked fine, I put this in my config and I don't know if there is a better way: ```emacs-lisp (with-eval-after-load 'eglot (setf (alist-get '(elixir-mode elixir-ts-mode heex-ts-mode) eglot-server-programs nil nil #'equal) (eglot-alternatives `(("start_lexical.sh") ,(if (and (fboundp 'w32-shell-dos-semantics) (w32-shell-dos-semantics)) '("language_server.bat") '("language_server.sh")))))) ``` So I send a patch like this. [lexical]: https://github.com/lexical-lsp/lexical [problem]: https://github.com/lexical-lsp/lexical/blob/main/pages/installat= ion.md#vanilla-emacs-with-eglot --_000_B60940577BFE406A9D8C9A9931C288E2outlookcom_ Content-Type: text/html; charset="us-ascii" Content-ID: <1B0DC8D7BE545E41B7D76CF86641F91D@NAMP220.PROD.OUTLOOK.COM> Content-Transfer-Encoding: quoted-printable

Although it said there had problems to use it with eglot, but I didn't
meet the [problem] it said in the instruction.

And I had used it for serveral projects and it worked fine, I put this
in my config and I don't know if there is a better way:

```emacs-lisp
(with-eval-after-load 'eglot
  (setf (alist-get '(el= ixir-mode elixir-ts-mode heex-ts-mode)
      = ;             eglot-server-programs
      = ;             nil nil #'equal)
      = ;  (eglot-alternatives
      = ;   `(("start_lexical.sh")
      = ;     ,(if (and (fboundp 'w32-shell-dos-semantic= s)
      = ;            &n= bsp;  (w32-shell-dos-semantics))
      = ;          '("lang= uage_server.bat")
      = ;        '("language_server.= sh"))))))
```

So I send a patch like this.

--_000_B60940577BFE406A9D8C9A9931C288E2outlookcom_-- --_004_B60940577BFE406A9D8C9A9931C288E2outlookcom_ Content-Type: application/octet-stream; name="0001-Add-lexical-LSP-server-to-Eglot.patch" Content-Description: 0001-Add-lexical-LSP-server-to-Eglot.patch Content-Disposition: attachment; filename="0001-Add-lexical-LSP-server-to-Eglot.patch"; size=1639; creation-date="Fri, 18 Aug 2023 01:38:38 GMT"; modification-date="Fri, 18 Aug 2023 01:38:38 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSBmNDc4OWU2MjE1MjkxY2EyYmU5NWY0NDNlMGQyYTFiMTIyYTQ0YjBkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBkYWx1IDxtb3UudG9uZ0BvdXRsb29rLmNvbT4KRGF0ZTogVGh1 LCAxNyBBdWcgMjAyMyAxODozNDo0MiArMDgwMApTdWJqZWN0OiBbUEFUQ0hdIEFkZCAibGV4aWNh bCIgTFNQIHNlcnZlciB0byBFZ2xvdAoKLS0tCiBsaXNwL3Byb2dtb2Rlcy9lZ2xvdC5lbCB8IDEw ICsrKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvZWdsb3QuZWwgYi9saXNwL3Byb2dtb2Rl cy9lZ2xvdC5lbAppbmRleCAxMTNmZjA4ZTk0ZS4uYmU3ZWQ1NGM3MWQgMTAwNjQ0Ci0tLSBhL2xp c3AvcHJvZ21vZGVzL2VnbG90LmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL2VnbG90LmVsCkBAIC0y MTksMTAgKzIxOSwxMiBAQCBlZ2xvdC1zZXJ2ZXItcHJvZ3JhbXMKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4gKCJkYXJ0IiAibGFuZ3VhZ2Utc2VydmVyIgogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIi0tY2xpZW50LWlkIiAiZW1hY3MuZWdsb3QtZGFydCIp KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKGVsaXhpci1tb2RlIGVsaXhpci10 cy1tb2RlIGhlZXgtdHMtbW9kZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4g LChpZiAoYW5kIChmYm91bmRwICd3MzItc2hlbGwtZG9zLXNlbWFudGljcykKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh3MzItc2hlbGwtZG9zLXNlbWFudGlj cykpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJygibGFuZ3VhZ2Vf c2VydmVyLmJhdCIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoImxh bmd1YWdlX3NlcnZlci5zaCIpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4g LChlZ2xvdC1hbHRlcm5hdGl2ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBgKCgic3RhcnRfbGV4aWNhbC5zaCIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAsKGlmIChhbmQgKGZib3VuZHAgJ3czMi1zaGVsbC1kb3Mtc2VtYW50aWNzKQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh3MzItc2hlbGwt ZG9zLXNlbWFudGljcykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICcoImxhbmd1YWdlX3NlcnZlci5iYXQiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJygibGFuZ3VhZ2Vfc2VydmVyLnNoIikpKSkpCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIChhZGEtbW9kZSAuICgiYWRhX2xhbmd1YWdlX3NlcnZlciIpKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2NhbGEtbW9kZSAuICwoZWdsb3QtYWx0 ZXJuYXRpdmVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAnKCJtZXRhbHMiICJtZXRhbHMtZW1hY3MiKSkpCi0tIAoyLjQxLjAKCg== --_004_B60940577BFE406A9D8C9A9931C288E2outlookcom_--