From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Philip Kaludercic Newsgroups: gmane.emacs.devel Subject: Re: Elisp LSP Server Date: Tue, 12 Oct 2021 10:21:57 +0000 Message-ID: <87wnmiilve.fsf@posteo.net> References: <16338bdc2497fc51c6fb6d54ab370bfb@webmail.orcon.net.nz> <87ee99dv34.fsf@gmail.com> <07cf50ddddb5a9556aa94201a7ac88c9@webmail.orcon.net.nz> <87fstf3god.fsf@fastmail.fm> <87ily2947q.fsf@yahoo.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="24989"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Po Lu , Joost Kremers , rms@gnu.org, emacs-devel@gnu.org To: Ag Ibragimov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Oct 12 13:08:04 2021 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 1maFdb-0006Hj-Vx for ged-emacs-devel@m.gmane-mx.org; Tue, 12 Oct 2021 13:08:04 +0200 Original-Received: from localhost ([::1]:38648 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1maFda-00081a-UE for ged-emacs-devel@m.gmane-mx.org; Tue, 12 Oct 2021 07:08:02 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:52256) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1maEv9-0004VP-6q for emacs-devel@gnu.org; Tue, 12 Oct 2021 06:22:07 -0400 Original-Received: from mout02.posteo.de ([185.67.36.66]:46685) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1maEv4-0006eU-B3 for emacs-devel@gnu.org; Tue, 12 Oct 2021 06:22:06 -0400 Original-Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id ADBFF240103 for ; Tue, 12 Oct 2021 12:21:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1634034119; bh=71P3zL/9RH/DZnUHjEDFyIbIE0hygCfebLZHWm7p54E=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=X7xdLIub4vI3KofqBcmMbsa641qTsjRm7YCsh/8UDTNa3GLq5PogwNPEJClpISukv GJjVJaU6rThs3rLKaJ/GuC146wRNwcDvhMLdYpQxebX1scjB2NkYZCF/h/0lraQW3U HcRJf0LbQtL0UQ+9si11+5EP1R2d94AWusDn2oehznozBroBeSpvYoVBlvOQYEcFaS SZG5jYlhDiDx/NkXdIakkbt+ZkfhcQxI/XwVrA4egeBcNCfCb5OiEpJQDWSXBswlyH xIxck3K9HbdZY1Cg88D885XCO+2lXTsTI9AujvJV8b9v8RatFS+ru7cvz4wsjoUJ/j kTssXQsE5BKkw== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4HTBY230qQz9rxS; Tue, 12 Oct 2021 12:21:58 +0200 (CEST) Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB In-Reply-To: (Ag Ibragimov's message of "Tue, 12 Oct 2021 02:22:44 -0500") Received-SPF: pass client-ip=185.67.36.66; envelope-from=philipk@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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:276780 Archived-At: Ag Ibragimov writes: > It was my mistake to even mention godforsaken VSCode - I don't even > use it, I don't know why I brought it up. I apologize; Can we please > start it over and forget about GitHub, VSCode, etc.? I do think there is some association, because it seems there is little use for a Elisp language server outside of these use-cases. When someone wants to debug a broken configuration, they'd usually emacs -Q, not open VSCode. > - Has anyone ever tried figuring out something similar? Surely, in 45 > years of Emacs, someone must have done something like that? LSP has not existed for that long, and I am not sure if there were any comparable projects of the same ambition before. At most "language servers" have existed for specific languages, such as Common Lisp. > - If someone attempts to create a cli tool that potentially could > introspect, lint, format, and maybe even refactor elisp outside of > Emacs, where would they need to be looking? If I wanted to do this, I'd just write Elisp scripts that would be invoked via shell scripts or something of that sort using Emacs' batch mode. An alternative would be to implement everything yourself from group up, and follow up on the development whenever something changes. Another one would be to extend something like tree sitter by Elisp support. > - Is it possible to build something like this by examining relevant > pieces of C in Emacs codebase? Not everything relating to Elisp development in implemented in C. You'd also have to read the Elisp parts. > - Maybe there are parts in REmacs project that would be easier to go > through? I don't know about that, but AFAIK the project has stalled. -- Philip Kaludercic