Add Go Debugger

This commit is contained in:
Dominik Säume 2024-05-30 16:31:02 +02:00
parent 7857039d6f
commit a09e5f53c1
Signed by: SZUT-Dominik
GPG key ID: 67D15BB250B41E7C
3 changed files with 67 additions and 43 deletions

View file

@ -1 +1 @@
neovim lua gcc curl wget git unzip tar gzip ripgrep php composer go nodejs npm
neovim lua gcc curl wget git unzip tar gzip ripgrep php composer go nodejs npm delve

View file

@ -0,0 +1,6 @@
return {
"leoluz/nvim-dap-go",
config = function()
require("dap-go").setup()
end
}

View file

@ -1,57 +1,75 @@
return {
"mfussenegger/nvim-dap",
dependencies = {
"rcarriga/nvim-dap-ui",
"nvim-neotest/nvim-nio",
},
config = function()
-- Setup Debugging --
local dap = require("dap")
{
"mfussenegger/nvim-dap",
dependencies = {
"rcarriga/nvim-dap-ui",
"nvim-neotest/nvim-nio",
},
config = function()
-- Setup Debugging --
local dap = require("dap")
-- Open UI on Debugging --
local dapui = require("dapui").setup()
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
-- Open UI on Debugging --
local dapui = require("dapui")
dapui.setup({
layouts = {
{
elements = {
{ id = "scopes", size = 0.65 },
{ id = "breakpoints", size = 0.35 },
},
position = "left",
size = 40,
},
{
elements = {
{ id = "repl", size = 0.5 },
{ id = "console", size = 0.5 },
},
position = "bottom",
size = 10,
},
},
})
dap.listeners.before.attach.dapui_config = function()
dapui.open()
end
dap.listeners.before.launch.dapui_config = function()
dapui.open()
end
-- Keybinding --
vim.keymap.set("n", "<Leader>db", dap.toggle_breakpoint, { desc = "Toggle Breakpoint" })
vim.keymap.set("n", "<Leader>dc", dap.continue, { desc = "Debugger Continue" })
vim.keymap.set("n", "<Leader>dx", dap.terminate, { desc = "Debugger Terminate" })
vim.keymap.set("n", "<Leader>ds", dap.step_over, { desc = "Debugger Step Over" })
-- Keybinding --
vim.keymap.set("n", "<Leader>dt", dapui.toggle, { desc = "Toggle Debugger UI" })
vim.keymap.set("n", "<Leader>db", dap.toggle_breakpoint, { desc = "Toggle Breakpoint" })
vim.keymap.set("n", "<Leader>dc", dap.continue, { desc = "Debugger Continue" })
vim.keymap.set("n", "<Leader>dx", dap.terminate, { desc = "Debugger Terminate" })
vim.keymap.set("n", "<Leader>ds", dap.step_over, { desc = "Debugger Step Over" })
-- Breakpoints --
vim.api.nvim_set_hl(0, "DapBreakpoint", { ctermbg = 0, fg = "#993939", bg = "#31353f" })
vim.api.nvim_set_hl(0, "DapLogPoint", { ctermbg = 0, fg = "#61afef", bg = "#31353f" })
vim.api.nvim_set_hl(0, "DapStopped", { ctermbg = 0, fg = "#98c379", bg = "#31353f" })
vim.fn.sign_define(
-- Breakpoints --
vim.api.nvim_set_hl(0, "DapBreakpoint", { ctermbg = 0, fg = "#993939", bg = "#31353f" })
vim.api.nvim_set_hl(0, "DapLogPoint", { ctermbg = 0, fg = "#61afef", bg = "#31353f" })
vim.api.nvim_set_hl(0, "DapStopped", { ctermbg = 0, fg = "#98c379", bg = "#31353f" })
vim.fn.sign_define(
"DapBreakpoint",
{ text = "", texthl = "DapBreakpoint", linehl = "DapBreakpoint", numhl = "DapBreakpoint" }
)
vim.fn.sign_define(
)
vim.fn.sign_define(
"DapBreakpointCondition",
{ text = "󰣏", texthl = "DapBreakpoint", linehl = "DapBreakpoint", numhl = "DapBreakpoint" }
)
vim.fn.sign_define(
)
vim.fn.sign_define(
"DapBreakpointRejected",
{ text = "", texthl = "DapBreakpoint", linehl = "DapBreakpoint", numhl = "DapBreakpoint" }
)
vim.fn.sign_define(
)
vim.fn.sign_define(
"DapLogPoint",
{ text = "", texthl = "DapLogPoint", linehl = "DapLogPoint", numhl = "DapLogPoint" }
)
vim.fn.sign_define(
)
vim.fn.sign_define(
"DapStopped",
{ text = "", texthl = "DapStopped", linehl = "DapStopped", numhl = "DapStopped" }
)
end,
)
end,
},
require("plugins.editor.debugger.debugger_go"),
}