|
1 | 1 | # nvim-lspconfig |
2 | 2 |
|
3 | | -nvim-lspconfig is a "data only" repo, providing basic, default [Nvim LSP client](https://neovim.io/doc/user/lsp.html) |
4 | | -configurations for various LSP servers. View [all configs](doc/configs.md) or `:help lspconfig-all` from Nvim. |
| 3 | +nvim-lspconfig is a collection of LSP server configurations for the [Nvim LSP client](https://neovim.io/doc/user/lsp.html). |
| 4 | + |
| 5 | +View [all configs](doc/configs.md), or run `:help lspconfig-all` from Nvim. |
5 | 6 |
|
6 | 7 | ## Important ⚠️ |
7 | 8 |
|
8 | | -* These configs are **best-effort and supported by the community (you).** See [contributions](#contributions). |
9 | | -* The configs live in [`lsp/`](./lsp/). |
10 | | - * Upgrade to Nvim 0.11+ and use `vim.lsp.enable('…')` (not `require'lspconfig'.….setup{}`) to enable a config. |
11 | | -* The configs in `lua/lspconfig/` are *deprecated* and will be removed. |
12 | | - * Upgrade to Nvim 0.11+ and use `vim.lsp.enable('…')` (not `require'lspconfig'.….setup{}`) to enable a config. |
| 9 | +* nvim-lspconfig is 100% "data". Its `require('lspconfig')` module (the "framework") [is **deprecated**](https://github.com/neovim/nvim-lspconfig/issues/3693) in favor of `vim.lsp.config` (Nvim 0.11+). |
| 10 | + * The [lspconfig.lua](./lua/lspconfig.lua) *module* will be dropped. Calls to `require('lspconfig')` will show a warning, which will later become an error. |
| 11 | +* nvim-lspconfig itself is **NOT deprecated**. It contains all of the default configs. |
| 12 | + * The configs live in the [lsp/](./lsp/) directory of nvim-lspconfig. `vim.lsp.config` automatically finds them and merges them with any local `lsp/*.lua` configs defined by you or a plugin. |
| 13 | + * The old configs in `[lua/lspconfig/](./lua/lspconfig/)` are **deprecated** and will be removed. |
| 14 | + |
| 15 | +### Migration instructions |
| 16 | + |
| 17 | +1. Upgrade to Nvim 0.11+ |
| 18 | +2. (Optional) Use `vim.lsp.config('…')` (not `require'lspconfig'.….setup{}`) to *customize* or *define* a config. |
| 19 | +3. Use `vim.lsp.enable('…')` (not `require'lspconfig'.….setup{}`) to *enable* a config, so that it activates for its `filetypes`. |
| 20 | + |
| 21 | +## Support |
| 22 | + |
| 23 | +These configs are **best-effort and supported by the community (you).** See [contributions](#contributions). |
| 24 | + |
13 | 25 | * Ask questions on [GitHub Discussions](https://github.com/neovim/neovim/discussions), not the issue tracker. |
14 | 26 | * If you found a bug in Nvim LSP (`:help lsp`), [report it to Neovim core](https://github.com/neovim/neovim/issues/new?assignees=&labels=bug%2Clsp&template=lsp_bug_report.yml). |
15 | 27 | * **Do not** report it here. Only configuration data lives here. |
16 | | -* This repo only provides self-contained *configurations*. The `require'lspconfig'` "framework" is deprecated and will be removed. |
17 | | - * The "framework" parts (*not* the configs) of nvim-lspconfig were upstreamed to Nvim core (`vim.lsp.config`). |
18 | 28 |
|
19 | 29 | ## Install |
20 | 30 |
|
21 | 31 | [](https://luarocks.org/modules/neovim/nvim-lspconfig) |
22 | 32 |
|
23 | 33 | * Requires Nvim 0.11.3+. |
24 | | - * Support for Nvim 0.10 will be removed. Upgrade Nvim and nvim-lspconfig before reporting an issue. |
| 34 | + * Support for Nvim 0.10 [will be removed](https://github.com/neovim/nvim-lspconfig/issues/3693). Upgrade Nvim and nvim-lspconfig before reporting an issue. |
25 | 35 | * Install nvim-lspconfig using Vim's "packages" feature: |
26 | 36 | ``` |
27 | 37 | git clone https://github.com/neovim/nvim-lspconfig ~/.config/nvim/pack/nvim/start/nvim-lspconfig |
28 | 38 | ``` |
29 | | -* Or if you have Nvim 0.12 (nightly), you can use the builtin `vim.pack` plugin manager: |
| 39 | +* Or with Nvim 0.12 (nightly), you can use the builtin `vim.pack` plugin manager: |
30 | 40 | ```lua |
31 | 41 | vim.pack.add{ |
32 | 42 | { src = 'https://github.com/neovim/nvim-lspconfig' }, |
|
0 commit comments