From 998397cfc222f95c3dbd3b35e7d9a22fcee9fd28 Mon Sep 17 00:00:00 2001 From: blob42 Date: Mon, 7 Aug 2023 14:42:27 +0200 Subject: [PATCH] codelldb setup --- lua/spike/dap/init.lua | 55 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/lua/spike/dap/init.lua b/lua/spike/dap/init.lua index 081d5f6..3b0e265 100644 --- a/lua/spike/dap/init.lua +++ b/lua/spike/dap/init.lua @@ -7,6 +7,8 @@ local dapmode = require("spike.dap.dapmode") local daputils = require('spike.dap.utils') local dapui = require("dapui") +local liblldb_path = vim.fn.stdpath("data") .. "/mason/packages/codelldb/extension/lldb/lib/liblldb.so" + local M = {} M.signs = { DapBreakpoint = { @@ -72,6 +74,59 @@ local function dap_setup() } } + -- dap.adapters["codelldb-c"] = { + -- type = 'server', + -- host = "127.0.0.1", + -- port = "${port}", + -- executable = { + -- command = "/home/spike/.local/share/nvim/mason/packages/codelldb/extension/adapter/codelldb", + -- args = {"--liblldb", liblldb_path,"--port", "${port}"}, + -- } + -- } + + dap.adapters["codelldb-c"] = { + type = 'server', + host = "127.0.0.1", + port = "${port}", + executable = { + command = "/home/spike/.local/share/nvim/mason/packages/codelldb/extension/adapter/codelldb", + args = {"--liblldb", liblldb_path,"--port", "${port}"}, + } + } + + + dap.configurations.c = { + { + name = "Launch file", + type = "codelldb-c", + request = "launch", + program = function() + return vim.fn.input("path to exe: ", vim.fn.getcwd() .. '/', 'file') + end, + cwd = '${workspaceFolder}', + stopOnEntry = false, + -- runInTerminal = true, + }, + + { + name = "Launch file (custom args)", + type = "codelldb-c", + request = "launch", + program = function() + -- local custom_args = vim.ui.input({ prompt = "custom args: "} + return vim.fn.input("path to exe: ", vim.fn.getcwd() .. '/', 'file') + end, + cwd = '${workspaceFolder}', + stopOnEntry = false, + args = function() + local args = vim.fn.input("args: ", "") + -- return a table of args + return vim.split(args, "%s+") + end + -- runInTerminal = true, + }, + + } end