diff options
| author | Thomas Vanbesien <tvanbesi@proton.me> | 2026-05-19 19:29:42 +0200 |
|---|---|---|
| committer | Thomas Vanbesien <tvanbesi@proton.me> | 2026-05-19 19:32:44 +0200 |
| commit | b5dcfa4345287ae20edc52093c2546de39589ec8 (patch) | |
| tree | 1e6ca61c07c8ea576a65fa01a84746a601706d73 /.claude/lsp-marketplace/README.md | |
| parent | a146a3dee5260d1352fe34b1b60dbe8aa5a1d68a (diff) | |
| download | dotfiles-b5dcfa4345287ae20edc52093c2546de39589ec8.tar.gz dotfiles-b5dcfa4345287ae20edc52093c2546de39589ec8.zip | |
fix: root Claude Code lua_ls at ~/.config/nvim
- lua-lsp rooted lua_ls at $HOME: ignored .luarc.json, flooded
'Undefined global vim', no IntelliSense on the nvim config.
- New local marketplace/plugin lua-lsp-local@local-lsp: .lsp.json sets
workspaceFolder=~/.config/nvim, Neovim runtime as workspace.library,
diagnostics.libraryFiles=Disable.
- Disable official lua-lsp (enabledPlugins) so one server owns .lua.
- Verified by probe: rootUri now file:///home/tvanbesi/.config/nvim,
flood gone.
- Annotate the intentional open_floating_preview monkey-patch
(clears the now-correct duplicate-set-field).
- README: validate/add/install/disable repro + plugin-update workflow.
Diffstat (limited to '.claude/lsp-marketplace/README.md')
| -rw-r--r-- | .claude/lsp-marketplace/README.md | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/.claude/lsp-marketplace/README.md b/.claude/lsp-marketplace/README.md new file mode 100644 index 0000000..135b0f9 --- /dev/null +++ b/.claude/lsp-marketplace/README.md @@ -0,0 +1,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`. |
