dap.lua 1.8 KB

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