return { { 'mfussenegger/nvim-dap', dependencies = { { 'rcarriga/nvim-dap-ui', dependencies = { 'mfussenegger/nvim-dap', 'nvim-neotest/nvim-nio', }, config = function () require("dapui").setup() end }, { 'theHamsta/nvim-dap-virtual-text', config = function() require("nvim-dap-virtual-text").setup() end } }, config = function () local dap = require('dap') dap.configurations.cpp = { { name = "Launch", type= "codelldb", request = "launch", program = function () return vim.fn.input('Path to executable: ', vim.fn.getcwd() , 'file') end, cwd = '${workspaceFolder}/Framework', stopOnEntry = false, } } dap.adapters.lldb = { type = 'executable', command = "C:\\Program Files\\LLVM\\bin\\lldb-dap.exe", name = 'lldb' } -- Zig configuration dap.configurations.zig = { name = 'launch', type= 'lldb', request = 'launch', program = '${workspaceFolder}/zig-out/bin/tests.exe', cwd = '${workspaceFolder}', } -- Java configuration -- See also ftplugin dap.configurations.java = { { type = 'java', request = 'launch', name = "Launch file", program = "java ${file}", }} dap.configurations.cpp = {{ 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 = {}, }} dap.configurations.go = { { type = "delve", name = "Debug", request = "launch", program = "${file}" }, { type = "delve", name = "Debug test", -- configuration for debugging test files request = "launch", mode = "test", program = "${file}" }, -- works with go.mod packages and sub packages { type = "delve", name = "Debug test (go.mod)", request = "launch", mode = "test", program = "./${relativeFileDirname}" } } dap.adapters.delve = { type = 'server', port = '${port}', executable = { command = 'dlv', args = {'dap', '-l', '127.0.0.1:${port}'}, } } dap.adapters.codelldb = { type= 'server', port = '${port}', executable = { command = 'C:/Users/Nigel/Appdata/Local/nvim-data/mason/bin/codelldb.cmd', args = {"--port", "${port}"} } } end } }