93 lines
2.8 KiB
Lua
93 lines
2.8 KiB
Lua
|
local dap = require('dap')
|
||
|
|
||
|
require("dap-vscode-js").setup({
|
||
|
-- node_path = "node", -- Path of node executable. Defaults to $NODE_PATH, and then "node"
|
||
|
debugger_path = "/.local/share/lunarvim/site/pack/lazy/opt/vscode-js-debug", -- Path to vscode-js-debug installation.
|
||
|
debugger_cmd = { "js-debug-adapter" }, -- Command to use to launch the debug server. Takes precedence over `node_path` and `debugger_path`.
|
||
|
adapters = { 'node-terminal' }, -- which adapters to register in nvim-dap
|
||
|
-- log_file_path = "(stdpath cache)/dap_vscode_js.log", -- Path for file logging
|
||
|
-- log_file_level = false, -- Logging level for output to file. Set to false to disable file logging.
|
||
|
-- log_console_level = vim.log.levels.ERROR -- Logging level for output to console. Set to false to disable console output.
|
||
|
})
|
||
|
|
||
|
dap.configurations.cpp = {
|
||
|
{
|
||
|
name = "Launch file",
|
||
|
type = "codelldb",
|
||
|
request = "launch",
|
||
|
program = function()
|
||
|
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
|
||
|
end,
|
||
|
cwd = '${workspaceFolder}',
|
||
|
stopOnEntry = false,
|
||
|
},
|
||
|
}
|
||
|
|
||
|
dap.configurations.c = dap.configurations.cpp
|
||
|
dap.configurations.rust = dap.configurations.cpp
|
||
|
|
||
|
dap.adapters["pwa-node"] = {
|
||
|
type = "server",
|
||
|
host = "localhost",
|
||
|
port = "${port}",
|
||
|
executable = {
|
||
|
command = "node",
|
||
|
-- 💀 Make sure to update this path to point to your installation
|
||
|
args = {"/.local/share/lvim/mason/packages/js-debug-adapter/js-debug/src/dapDebugServer.js", "${port}"},
|
||
|
}
|
||
|
}
|
||
|
|
||
|
dap.configurations.javascript = {
|
||
|
{
|
||
|
type = "pwa-node",
|
||
|
request = "launch",
|
||
|
name = "Launch file",
|
||
|
program = "${file}",
|
||
|
cwd = "${workspaceFolder}",
|
||
|
},
|
||
|
}
|
||
|
|
||
|
dap.adapters.chrome = {
|
||
|
type = "executable",
|
||
|
command = "node",
|
||
|
args = {os.getenv("HOME") .. "/.local/share/lvim/mason/packages/chrome-debug-adapter/out/src/chromeDebug.js"},
|
||
|
}
|
||
|
|
||
|
dap.adapters.firefox = {
|
||
|
type = 'executable',
|
||
|
command = 'node',
|
||
|
args = {os.getenv('HOME') .. '/.local/share/lvim/mason/packages/firefox-debug-adapter/dist/adapter.bundle.js'},
|
||
|
}
|
||
|
|
||
|
dap.configurations.typescriptreact = { -- change to typescript if needed
|
||
|
{
|
||
|
name = "Next.js: debug server-side",
|
||
|
type = "node-terminal",
|
||
|
request = "launch",
|
||
|
command = "npm run dev",
|
||
|
sourceMaps= true,
|
||
|
},
|
||
|
{
|
||
|
name = "Next.js: debug client-side with chrome",
|
||
|
type = "chrome",
|
||
|
request = "launch",
|
||
|
url = "http://localhost:3000"
|
||
|
},
|
||
|
{
|
||
|
name = "Next.js: debug client-side with firefox",
|
||
|
type = "firefox",
|
||
|
request = "launch",
|
||
|
url = 'http://localhost:3000',
|
||
|
webRoot = '${workspaceFolder}',
|
||
|
firefoxExecutable = '/usr/bin/waterfox',
|
||
|
pathMappings = {
|
||
|
{
|
||
|
url = "webpack://_n_e/",
|
||
|
path = "${workspaceFolder}/"
|
||
|
}
|
||
|
},
|
||
|
},
|
||
|
}
|
||
|
|
||
|
dap.configurations.javascriptreact = dap.configurations.typescriptreact;
|