# @wrnexus/language-server

Editor-neutral Language Server Protocol support for `.wrn` files. It uses the canonical
`@wrnexus/syntax` parser, diagnostics, accessibility rules, and formatter.

```bash
bunx wrnexus-language-server --stdio
```

Capabilities include syntax, accessibility and TypeScript expression diagnostics, formatting,
completion, hover, document symbols, go-to-definition, references, rename, and quick fixes.
The custom `wrnexus/virtualDocument` request returns the mapped TypeScript representation of an
open `.wrn` document for editor TypeScript plugins and safe refactoring tools. Any LSP 3.x client can launch the
stdio command. Example Neovim configuration:

```lua
vim.lsp.start({
  name = "wrnexus",
  cmd = { "bunx", "wrnexus-language-server", "--stdio" },
  root_dir = vim.fs.root(0, { "wrnexus.config.ts", "package.json", ".git" }),
})
```

JetBrains users can register the same command through an LSP client/plugin. The server
does not require VS Code and never reads environment secrets or sends source over a
network.
