Files
dotfiles/config/nvim/lua/lsp/init.lua
T

40 lines
921 B
Lua

local M = {}
function M.setup()
local map = vim.keymap.set
local capabilities = require("blink.cmp").get_lsp_capabilities()
vim.lsp.config("gopls", {
capabilities = capabilities,
})
vim.lsp.config("ols", {
capabilities = capabilities,
})
vim.lsp.enable({
"gopls",
"ols",
})
map("n", "gd", vim.lsp.buf.definition)
map("n", "gD", vim.lsp.buf.declaration)
map("n", "gi", vim.lsp.buf.implementation)
map("n", "gr", vim.lsp.buf.references)
map("n", "K", vim.lsp.buf.hover)
map("i", "<C-h>", vim.lsp.buf.signature_help)
map("n", "<leader>rn", vim.lsp.buf.rename)
map("n", "<leader>ca", vim.lsp.buf.code_action)
map("n", "[d", vim.diagnostic.goto_prev)
map("n", "]d", vim.diagnostic.goto_next)
map("n", "<leader>d", vim.diagnostic.open_float)
map("n", "<leader>q", vim.diagnostic.setloclist)
end
return M