mirror of
https://github.com/GRFreire/dotfiles.git
synced 2026-03-06 02:59:42 +00:00
36 lines
1.1 KiB
Lua
36 lines
1.1 KiB
Lua
require("mason").setup()
|
|
require("mason-lspconfig").setup({})
|
|
|
|
local cmp = require('cmp')
|
|
|
|
cmp.setup({
|
|
sources = {
|
|
{ name = 'nvim_lsp' },
|
|
},
|
|
snippet = {
|
|
expand = function(args)
|
|
-- You need Neovim v0.10 to use vim.snippet
|
|
vim.snippet.expand(args.body)
|
|
end,
|
|
},
|
|
mapping = cmp.mapping.preset.insert({}),
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('LspAttach', {
|
|
desc = 'LSP actions',
|
|
callback = function(event)
|
|
local opts = { buffer = event.buf }
|
|
|
|
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
|
|
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
|
|
vim.keymap.set("n", "<leader>vws", vim.lsp.buf.workspace_symbol, opts)
|
|
vim.keymap.set("n", "<leader>vd", vim.diagnostic.open_float, opts)
|
|
vim.keymap.set("n", "[d", vim.diagnostic.goto_next, opts)
|
|
vim.keymap.set("n", "]d", vim.diagnostic.goto_prev, opts)
|
|
vim.keymap.set("n", "<leader>vca", vim.lsp.buf.code_action, opts)
|
|
vim.keymap.set("n", "<leader>vrr", vim.lsp.buf.references, opts)
|
|
vim.keymap.set("n", "<leader>vrn", vim.lsp.buf.rename, opts)
|
|
vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts)
|
|
end,
|
|
})
|