Is vscode-crystal-lang repository still active?

I don’t see any activities from the maintaineer since Oct 2019

1 Like

Does it do what you need it to do?

Small note: code completion, jumping to declaration etc. etc. does not work for real projects (maybe it works for demo source code with few lines of code, but then it ends). Debugging support is also low (but according to the another threads in this forum, someone is working on it).

Debugger is mostly working. I am just polishing some little glitches but using debugger to debug crystal compiler itself.

Plugin can use builtin feature of crystal (you can access compiler classes from any crystal code if needed) so scry can reuse it. I am planning to work on native Crystal debugger but I may spend some time on the vscode plugin before working on debugger so it will speed up my debugger development.

5 Likes

but I may spend some time on the vscode plugin before working on debugger

Oh, that would be awesome!!!

A big penalizing lack in Crystal, is the support of auto-completion in a good IDE (like VS code, the most used). To make the Crystal programming comfortable: the doc API on mouse-over and goto définition, would be a significant plus.

1 Like

I will try to prioritize the features to start with the small feature (I mean easy to implement) that has maximum priority. I am thinking that Ctrl+Click (go to definition) is the one of them. It will tremendously improve the usability of the language. After that all other requested features can be implemented.

1 Like

Shouldn’t this be possible with scry? https://github.com/crystal-lang-tools/scry

I can do a “go to definition” in vim, but I have to admit that I’m not sure what exactly is responsible for delivering that information.

It should but it does not work. I will have to investigate why. I am planning to debug scry to see what is wrong there.

Hi @andraantariksa

I’ve been less active on github since last year because a ton of things (career, jobs, family, etc).

I’m trying to review & debug pending issues and PRs in my spare time.

Feel free to test and contribute to the repository.

Also, I’m trying to figure out a script to publish new versions (git tags) automatically to Visual Studio Marketplace

Stay safe, Cheers! :smiley:

1 Like

Hi, yeah, this is because, the way the extension currently works, it depends on crystal tool CLI and I noticed many things could go wrong when you try to find implementations and completions.

Scry is a better alternative to solve this issue but it still requires to be full complain to the Language Server Protocol, There is still a lot of work in progress.

If you check vim-crystal you can see it uses the command crystal tool implementations in the background, the issue with VSCode is the way the Node.js backend gives information to the crystal CLI and how it manages the std pipes and output.

@ComputerMage Yep, scry still requires a lot of work, right now I think it may be out-dated to the current version of Language Server Protocol