2 releases
| 0.1.1 | Dec 12, 2025 |
|---|---|
| 0.1.0 | Dec 12, 2025 |
#601 in Value formatting
34KB
694 lines
ts-error-translator-proxy
An LSP proxy that translates TypeScript errors into human-readable explanations. Works with any editor.
Based on Matt Pocock's ts-error-translator. Inspired by ts-error-translator.nvim.
Zed
Helix
Why a proxy?
ts-error-translator.nvim works great for Neovim. If you use Helix, Zed, or another editor, you need a different approach.
This proxy wraps any TypeScript LSP and intercepts diagnostics. No editor plugins required.
Installation
cargo install ts-error-translator-proxy
Or from source:
git clone https://github.com/yourusername/ts-error-translator-proxy
cd ts-error-translator-proxy
cargo build --release
Usage
ts-error-translator-proxy [OPTIONS] [LSP_COMMAND] [LSP_ARGS...]
| Option | Description |
|---|---|
--replace |
Replace original error instead of appending translation |
# Wrap vtsls (default)
ts-error-translator-proxy
# Wrap typescript-language-server
ts-error-translator-proxy typescript-language-server --stdio
# Replace mode
ts-error-translator-proxy --replace vtsls --stdio
Editor Configuration
Helix
~/.config/helix/languages.toml:
[language-server.vtsls-translated]
command = "ts-error-translator-proxy"
args = ["vtsls", "--stdio"]
[[language]]
name = "typescript"
language-servers = ["vtsls-translated"]
[[language]]
name = "tsx"
language-servers = ["vtsls-translated"]
Zed
~/.config/zed/settings.json:
{
"lsp": {
"vtsls": {
"binary": {
"path": "ts-error-translator-proxy",
"arguments": ["vtsls", "--stdio"]
}
}
}
}
Neovim
Neovim users should use ts-error-translator.nvim instead.
Other Editors
This should work with any editor that supports LSP. PRs with examples welcome.
License
MIT
Dependencies
~4.5–7.5MB
~129K SLoC