unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* New release of LSP server; LSP clients for Emacs and VSCodium available
@ 2022-08-03 22:32 Ricardo G. Herdt
  2022-08-05 20:07 ` Ricardo G. Herdt
  0 siblings, 1 reply; 6+ messages in thread
From: Ricardo G. Herdt @ 2022-08-03 22:32 UTC (permalink / raw)
  To: guile-user

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



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-08-08  8:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-03 22:32 New release of LSP server; LSP clients for Emacs and VSCodium available Ricardo G. Herdt
2022-08-05 20:07 ` Ricardo G. Herdt
2022-08-06  6:54   ` Jérémy Korwin-Zmijowski
2022-08-07 23:42   ` Aleix Conchillo Flaqué
2022-08-08  7:17     ` adriano
     [not found]     ` <b7d98d9bbdb9b941812f1bbc0eea18d6@posteo.de>
2022-08-08  8:01       ` Ricardo G. Herdt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).