nvim: dap -> termdebug
This commit is contained in:
@ -6,5 +6,6 @@ end
|
||||
require("plugins")
|
||||
load("options")
|
||||
load("mappings")
|
||||
load("debug")
|
||||
load("disablebuiltin")
|
||||
load("colors")
|
||||
|
||||
27
.config/nvim/lua/debug.lua
Normal file
27
.config/nvim/lua/debug.lua
Normal file
@ -0,0 +1,27 @@
|
||||
-- enable termdebug
|
||||
vim.cmd("packadd termdebug")
|
||||
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = {
|
||||
"go",
|
||||
"c",
|
||||
"c++",
|
||||
},
|
||||
callback = function()
|
||||
vim.g.termdebugger = "gdb"
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = "rust",
|
||||
callback = function()
|
||||
vim.g.termdebugger = "rust-gdb"
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = "python",
|
||||
callback = function()
|
||||
vim.g.termdebugger = "pdbpp"
|
||||
end,
|
||||
})
|
||||
@ -60,7 +60,7 @@ vim.keymap.set("n", "<leader>to", "<cmd>Telescope oldfiles<CR>")
|
||||
vim.keymap.set("n", "<leader>tg", "<cmd>Telescope live_grep<CR>")
|
||||
vim.keymap.set("n", "<leader>ts", "<cmd>Telescope treesitter<CR>")
|
||||
|
||||
-- code
|
||||
-- dev
|
||||
vim.keymap.set("n", "<leader>gd", "<cmd>Telescope lsp_definitions<CR>")
|
||||
vim.keymap.set("n", "<leader>gi", "<cmd>Telescope lsp_implementations<CR>")
|
||||
vim.keymap.set("n", "<leader>gr", "<cmd>Telescope lsp_references<CR>")
|
||||
@ -93,34 +93,12 @@ vim.keymap.set("n", "]d", function()
|
||||
vim.lsp.diagnostic.goto_next()
|
||||
end)
|
||||
|
||||
-- debug mappings
|
||||
vim.keymap.set("n", "<leader>dc", function()
|
||||
require("dap").continue()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>dn", function()
|
||||
require("dap").step_over()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>di", function()
|
||||
require("dap").step_into()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>do", function()
|
||||
require("dap").step_out()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>db", function()
|
||||
require("dap").toggle_breakpoint()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>dl", function()
|
||||
require("dap").run_last()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>dq", function()
|
||||
require("dap").close()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>dv", "<cmd>Telescope dap variables<CR>")
|
||||
vim.keymap.set("n", "<leader>dh", "<cmd>Telescope dap commands<CR>")
|
||||
vim.keymap.set("n", "<leader>dp", "<cmd>Telescope dap list_breakpoints<CR>")
|
||||
|
||||
-- git
|
||||
vim.keymap.set("n", "<leader>vs", "<cmd>Git<CR>")
|
||||
vim.keymap.set("n", "<leader>vb", "<cmd>Telescope git_branches<CR>")
|
||||
vim.keymap.set("n", "<leader>vc", "<cmd>Telescope git_commits<CR>")
|
||||
vim.keymap.set("n", "<leader>vf", "<cmd>Telescope git_files<CR>")
|
||||
-- debug
|
||||
vim.keymap.set("n", "<leader>db", "<cmd>Break<CR>")
|
||||
vim.keymap.set("n", "<leader>dc", "<cmd>Continue<CR>")
|
||||
vim.keymap.set("n", "<leader>dd", ":Termdebug ")
|
||||
vim.keymap.set("n", "<leader>de", "<cmd>Evaluate<CR>")
|
||||
vim.keymap.set("n", "<leader>di", "<cmd>Step<CR>")
|
||||
vim.keymap.set("n", "<leader>dn", "<cmd>Over<CR>")
|
||||
vim.keymap.set("n", "<leader>dr", "<cmd>Run<CR>")
|
||||
vim.keymap.set("n", "<leader>du", "<cmd>Clear<CR>")
|
||||
|
||||
@ -101,26 +101,6 @@ require("packer").startup(function()
|
||||
end,
|
||||
})
|
||||
|
||||
-- dap
|
||||
use({
|
||||
"mfussenegger/nvim-dap",
|
||||
module = "dap",
|
||||
config = function()
|
||||
require("plugins.dap")
|
||||
end,
|
||||
})
|
||||
use({
|
||||
"nvim-telescope/telescope-dap.nvim",
|
||||
after = "nvim-dap",
|
||||
})
|
||||
use({
|
||||
"theHamsta/nvim-dap-virtual-text",
|
||||
after = "nvim-dap",
|
||||
config = function()
|
||||
require("plugins.dap-virtual-text")
|
||||
end,
|
||||
})
|
||||
|
||||
-- toggleterm
|
||||
use({
|
||||
"akinsho/toggleterm.nvim",
|
||||
|
||||
@ -1 +0,0 @@
|
||||
require("nvim-dap-virtual-text").setup()
|
||||
@ -1,75 +0,0 @@
|
||||
local dap = require("dap")
|
||||
|
||||
--
|
||||
-- lldb
|
||||
--
|
||||
|
||||
dap.adapters.lldb = {
|
||||
type = "executable",
|
||||
command = "/usr/bin/lldb-vscode",
|
||||
name = "lldb",
|
||||
}
|
||||
|
||||
local lldb = {
|
||||
{
|
||||
name = "Launch",
|
||||
type = "lldb",
|
||||
request = "launch",
|
||||
program = function()
|
||||
return vim.fn.input("path to executable: ", vim.fn.getcwd() .. "/", "file")
|
||||
end,
|
||||
cwd = "${workspaceFolder}",
|
||||
stopOnEntry = false,
|
||||
args = {},
|
||||
|
||||
runInTerminal = true,
|
||||
},
|
||||
}
|
||||
|
||||
dap.configurations.c = lldb
|
||||
dap.configurations.rust = lldb
|
||||
|
||||
--
|
||||
-- go
|
||||
--
|
||||
|
||||
vim.keymap.set("n", "<leader>dsp", function()
|
||||
local port = vim.fn.input("enter port for delve: ")
|
||||
dap.adapters.go.port = port
|
||||
print("now run 'dlv dap -l 127.0.0.1:" .. port .. "'")
|
||||
end)
|
||||
|
||||
dap.adapters.go = {
|
||||
type = "server",
|
||||
host = "127.0.0.1",
|
||||
port = 38000,
|
||||
}
|
||||
|
||||
dap.configurations.go = {
|
||||
{
|
||||
type = "go",
|
||||
name = "Debug",
|
||||
request = "launch",
|
||||
program = "${file}",
|
||||
},
|
||||
{
|
||||
type = "go",
|
||||
name = "Debug Package",
|
||||
request = "launch",
|
||||
program = "${fileDirname}",
|
||||
},
|
||||
{
|
||||
type = "go",
|
||||
name = "Debug test",
|
||||
request = "launch",
|
||||
mode = "test",
|
||||
program = "${file}",
|
||||
},
|
||||
{
|
||||
type = "go",
|
||||
name = "Debug test (go.mod)",
|
||||
request = "launch",
|
||||
mode = "test",
|
||||
program = "./${relativeFileDirname}",
|
||||
},
|
||||
}
|
||||
@ -7,21 +7,14 @@ wk.register({
|
||||
},
|
||||
d = {
|
||||
name = "Debug",
|
||||
b = "Toggle Breakpoint",
|
||||
b = "Set Breakpoint",
|
||||
c = "Continue",
|
||||
h = "Telescope",
|
||||
i = "Step Into",
|
||||
l = "Run Last",
|
||||
n = "Step Over",
|
||||
o = "Step Out",
|
||||
p = "List Breakpoints",
|
||||
q = "Stop",
|
||||
s = {
|
||||
name = "Set DAP Variables",
|
||||
p = "Delve Port",
|
||||
},
|
||||
u = "Toggle UI",
|
||||
v = "Show Variables",
|
||||
d = "Termdebug",
|
||||
e = "Evaluate",
|
||||
s = "Step",
|
||||
o = "Over",
|
||||
r = "Run",
|
||||
u = "Clear Breakpoint",
|
||||
},
|
||||
g = {
|
||||
name = "Language",
|
||||
@ -61,12 +54,6 @@ wk.register({
|
||||
g = "Grep",
|
||||
s = "Treesitter",
|
||||
},
|
||||
v = {
|
||||
name = "Git",
|
||||
s = "Status",
|
||||
b = "Branches",
|
||||
f = "Files",
|
||||
},
|
||||
C = "Terminal",
|
||||
F = "Fuzzy Files",
|
||||
Q = "Quit All",
|
||||
|
||||
Reference in New Issue
Block a user