aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2025-11-14 00:43:43 -0500
committerJustin M. Keyes <justinkz@gmail.com>2025-11-14 01:20:14 -0500
commit2bf52f747b8633d38b671d0e9b968ec0a3133bcb (patch)
tree9c19e3a62dee7a73a302bd0b7cb5bae7c24a1b4d
parentci: retreat to luals (diff)
downloadnvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.tar
nvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.tar.gz
nvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.tar.bz2
nvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.tar.lz
nvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.tar.xz
nvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.tar.zst
nvim-lspconfig-2bf52f747b8633d38b671d0e9b968ec0a3133bcb.zip
fix: luals warnings
-rw-r--r--lsp/apex_ls.lua2
-rw-r--r--lsp/arduino_language_server.lua2
-rw-r--r--lsp/autohotkey_lsp.lua1
-rw-r--r--lsp/basedpyright.lua2
-rw-r--r--lsp/denols.lua1
-rw-r--r--lsp/ds_pinyin_lsp.lua2
-rw-r--r--lsp/eslint.lua3
-rw-r--r--lsp/glint.lua1
-rw-r--r--lsp/julials.lua1
-rw-r--r--lsp/kotlin_language_server.lua2
-rw-r--r--lsp/pyright.lua4
-rw-r--r--lsp/roslyn_ls.lua5
-rw-r--r--lsp/smarty_ls.lua2
-rw-r--r--lsp/svelte.lua1
-rw-r--r--lsp/ts_ls.lua10
15 files changed, 29 insertions, 10 deletions
diff --git a/lsp/apex_ls.lua b/lsp/apex_ls.lua
index 01616c9e..7052c192 100644
--- a/lsp/apex_ls.lua
+++ b/lsp/apex_ls.lua
@@ -36,6 +36,7 @@
---@type vim.lsp.Config
return {
cmd = function(dispatchers, config)
+ ---@diagnostic disable: undefined-field
local local_cmd = {
vim.env.JAVA_HOME and (vim.env.JAVA_HOME .. '/bin/java') or 'java',
'-cp',
@@ -48,6 +49,7 @@ return {
if config.apex_jvm_max_heap then
table.insert(local_cmd, '-Xmx' .. config.apex_jvm_max_heap)
end
+ ---@diagnostic enable: undefined-field
table.insert(local_cmd, 'apex.jorje.lsp.ApexLanguageServerLauncher')
return vim.lsp.rpc.start(local_cmd, dispatchers)
diff --git a/lsp/arduino_language_server.lua b/lsp/arduino_language_server.lua
index 0feccd56..769a9173 100644
--- a/lsp/arduino_language_server.lua
+++ b/lsp/arduino_language_server.lua
@@ -82,9 +82,11 @@ return {
},
capabilities = {
textDocument = {
+ ---@diagnostic disable-next-line: assign-type-mismatch
semanticTokens = vim.NIL,
},
workspace = {
+ ---@diagnostic disable-next-line: assign-type-mismatch
semanticTokens = vim.NIL,
},
},
diff --git a/lsp/autohotkey_lsp.lua b/lsp/autohotkey_lsp.lua
index cb92330b..fe11d153 100644
--- a/lsp/autohotkey_lsp.lua
+++ b/lsp/autohotkey_lsp.lua
@@ -16,6 +16,7 @@ return {
cmd = { 'autohotkey_lsp', '--stdio' },
filetypes = { 'autohotkey' },
root_markers = { 'package.json' },
+ ---@diagnostic disable-next-line: missing-fields
flags = { debounce_text_changes = 500 },
--capabilities = capabilities,
--on_attach = custom_attach,
diff --git a/lsp/basedpyright.lua b/lsp/basedpyright.lua
index 0dcaaa3b..8ae1a06b 100644
--- a/lsp/basedpyright.lua
+++ b/lsp/basedpyright.lua
@@ -12,6 +12,7 @@ local function set_python_path(command)
}
for _, client in ipairs(clients) do
if client.settings then
+ ---@diagnostic disable-next-line: param-type-mismatch
client.settings.python = vim.tbl_deep_extend('force', client.settings.python or {}, { pythonPath = path })
else
client.config.settings = vim.tbl_deep_extend('force', client.config.settings, { python = { pythonPath = path } })
@@ -52,6 +53,7 @@ return {
-- Using client.request() directly because "basedpyright.organizeimports" is private
-- (not advertised via capabilities), which client:exec_cmd() refuses to call.
-- https://github.com/neovim/neovim/blob/c333d64663d3b6e0dd9aa440e433d346af4a3d81/runtime/lua/vim/lsp/client.lua#L1024-L1030
+ ---@diagnostic disable-next-line: param-type-mismatch
client.request('workspace/executeCommand', params, nil, bufnr)
end, {
desc = 'Organize Imports',
diff --git a/lsp/denols.lua b/lsp/denols.lua
index 8c051fbf..a55aa87a 100644
--- a/lsp/denols.lua
+++ b/lsp/denols.lua
@@ -96,6 +96,7 @@ return {
on_attach = function(client, bufnr)
vim.api.nvim_buf_create_user_command(bufnr, 'LspDenolsCache', function()
client:exec_cmd({
+ title = 'DenolsCache',
command = 'deno.cache',
arguments = { {}, vim.uri_from_bufnr(bufnr) },
}, { bufnr = bufnr }, function(err, _, ctx)
diff --git a/lsp/ds_pinyin_lsp.lua b/lsp/ds_pinyin_lsp.lua
index 68a99faa..84bf67e9 100644
--- a/lsp/ds_pinyin_lsp.lua
+++ b/lsp/ds_pinyin_lsp.lua
@@ -23,6 +23,7 @@ end
local function ds_pinyin_lsp_off(bufnr)
local ds_pinyin_lsp_client = vim.lsp.get_clients({ bufnr = bufnr, name = 'ds_pinyin_lsp' })[1]
if ds_pinyin_lsp_client then
+ ---@diagnostic disable-next-line: param-type-mismatch
ds_pinyin_lsp_client:notify('$/turn/completion', {
['completion_on'] = false,
})
@@ -34,6 +35,7 @@ end
local function ds_pinyin_lsp_on(bufnr)
local ds_pinyin_lsp_client = vim.lsp.get_clients({ bufnr = bufnr, name = 'ds_pinyin_lsp' })[1]
if ds_pinyin_lsp_client then
+ ---@diagnostic disable-next-line: param-type-mismatch
ds_pinyin_lsp_client:notify('$/turn/completion', {
['completion_on'] = true,
})
diff --git a/lsp/eslint.lua b/lsp/eslint.lua
index c200adc1..593d602a 100644
--- a/lsp/eslint.lua
+++ b/lsp/eslint.lua
@@ -128,6 +128,7 @@ return {
-- Refer to https://github.com/Microsoft/vscode-eslint#settings-options for documentation.
settings = {
validate = 'on',
+ ---@diagnostic disable-next-line: assign-type-mismatch
packageManager = nil,
useESLintClass = false,
experimental = {
@@ -202,7 +203,7 @@ return {
local pnp_js = root_dir .. '/.pnp.js'
if vim.uv.fs_stat(pnp_cjs) or vim.uv.fs_stat(pnp_js) then
local cmd = config.cmd
- config.cmd = vim.list_extend({ 'yarn', 'exec' }, cmd)
+ config.cmd = vim.list_extend({ 'yarn', 'exec' }, type(cmd) == 'table' and cmd or {})
end
end
end,
diff --git a/lsp/glint.lua b/lsp/glint.lua
index 7da94146..4485a85c 100644
--- a/lsp/glint.lua
+++ b/lsp/glint.lua
@@ -25,6 +25,7 @@
---@type vim.lsp.Config
return {
cmd = function(dispatchers, config)
+ ---@diagnostic disable-next-line: undefined-field
local cmd = (config.init_options.glint.useGlobal or not config.root_dir) and { 'glint-language-server' }
or { config.root_dir .. '/node_modules/.bin/glint-language-server' }
return vim.lsp.rpc.start(cmd, dispatchers)
diff --git a/lsp/julials.lua b/lsp/julials.lua
index a31ac1cc..a181bfb3 100644
--- a/lsp/julials.lua
+++ b/lsp/julials.lua
@@ -36,6 +36,7 @@ local function activate_env(path)
local function _activate_env(environment)
if environment then
for _, julials_client in ipairs(julials_clients) do
+ ---@diagnostic disable-next-line: param-type-mismatch
julials_client:notify('julia/activateenvironment', { envPath = environment })
end
vim.notify('Julia environment activated: \n`' .. environment .. '`', vim.log.levels.INFO)
diff --git a/lsp/kotlin_language_server.lua b/lsp/kotlin_language_server.lua
index b5446e2e..ee18f32a 100644
--- a/lsp/kotlin_language_server.lua
+++ b/lsp/kotlin_language_server.lua
@@ -37,6 +37,6 @@ return {
cmd = { 'kotlin-language-server' },
init_options = {
-- Enables caching and use project root to store cache data.
- storagePath = vim.fs.root(vim.fn.expand '%:p:h', root_files),
+ storagePath = vim.fs.root(vim.fn.expand '%:p:h', root_files) --[[@as string]],
},
}
diff --git a/lsp/pyright.lua b/lsp/pyright.lua
index b67afffd..b73407c2 100644
--- a/lsp/pyright.lua
+++ b/lsp/pyright.lua
@@ -12,7 +12,8 @@ local function set_python_path(command)
}
for _, client in ipairs(clients) do
if client.settings then
- client.settings.python = vim.tbl_deep_extend('force', client.settings.python, { pythonPath = path })
+ client.settings.python =
+ vim.tbl_deep_extend('force', client.settings.python --[[@as table]], { pythonPath = path })
else
client.config.settings = vim.tbl_deep_extend('force', client.config.settings, { python = { pythonPath = path } })
end
@@ -52,6 +53,7 @@ return {
-- Using client.request() directly because "pyright.organizeimports" is private
-- (not advertised via capabilities), which client:exec_cmd() refuses to call.
-- https://github.com/neovim/neovim/blob/c333d64663d3b6e0dd9aa440e433d346af4a3d81/runtime/lua/vim/lsp/client.lua#L1024-L1030
+ ---@diagnostic disable-next-line: param-type-mismatch
client.request('workspace/executeCommand', params, nil, bufnr)
end, {
desc = 'Organize Imports',
diff --git a/lsp/roslyn_ls.lua b/lsp/roslyn_ls.lua
index e332443f..6aa3e759 100644
--- a/lsp/roslyn_ls.lua
+++ b/lsp/roslyn_ls.lua
@@ -48,8 +48,7 @@ end
---@param client vim.lsp.Client
local function refresh_diagnostics(client)
- local buffers = vim.lsp.get_buffers_by_client_id(client.id)
- for _, buf in ipairs(buffers) do
+ for buf, _ in pairs(vim.lsp.get_client_by_id(client.id).attached_buffers) do
if vim.api.nvim_buf_is_loaded(buf) then
client:request(
vim.lsp.protocol.Methods.textDocument_diagnostic,
@@ -118,6 +117,7 @@ return {
local args = command.arguments or {}
local uri, edit = args[1], args[2]
+ ---@diagnostic disable: undefined-field
if uri and edit and edit.newText and edit.range then
local workspace_edit = {
changes = {
@@ -130,6 +130,7 @@ return {
},
}
vim.lsp.util.apply_workspace_edit(workspace_edit, client.offset_encoding)
+ ---@diagnostic enable: undefined-field
else
vim.notify('roslyn_ls: completionComplexEdit args not understood: ' .. vim.inspect(args), vim.log.levels.WARN)
end
diff --git a/lsp/smarty_ls.lua b/lsp/smarty_ls.lua
index ab7012f3..26ddba76 100644
--- a/lsp/smarty_ls.lua
+++ b/lsp/smarty_ls.lua
@@ -31,6 +31,6 @@ return {
},
},
init_options = {
- storageDir = nil,
+ storageDir = vim.NIL,
},
}
diff --git a/lsp/svelte.lua b/lsp/svelte.lua
index 53f3e73e..bf562365 100644
--- a/lsp/svelte.lua
+++ b/lsp/svelte.lua
@@ -33,6 +33,7 @@ return {
group = vim.api.nvim_create_augroup('lspconfig.svelte', {}),
callback = function(ctx)
-- internal API to sync changes that have not yet been saved to the file system
+ ---@diagnostic disable-next-line: param-type-mismatch
client:notify('$/onDidChangeTsOrJsFile', { uri = ctx.match })
end,
})
diff --git a/lsp/ts_ls.lua b/lsp/ts_ls.lua
index a47039e6..8b77c6a5 100644
--- a/lsp/ts_ls.lua
+++ b/lsp/ts_ls.lua
@@ -93,7 +93,7 @@ return {
local client = assert(vim.lsp.get_client_by_id(ctx.client_id))
local file_uri, position, references = unpack(command.arguments)
- local quickfix_items = vim.lsp.util.locations_to_items(references, client.offset_encoding)
+ local quickfix_items = vim.lsp.util.locations_to_items(references --[[@as any]], client.offset_encoding)
vim.fn.setqflist({}, ' ', {
title = command.title,
items = quickfix_items,
@@ -104,12 +104,13 @@ return {
})
vim.lsp.util.show_document({
- uri = file_uri,
+ uri = file_uri --[[@as string]],
range = {
- start = position,
- ['end'] = position,
+ start = position --[[@as lsp.Position]],
+ ['end'] = position --[[@as lsp.Position]],
},
}, client.offset_encoding)
+ ---@diagnostic enable: assign-type-mismatch
vim.cmd('botright copen')
end,
@@ -125,6 +126,7 @@ return {
vim.lsp.buf.code_action({
context = {
only = source_actions,
+ diagnostics = {},
},
})
end, {})