HigherOrderCO / bend-language-server

Language server for the Bend programming language
MIT License
9 stars 3 forks source link

bend-language-server

Language server for the Bend programming language based on the Language Server Protocol (LSP).

Features

The current features implemented in this language server are

We accept contributions and feature requests!

Installation

VSCode extension

As of this alpha version, we still don't publish compiled releases of the language server, so you'll need to install the Rust toolchain to compile it. Afterwards, install the VSCode extension and open a .bend file.

On startup, the extension will ask you if you want it to automatically install the language server executable or if you want to set it up manually with the PATH environment variable. If you choose automatically, the extension will use cargo to install it to its local storage. If you want to install it manually, run the following command:

cargo install bend-language-server --version 0.2.37

Managing the language server manually will require you to update the language server yourself as new versions are published.

Other editors

We are still not officially supporting other editors; however, if your editor of choice has support for the Language Server Protocol (LSP), you can try plugging it and our language server together. To install the LSP-compliant language server binary, use the Cargo command from the Rust toolchain:

cargo install bend-language-server --version 0.2.37

If the toolchain is correctly installed, bend-language-server should now be in your path.

We also have a tree-sitter grammar for syntax highlighting with configuration instructions for Neovim.

Development

Currently, the language server is only developed and tested for VSCode. Feel free to add contributions specific to other code editors!

VSCode extension

This project requires the Rust toolchain and pnpm to build.

  1. Navigate to the extension directory with cd editors/code.
  2. Prepare the Javascript environment with pnpm i.
  3. Build the language server with cargo build.
  4. Open the project with VSCode. Press F5 or click Launch Client in the Debug panel.

This should result in a new VSCode window being opened with the bend-language-server extension loaded.