feat(typescript): added dap config for typescript. Will only be enabled when dap is also enabled
This commit is contained in:
@ -62,4 +62,56 @@ return {
|
|||||||
table.insert(opts.sources, require("typescript.extensions.null-ls.code-actions"))
|
table.insert(opts.sources, require("typescript.extensions.null-ls.code-actions"))
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"mfussenegger/nvim-dap",
|
||||||
|
optional = true,
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
opts = function(_, opts)
|
||||||
|
opts.ensure_installed = opts.ensure_installed or {}
|
||||||
|
table.insert(opts.ensure_installed, "js-debug-adapter")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
opts = function()
|
||||||
|
local dap = require("dap")
|
||||||
|
if not dap.adapters["pwa-node"] then
|
||||||
|
require("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 = {
|
||||||
|
require("mason-registry").get_package("js-debug-adapter"):get_install_path()
|
||||||
|
.. "/js-debug/src/dapDebugServer.js",
|
||||||
|
"${port}",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
for _, language in ipairs({ "typescript", "javascript" }) do
|
||||||
|
if not dap.configurations[language] then
|
||||||
|
dap.configurations[language] = {
|
||||||
|
{
|
||||||
|
type = "pwa-node",
|
||||||
|
request = "launch",
|
||||||
|
name = "Launch file",
|
||||||
|
program = "${file}",
|
||||||
|
cwd = "${workspaceFolder}",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "pwa-node",
|
||||||
|
request = "attach",
|
||||||
|
name = "Attach",
|
||||||
|
processId = require("dap.utils").pick_process,
|
||||||
|
cwd = "${workspaceFolder}",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user