PATH. All you need to do is install the server once, install the tree-sitter grammar, and open a file — Vorto handles the rest.
Rust (rust-analyzer)
Rust is a good reference case because the toolchain provides its own LSP server.1
Install rust-analyzer
Add the component through Alternatively, download a pre-built binary from the rust-analyzer releases page and place it somewhere on your
rustup:PATH.2
Install the Rust tree-sitter grammar
Syntax highlighting and smart indentation require the compiled grammar:
A C compiler is required to build grammars. Run
vorto grammar list to check whether the grammar is already installed.3
Open a Rust file
Open any Vorto detects
.rs file inside a Cargo workspace:Cargo.toml (or rust-project.json) as the workspace root marker and starts rust-analyzer automatically. LSP servers are started lazily — the server process spawns the first time you open a file of the right type.4
Use LSP features
Once the server is running, the following features become available:
5
Check LSP status
Run the
:lsp command from Command mode to see which servers are connected and their current state:JavaScript and TypeScript (vtsls / typescript-language-server)
Vorto’s built-in configuration lists bothvtsls and typescript-language-server for TypeScript and JavaScript files. Whichever binary is on your PATH will start; the other is silently skipped.
1
Install a TypeScript language server
Install Or use the classic TypeScript language server:
vtsls globally via npm:2
Install the grammar
3
Open a file in a project with root markers
The TypeScript servers use Vorto detects the root marker and starts the server automatically.
package.json, tsconfig.json, or jsconfig.json as root markers. Open a file from inside such a project:Override LSP arguments
If you need to pass custom flags to a built-in server, add a[lsp.<server-name>] block to your config.toml. Only the fields you set are changed — the rest of the built-in definition stays in place:
Troubleshooting
The server does not start. Confirm the server binary is on yourPATH by running it directly in a terminal (e.g., rust-analyzer --version). Also verify that the project contains the expected root marker file (Cargo.toml, package.json, etc.) — without a root marker the server may not start.
:lsp shows no connected servers.
LSP servers start lazily when you open a file of the matching type. Make sure you have actually opened a file, not just launched Vorto to a directory.
For more troubleshooting steps, see the Troubleshooting guide.