feat(nvim): add dap & golang lint

This commit is contained in:
Evan Reichard 2024-03-12 23:26:11 -07:00
parent 240af570ea
commit 6d180fac42
3 changed files with 71 additions and 4 deletions

View File

@ -2,15 +2,65 @@ local dap = require("dap")
local dapui = require("dapui")
local dapgo = require("dap-go")
dapui.setup()
dapui.setup({
controls = {
element = "repl",
enabled = true,
icons = {
disconnect = "",
pause = "",
play = "",
run_last = "",
step_back = "",
step_into = "",
step_out = "",
step_over = "",
terminate = ""
}
},
element_mappings = {},
expand_lines = false,
floating = {border = "single", mappings = {close = {"q", "<Esc>"}}},
force_buffers = true,
icons = {collapsed = "", current_frame = "", expanded = ""},
layouts = {
{
elements = {{id = "repl", size = 0.5}, {id = "scopes", size = 0.5}},
position = "bottom",
size = 10
}, {
elements = {
{id = "breakpoints", size = 0.5}, {id = "stacks", size = 0.5}
},
position = "left",
size = 40
}
},
mappings = {
edit = "e",
expand = {"<CR>", "<2-LeftMouse>"},
open = "o",
remove = "d",
repl = "r",
toggle = "t"
},
render = {indent = 1, max_value_lines = 100}
})
dapgo.setup()
-- Auto Open UI
dap.listeners.before.attach.dapui_config = function() dapui.open() end
dap.listeners.before.launch.dapui_config = function() dapui.open() end
dap.listeners.before.event_terminated.dapui_config =
function() dapui.close() end
dap.listeners.before.event_exited.dapui_config = function() dapui.close() end
-- Continue Hotkey ("c")
vim.api.nvim_create_autocmd("FileType", {
pattern = "dap-repl",
callback = function()
vim.api.nvim_buf_set_keymap(0, 'n', 'c',
"<cmd>lua require'dap'.continue()<CR>",
{noremap = true, silent = true})
end
})
-- Leader Keys
local opts = {noremap = true, silent = true}

View File

@ -119,6 +119,20 @@ nvim_lsp.gopls.setup {
cmd = {nix_vars.gopls}
}
-- Go LSP Linting
nvim_lsp.golangci_lint_ls.setup {
on_attach = on_attach_no_formatting,
flags = lsp_flags,
capabilities = capabilities,
cmd = {nix_vars.golintls},
init_options = {
command = {
"golangci-lint", "run", "--enable-all", "--disable", "lll",
"--out-format", "json", "--issues-exit-code=1"
}
}
}
------------------------------------------------------
--------------------- Null-LS LSP --------------------
------------------------------------------------------

View File

@ -92,6 +92,8 @@ in
# LSP Dependencies
go
golangci-lint
golangci-lint-langserver
gopls
nodePackages.eslint
nodePackages.eslint_d
@ -129,6 +131,7 @@ in
gopls = "${pkgs.gopls}/bin/gopls",
sveltels = "${pkgs.nodePackages.svelte-language-server}/bin/svelteserver",
tsls = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server",
golintls = "${pkgs.golangci-lint-langserver}/bin/golangci-lint-langserver",
vscls = "${pkgs.nodePackages.vscode-langservers-extracted}",
}
return nix_vars