guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: New release of LSP server; LSP clients for Emacs and VSCodium availa


From: Ricardo G. Herdt
Subject: Re: New release of LSP server; LSP clients for Emacs and VSCodium available
Date: Fri, 05 Aug 2022 20:07:56 +0000

Short update:

there was a problem concerning automatic installation of server, and some other bugs. In case you tried to install the server or the clients and it didn't work properly, please try out the new versions available.

Ricardo

Am 04.08.2022 00:32 schrieb Ricardo G. Herdt:
Hi all,

I want to announce some releases related to LSP support for Scheme,
focusing on Guile.

* scheme-lsp-server 0.1.3

Besides bug fixes, here what's new:

- scheme-lsp-server now selectively uses geiser code when doable. This
is especially the case for Guile. The goal is to encourage myself and
contributors to help improving Geiser, and directly benefit of its
development. Obviously only Scheme code is reused.

- previously scheme-lsp-server assumed an LSP client would fire up a
REPL and let the user interact with it, showing LSP-related infos
depending on things the user actively loaded. This is not the way most
LSP-based tools expect an LSP-server to work though, and has some
downsides:

   + implementing a client is not as trivial as it should be, since
the developer has to figure out a way to integrate a REPL into the
IDE/editor, and send commands to it to "guide" the LSP server.
   + developers used to other LSP-based tools can be surprised to see
that they have to actively load stuff in order to get meaningful
feedback from the IDE.

Therefore I did a major design change: scheme-lsp-server now does it's
best to automatically compile/import files opened by the user
(including dependencies). This makes the task of implementing an LSP
client much easier: just launch guile-lsp-server and call it a day. I
added some notes regarding creating new LSP clients for other
editors/IDE's:

https://codeberg.org/rgherdt/scheme-lsp-server#creating-an-lsp-client

One important note: for now, the LSP server needs to "see" library
definitions in order to compile and import needed libraries. See
https://codeberg.org/rgherdt/scheme-lsp-server/#user-content-known-issues.

* emacs-lsp-scheme 0.1.0 (available on MELPA)

The first versions of emacs-lsp-scheme had a custom REPL (based on
Emacs' built-in scheme support) that was connected to the LSP server.
Following the changes to the LSP server, I decoupled the
emacs-lsp-scheme from the REPL. This seems to be a regression at
first, but the idea is that one can simply use "run-scheme" to launch
a REPL, and this does not interfere with the LSP server. For deeper
integration of Guile and Emacs, Geiser is still the way to go.
See the README file for instructions on how to configure it:
https://codeberg.org/rgherdt/emacs-lsp-scheme

* vscode-scheme-lsp 0.2.1 (available for VSCodium on open-vsx)

Following the same ideas of emacs-lsp-scheme, this extension now
focuses on basically providing LSP support. The user can install other
extensions to get syntax highlighting and an integrated REPL.
Here the code: https://codeberg.org/rgherdt/vscode-scheme-lsp.

I only tested all this on Debian buster. Please let me know if you
experience any trouble installing/using it.

Regards,

Ricardo G. Herdt



reply via email to

[Prev in Thread] Current Thread [Next in Thread]