diff --git a/lua/kickstart/plugins/debug.lua b/lua/kickstart/plugins/debug.lua index fe94195..3b95673 100644 --- a/lua/kickstart/plugins/debug.lua +++ b/lua/kickstart/plugins/debug.lua @@ -49,6 +49,7 @@ return { vim.keymap.set('n', '', dap.step_over, { desc = 'Debug: Step Over' }) vim.keymap.set('n', '', dap.step_out, { desc = 'Debug: Step Out' }) vim.keymap.set('n', 'bp', dap.toggle_breakpoint, { desc = 'Debug: Toggle Breakpoint' }) + vim.keymap.set('v', ',e', dapui.eval, { desc = 'Debug: Evaluate expression' }) vim.keymap.set('n', 'B', function() dap.set_breakpoint(vim.fn.input 'Breakpoint condition: ') end, { desc = 'Debug: Set Breakpoint' }) @@ -94,6 +95,30 @@ return { }, } + -- Rust + dap.adapters.lldb = { + type = "executable", + command = "/usr/bin/lldb", -- Adjust the path to your codelldb executable + name = "lldb", + } + + dap.configurations.rust = { + { + name = "Launch", + type = "lldb", + request = "launch", + program = function() + return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/target/debug/", "file") + end, + cwd = "${workspaceFolder}", + stopOnEntry = false, + args = {}, + + -- Additional LLDB-specific settings + runInTerminal = false, + }, + } + -- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception. vim.keymap.set('n', '', dapui.toggle, { desc = 'Debug: See last session result.' })