Other Editors

We don’t currently have official extension support for the following editors:

  • Helix
  • Vim / Neovim
  • Emacs
  • Sublime Text
  • Atom

Workarounds

Since BAML uses a standard Language Server Protocol (LSP) implementation, you may be able to configure your editor to use the BAML language server manually.

Using the BAML Language Server

The BAML CLI includes a built-in language server. You can start it with:

$baml-cli lsp

This starts an LSP server on stdio that you can connect to from any editor with LSP support.

Manual Editing

An alternative is to edit your files in our Playground, and copy the code into your editor. However, we recommend using one of our officially supported editors for the best experience:

Contributing

If you’re interested in contributing editor support for another editor, please reach out. We’d love to help you get started!

The BAML extension is a language server, so we can technically support any editor that supports the Language Server Protocol. The main components needed are:

  1. Syntax highlighting: Usually via TextMate grammars or tree-sitter
  2. LSP integration: Connecting to the BAML language server
  3. Playground (optional): A webview for interactive testing