From ec8e63658d369762f8ea23920d318dd259155b7c Mon Sep 17 00:00:00 2001 From: mequidis Date: Sat, 25 Jun 2022 22:25:17 +0300 Subject: [PATCH] nvim: native debug -> nvim-gdb --- .config/nvim/init.lua | 1 - .config/nvim/lua/debug.lua | 29 --------------------- .config/nvim/lua/mappings.lua | 10 ------- .config/nvim/lua/plugins.lua | 36 ++++++++++---------------- .config/nvim/lua/plugins/formatter.lua | 6 ++--- .config/nvim/lua/plugins/gdb.lua | 35 +++++++++++++++++++++++++ .config/nvim/lua/plugins/whichkey.lua | 14 +++++----- 7 files changed, 58 insertions(+), 73 deletions(-) delete mode 100644 .config/nvim/lua/debug.lua create mode 100644 .config/nvim/lua/plugins/gdb.lua diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index ec16da0..3d63931 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -6,6 +6,5 @@ end require("plugins") load("options") load("mappings") -load("debug") load("disablebuiltin") load("colors") diff --git a/.config/nvim/lua/debug.lua b/.config/nvim/lua/debug.lua deleted file mode 100644 index aa99fab..0000000 --- a/.config/nvim/lua/debug.lua +++ /dev/null @@ -1,29 +0,0 @@ --- enable termdebug -vim.cmd("packadd termdebug") --- use a usable layout -vim.g.termdebug_wide = 1 - -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, -}) diff --git a/.config/nvim/lua/mappings.lua b/.config/nvim/lua/mappings.lua index 8d45df5..19d8299 100644 --- a/.config/nvim/lua/mappings.lua +++ b/.config/nvim/lua/mappings.lua @@ -92,13 +92,3 @@ end) vim.keymap.set("n", "]d", function() vim.lsp.diagnostic.goto_next() end) - --- debug -vim.keymap.set("n", "db", "Break") -vim.keymap.set("n", "dc", "Continue") -vim.keymap.set("n", "dd", ":Termdebug ") -vim.keymap.set("n", "de", "Evaluate") -vim.keymap.set("n", "di", "Step") -vim.keymap.set("n", "dn", "Over") -vim.keymap.set("n", "dr", "Run") -vim.keymap.set("n", "du", "Clear") diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua index e0d439a..4203b11 100644 --- a/.config/nvim/lua/plugins.lua +++ b/.config/nvim/lua/plugins.lua @@ -2,7 +2,7 @@ require("packer").startup(function() use("wbthomason/packer.nvim") -- - -- LSP + -- dev -- -- lspconfig @@ -23,10 +23,6 @@ require("packer").startup(function() end, }) - -- - -- completion - -- - -- cmp use({ "hrsh7th/nvim-cmp", @@ -35,22 +31,10 @@ require("packer").startup(function() require("plugins.cmp") end, }) - use({ - "hrsh7th/cmp-nvim-lsp", - after = "nvim-cmp", - }) - use({ - "hrsh7th/cmp-vsnip", - after = "nvim-cmp", - }) - use({ - "hrsh7th/cmp-buffer", - after = "nvim-cmp", - }) - use({ - "hrsh7th/cmp-path", - after = "nvim-cmp", - }) + use({ "hrsh7th/cmp-nvim-lsp", after = "nvim-cmp" }) + use({ "hrsh7th/cmp-vsnip", after = "nvim-cmp" }) + use({ "hrsh7th/cmp-buffer", after = "nvim-cmp" }) + use({ "hrsh7th/cmp-path", after = "nvim-cmp" }) -- snippets use({ @@ -110,6 +94,14 @@ require("packer").startup(function() end, }) + use({ + "sakhnik/nvim-gdb", + event = "BufEnter", + config = function() + require("plugins.gdb") + end, + }) + -- comment.nvim use({ "numToStr/Comment.nvim", @@ -230,7 +222,7 @@ require("packer").startup(function() use({ "nvim-orgmode/orgmode", - after = 'nvim-treesitter', + after = "nvim-treesitter", config = function() require("plugins.orgmode") end, diff --git a/.config/nvim/lua/plugins/formatter.lua b/.config/nvim/lua/plugins/formatter.lua index 5000c2f..7a8d029 100644 --- a/.config/nvim/lua/plugins/formatter.lua +++ b/.config/nvim/lua/plugins/formatter.lua @@ -1,4 +1,4 @@ -require("formatter").setup { +require("formatter").setup({ filetype = { lua = { require("formatter.filetypes.lua").stylua, @@ -19,5 +19,5 @@ require("formatter").setup { toml = { require("formatter.filetypes.toml").taplo, }, - } -} + }, +}) diff --git a/.config/nvim/lua/plugins/gdb.lua b/.config/nvim/lua/plugins/gdb.lua new file mode 100644 index 0000000..bdc884c --- /dev/null +++ b/.config/nvim/lua/plugins/gdb.lua @@ -0,0 +1,35 @@ +-- settings +vim.g.nvimgdb_use_find_executables = 0 +vim.g.nvimgdb_use_cmake_to_find_executables = 0 +vim.g.nvimgdb_disable_start_keymaps = 1 + +-- filetype mappings +vim.api.nvim_create_autocmd({ "FileType" }, { + pattern = "python", + callback = function() + vim.keymap.set("n", "dd", ":GdbStartPDB python -m pdb ") + end, +}) + +vim.api.nvim_create_autocmd({ "FileType" }, { + pattern = "rust", + callback = function() + vim.keymap.set("n", "dd", ":GdbStart rust-gdb target/debug/") + end, +}) + +vim.api.nvim_create_autocmd({ "FileType" }, { + pattern = { "go", "c" }, + callback = function() + vim.keymap.set("n", "dd", ":GdbStart gdb -q ") + end, +}) + +-- other mappings +vim.keymap.set("n", "db", "GdbBreakpointToggle") +vim.keymap.set("n", "dc", "GdbContinue") +vim.keymap.set("n", "du", "GdbUntil") +vim.keymap.set("n", "ds", "GdbStep") +vim.keymap.set("n", "dn", "GdbNext") +vim.keymap.set("n", "do", "GdbFinish") +vim.keymap.set("n", "dw", ":GdbCreateWatch ") diff --git a/.config/nvim/lua/plugins/whichkey.lua b/.config/nvim/lua/plugins/whichkey.lua index 35b64a2..935991a 100644 --- a/.config/nvim/lua/plugins/whichkey.lua +++ b/.config/nvim/lua/plugins/whichkey.lua @@ -7,14 +7,12 @@ wk.register({ }, d = { name = "Debug", - b = "Set Breakpoint", - c = "Continue", - d = "Termdebug", - e = "Evaluate", - s = "Step", - o = "Over", - r = "Run", - u = "Clear Breakpoint", + b = "Toggle Breakpoint", + f = "Finish / Step Out", + n = "Next", + s = "Step Into", + u = "Until", + w = "Create Watch", }, g = { name = "Language",