salesforce-misc / bazelrc-lsp

bazelrc Language Server
Apache License 2.0
17 stars 1 forks source link

bazelrc language server

Code intelligence for .bazelrc config files.

Installation

The language server from this repository can be used in a wide range editors (neovim, emacs, IntelliJ, ...).

For Visual Studio Code, we offer a pre-packaged Visual Studio Code plugin:

  1. Download the correct *.vsix package for your operating system from the latest release
  2. Inside Visual Studio, press Cmd + Shift + P to open the command picker
  3. Choose the "Extension: Install from VSIX..." command
  4. In the file picker, choose the downloaded .vsix file

I will leave it as an exercise to the reader to figure out how exactly to configure the language server for other editors. (Pull requests welcome).

Current State & Roadmap

The extension is complete enough for my personal needs and hopefully useful to you, too.

Long-term, I am considering to integrate this functionality into the official VSCode Bazel extension. This is also why this extension is not published to the VS Code Marketplace as a standalone extension.

However, currently this extension still has a couple rough edges. E.g., this extension is currently hard-coded to use the Bazel flags supported by Bazel 7.1.0. Before integrating this language server with the VSCode Bazel extension, and thereby exposing it to a larger user base, those sharp edges first need to be smoothed.

Pull Requests are welcome! Further down in this README you can find a backlog of various ideas. In case you want to discuss any of those topics (or a topic of your own), please feel free to reach out via a Github issue.

Development

The source code for this extension lives at https://github.com/salesforce-misc/bazelrc-lsp. Contributions are welcome. Feel free to just open a pull request.

Building from source

  1. cd vscode-extension
  2. pnpm i
  3. pnpm package
  4. Install the "hyper-ir-lsp-*.vsix" in VS Code

Backlog