dap.lua 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. local M = {}
  2. local Log = require "core.log"
  3. M.config = function()
  4. lvim.builtin.dap = {
  5. active = false,
  6. breakpoint = {
  7. text = "",
  8. texthl = "LspDiagnosticsSignError",
  9. linehl = "",
  10. numhl = "",
  11. },
  12. }
  13. end
  14. M.setup = function()
  15. local status_ok, dap = pcall(require, "dap")
  16. if not status_ok then
  17. Log:get_default().error "Failed to load dap"
  18. return
  19. end
  20. vim.fn.sign_define("DapBreakpoint", lvim.builtin.dap.breakpoint)
  21. dap.defaults.fallback.terminal_win_cmd = "50vsplit new"
  22. lvim.builtin.which_key.mappings["d"] = {
  23. name = "Debug",
  24. t = { "<cmd>lua require'dap'.toggle_breakpoint()<cr>", "Toggle Breakpoint" },
  25. b = { "<cmd>lua require'dap'.step_back()<cr>", "Step Back" },
  26. c = { "<cmd>lua require'dap'.continue()<cr>", "Continue" },
  27. C = { "<cmd>lua require'dap'.run_to_cursor()<cr>", "Run To Cursor" },
  28. d = { "<cmd>lua require'dap'.disconnect()<cr>", "Disconnect" },
  29. g = { "<cmd>lua require'dap'.session()<cr>", "Get Session" },
  30. i = { "<cmd>lua require'dap'.step_into()<cr>", "Step Into" },
  31. o = { "<cmd>lua require'dap'.step_over()<cr>", "Step Over" },
  32. u = { "<cmd>lua require'dap'.step_out()<cr>", "Step Out" },
  33. p = { "<cmd>lua require'dap'.pause.toggle()<cr>", "Pause" },
  34. r = { "<cmd>lua require'dap'.repl.toggle()<cr>", "Toggle Repl" },
  35. s = { "<cmd>lua require'dap'.continue()<cr>", "Start" },
  36. q = { "<cmd>lua require'dap'.close()<cr>", "Quit" },
  37. }
  38. end
  39. -- TODO put this up there ^^^ call in ftplugin
  40. -- M.dap = function()
  41. -- if lvim.plugin.dap.active then
  42. -- local dap_install = require "dap-install"
  43. -- dap_install.config("python_dbg", {})
  44. -- end
  45. -- end
  46. --
  47. -- M.dap = function()
  48. -- -- gem install readapt ruby-debug-ide
  49. -- if lvim.plugin.dap.active then
  50. -- local dap_install = require "dap-install"
  51. -- dap_install.config("ruby_vsc_dbg", {})
  52. -- end
  53. -- end
  54. return M