Description
With vim.lsp.config neovim/neovim#31031 , Nvim 0.11+ now has an interface for defining LSP configs. Previously, the config format was defined by nvim-lspconfig (this repo) and did not have core Nvim support.
Migration plan
✅ Phase 1: Nvim 0.11 users can use these configs via vim.lsp.config
- Create
lsp/*.lua configs (in this repo) that simply wrap the existing lua/lspconfig/configs/*.lua configs.
- Ignore
root_dir? Copy-paste filenames into root_markers?
- Upstream relevant parts of the healthcheck.
- On Nvim 0.11
lspconfig/health.lua should do nothing (or error). On Nvim 0.10 it will continue to work.
- Nvim 0.11+ can use nvim-lspconfigs like this:
- Nvim 0.11+ users no longer need to (directly) call
require('lspconfig') for any reason.
✅ Phase 2: migrate the actual config code
- Tag a
v1.x release.
BREAKING: The master branch will require Nvim 0.11 and will throw an error if vim.lsp.config is not found (and point the user to the v1.x branch).
- Keep the old configs on master, but document that they are frozen and won't be supported.
- If Nvim 0.10 or older is detected, use the old frozen configs
- Update the README to mention that old configs are frozen.
- Copy all configs to
lsp/*.lua and port them to vim.lsp.config
Description
With
vim.lsp.configneovim/neovim#31031 , Nvim 0.11+ now has an interface for defining LSP configs. Previously, the config format was defined by nvim-lspconfig (this repo) and did not have core Nvim support.Migration plan
✅ Phase 1: Nvim 0.11 users can use these configs via
vim.lsp.configlsp/*.luaconfigs (in this repo) that simply wrap the existinglua/lspconfig/configs/*.luaconfigs.root_dir? Copy-paste filenames intoroot_markers?lspconfig/health.luashould do nothing (or error). On Nvim 0.10 it will continue to work.require('lspconfig')for any reason.✅ Phase 2: migrate the actual config code
v1.xrelease.BREAKING: Themasterbranch will require Nvim 0.11 and will throw an error ifvim.lsp.configis not found (and point the user to the v1.x branch).lsp/*.luaand port them tovim.lsp.configon_attach(example).