From dd144abebfcfebe1031e0bdcdce2af2f3ff01b22 Mon Sep 17 00:00:00 2001 From: vladstojna Date: Sat, 22 Apr 2023 19:50:41 +0100 Subject: [PATCH] add debugging config --- init.lua | 2 +- lua/custom/dap/adapters/codelldb.lua | 10 ++++++++++ lua/custom/dap/adapters/cpptools.lua | 7 +++++++ lua/custom/dap/adapters/init.lua | 1 + lua/custom/dap/adapters/lldb-vscode.lua | 6 ++++++ lua/custom/dap/config/init.lua | 7 +++++++ lua/custom/dap/init.lua | 2 ++ lua/kickstart/plugins/debug.lua | 6 ++++++ 8 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 lua/custom/dap/adapters/codelldb.lua create mode 100644 lua/custom/dap/adapters/cpptools.lua create mode 100644 lua/custom/dap/adapters/init.lua create mode 100644 lua/custom/dap/adapters/lldb-vscode.lua create mode 100644 lua/custom/dap/config/init.lua create mode 100644 lua/custom/dap/init.lua diff --git a/init.lua b/init.lua index c490ddfa..97eaf843 100644 --- a/init.lua +++ b/init.lua @@ -213,7 +213,7 @@ require('lazy').setup({ -- These are some example plugins that I've included in the kickstart repository. -- Uncomment any of the lines below to enable them. -- require 'kickstart.plugins.autoformat', - -- require 'kickstart.plugins.debug', + require 'kickstart.plugins.debug', -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua` -- You can use this folder to prevent any conflicts with this init.lua if you're interested in keeping diff --git a/lua/custom/dap/adapters/codelldb.lua b/lua/custom/dap/adapters/codelldb.lua new file mode 100644 index 00000000..73e12cc8 --- /dev/null +++ b/lua/custom/dap/adapters/codelldb.lua @@ -0,0 +1,10 @@ +local dap = require('dap') + +dap.adapters.codelldb = { + type = 'server', + port = "${port}", + executable = { + command = vim.fn.stdpath('data') .. '/mason/bin/codelldb', + args = { "--port", "${port}" }, + } +} diff --git a/lua/custom/dap/adapters/cpptools.lua b/lua/custom/dap/adapters/cpptools.lua new file mode 100644 index 00000000..4ad088bc --- /dev/null +++ b/lua/custom/dap/adapters/cpptools.lua @@ -0,0 +1,7 @@ +local dap = require('dap') + +dap.adapters.cppdbg = { + id = 'cppdbg', + type = 'executable', + command = vim.fn.stdpath('data') .. '/mason/bin/OpenDebugAD7' +} diff --git a/lua/custom/dap/adapters/init.lua b/lua/custom/dap/adapters/init.lua new file mode 100644 index 00000000..8347434b --- /dev/null +++ b/lua/custom/dap/adapters/init.lua @@ -0,0 +1 @@ +require('custom.dap.adapters.cpptools') diff --git a/lua/custom/dap/adapters/lldb-vscode.lua b/lua/custom/dap/adapters/lldb-vscode.lua new file mode 100644 index 00000000..b8ed199d --- /dev/null +++ b/lua/custom/dap/adapters/lldb-vscode.lua @@ -0,0 +1,6 @@ +local dap = require('dap') + +dap.adapters.lldb = { + type = 'executable', + command = 'lldb-vscode' +} diff --git a/lua/custom/dap/config/init.lua b/lua/custom/dap/config/init.lua new file mode 100644 index 00000000..4a4ff7fe --- /dev/null +++ b/lua/custom/dap/config/init.lua @@ -0,0 +1,7 @@ +local dap_vscode = require('dap.ext.vscode') + +dap_vscode.load_launchjs(nil, { + cppdbg = { 'c', 'cpp', 'rust' }, + lldb = { 'c', 'cpp', 'rust' }, + codelldb = { 'c', 'cpp', 'rust' }, +}) diff --git a/lua/custom/dap/init.lua b/lua/custom/dap/init.lua new file mode 100644 index 00000000..01cd249a --- /dev/null +++ b/lua/custom/dap/init.lua @@ -0,0 +1,2 @@ +require('custom.dap.adapters') +require('custom.dap.config') diff --git a/lua/kickstart/plugins/debug.lua b/lua/kickstart/plugins/debug.lua index 7fc783fa..2e65e321 100644 --- a/lua/kickstart/plugins/debug.lua +++ b/lua/kickstart/plugins/debug.lua @@ -13,6 +13,7 @@ return { dependencies = { -- Creates a beautiful debugger UI 'rcarriga/nvim-dap-ui', + 'theHamsta/nvim-dap-virtual-text', -- Installs the debug adapters for you 'williamboman/mason.nvim', @@ -20,6 +21,7 @@ return { -- Add your own debuggers here 'leoluz/nvim-dap-go', + 'mfussenegger/nvim-dap-python', }, config = function() local dap = require 'dap' @@ -83,5 +85,9 @@ return { -- Install golang specific config require('dap-go').setup() + -- Install python specific config + require('dap-python').setup() + -- Setup additional adapter/configuration definitions + require('custom.dap') end, }