mirror of
https://github.com/neovim/nvim-lspconfig.git
synced 2026-05-06 09:06:10 +02:00
46 lines
1.5 KiB
Lua
46 lines
1.5 KiB
Lua
-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
-- This config is DEPRECATED.
|
|
-- Use the configs in `lsp/` instead (requires Nvim 0.11).
|
|
--
|
|
-- ALL configs in `lua/lspconfig/configs/` will be DELETED.
|
|
-- They exist only to support Nvim 0.10 or older.
|
|
-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
return {
|
|
default_config = {
|
|
cmd = { 'vscode-json-language-server', '--stdio' },
|
|
filetypes = { 'json', 'jsonc' },
|
|
init_options = {
|
|
provideFormatter = true,
|
|
},
|
|
root_dir = function(fname)
|
|
return vim.fs.dirname(vim.fs.find('.git', { path = fname, upward = true })[1])
|
|
end,
|
|
single_file_support = true,
|
|
},
|
|
docs = {
|
|
-- this language server config is in VSCode built-in package.json
|
|
description = [[
|
|
https://github.com/hrsh7th/vscode-langservers-extracted
|
|
|
|
vscode-json-language-server, a language server for JSON and JSON schema
|
|
|
|
`vscode-json-language-server` can be installed via `npm`:
|
|
```sh
|
|
npm i -g vscode-langservers-extracted
|
|
```
|
|
|
|
`vscode-json-language-server` only provides completions when snippet support is enabled. If you use Neovim older than v0.10 you need to enable completion, install a snippet plugin and add the following override to your language client capabilities during setup.
|
|
|
|
```lua
|
|
--Enable (broadcasting) snippet capability for completion
|
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
capabilities.textDocument.completion.completionItem.snippetSupport = true
|
|
|
|
require'lspconfig'.jsonls.setup {
|
|
capabilities = capabilities,
|
|
}
|
|
```
|
|
]],
|
|
},
|
|
}
|