- Add init.lua entry point - Add lua/ modules: options, keymaps, autocmds, usercmds, pack, treesitter, lsp - Add .gitignore - Add nvim-pack-lock.json for plugin version locking Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
53 lines
1.7 KiB
Lua
53 lines
1.7 KiB
Lua
require("mason").setup()
|
|
|
|
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { desc = "Go to definition" })
|
|
vim.keymap.set('n', 'gh', vim.lsp.buf.hover, { desc = "Hover" })
|
|
vim.keymap.set("n", "<leader>fm", vim.lsp.buf.format, { desc = "Format Local buffer" })
|
|
vim.keymap.set("n", "df", vim.diagnostic.open_float, { desc = "Show line diagnostics" })
|
|
vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, { desc = "Code action" })
|
|
|
|
local diagnostic_goto = function(next, severity)
|
|
return function()
|
|
vim.diagnostic.jump({
|
|
count = (next and 1 or -1) * vim.v.count1,
|
|
severity = severity and vim.diagnostic.severity[severity] or nil,
|
|
float = true,
|
|
})
|
|
end
|
|
end
|
|
|
|
vim.keymap.set("n", "]d", diagnostic_goto(true), { desc = "Next Diagnostic" })
|
|
vim.keymap.set("n", "[d", diagnostic_goto(false), { desc = "Prev Diagnostic" })
|
|
vim.keymap.set("n", "]e", diagnostic_goto(true, "ERROR"), { desc = "Next Error" })
|
|
vim.keymap.set("n", "[e", diagnostic_goto(false, "ERROR"), { desc = "Prev Error" })
|
|
vim.keymap.set("n", "]w", diagnostic_goto(true, "WARN"), { desc = "Next Warning" })
|
|
vim.keymap.set("n", "[w", diagnostic_goto(false, "WARN"), { desc = "Prev Warning" })
|
|
|
|
vim.diagnostic.config({ virtual_text = true })
|
|
|
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
capabilities = vim.tbl_deep_extend("force", capabilities, require("mini.completion").get_lsp_capabilities())
|
|
|
|
vim.lsp.config("*", { capabilities = capabilities })
|
|
|
|
vim.lsp.config("lua_ls", {
|
|
settings = {
|
|
Lua = {
|
|
diagnostics = { globals = { "vim" } },
|
|
},
|
|
},
|
|
})
|
|
|
|
vim.lsp.enable({
|
|
"html",
|
|
"cssls",
|
|
"gopls",
|
|
"vtsls",
|
|
"rust_analyzer",
|
|
"lua_ls",
|
|
"taplo",
|
|
"svelte",
|
|
"dartls",
|
|
"kotlin_lsp"
|
|
})
|