blob: 135b0f9d1765c141d796be9031425f7257dd4a07 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# local-lsp marketplace
Local Claude Code marketplace holding `lua-lsp-local` — a `lua-language-server` config that roots at `~/.config/nvim`
(via `.lsp.json` `workspaceFolder`) with the Neovim runtime as `workspace.library`, so `vim` resolves and the
`$HOME`-root diagnostic flood is gone.
Why this exists: the official `lua-lsp@claude-plugins-official` roots `lua_ls` at `$HOME`, which ignored
`~/.config/nvim/.luarc.json` and flooded `Undefined global vim` (no IntelliSense). See memory
`reference_claude_lua_lsp.md`.
## Install / reproduce (fresh machine)
`settings.json` (`enabledPlugins`, `extraKnownMarketplaces`) carries the result, but on a clean setup run, in order:
```sh
claude plugin validate /home/tvanbesi/.claude/lsp-marketplace/plugins/lua-lsp-local
claude plugin marketplace add /home/tvanbesi/.claude/lsp-marketplace
claude plugin install lua-lsp-local@local-lsp # user scope
claude plugin disable lua-lsp@claude-plugins-official # one server owns .lua
```
Then restart the session (LSP servers only start fresh on launch).
## After editing this plugin
Claude copies the plugin to its cache on install; source edits don't apply until:
```sh
claude plugin marketplace update local-lsp
claude plugin install lua-lsp-local@local-lsp # reinstall
```
(or bump `version` in `plugins/lua-lsp-local/.claude-plugin/plugin.json`), then restart.
## Verify
Throwaway-edit a `.lua` file under `~/.config/nvim`; the Claude `lua_ls` (`ps`-child of `claude`) log should show
`rootUri = file:///home/tvanbesi/.config/nvim` and no `Undefined global vim`.
|