local dap = require('dap') dap.adapters.bashdb = { type = 'executable', command = vim.fn.stdpath("data") .. '/mason/packages/bash-debug-adapter/bash-debug-adapter', name = 'bashdb' } dap.configurations.sh = { { type = 'bashdb', request = 'launch', name = "Launch file", showDebugOutput = true, pathBashdb = vim.fn.stdpath("data") .. '/mason/packages/bash-debug-adapter/extension/bashdb_dir/bashdb', pathBashdbLib = vim.fn.stdpath("data") .. '/mason/packages/bash-debug-adapter/extension/bashdb_dir', trace = true, file = "${file}", program = "${file}", cwd = '${workspaceFolder}', pathCat = "cat", pathBash = "/opt/homebrew/bin/bash", pathMkfifo = "mkfifo", pathPkill = "pkill", args = {}, env = {}, terminalKind = "integrated", autoReload = { enable = true } } } dap.adapters.java = function(callback) -- FIXME: -- Here a function needs to trigger the `vscode.java.startDebugSession` LSP command -- The response to the command must be the `port` used below callback({ type = 'server', host = '127.0.0.1', port = 5005 }) end dap.configurations.java = { { type = 'java', request = 'attach', name = "Debug (Attach) - Remote", hostName = "127.0.0.1", port = 5005 } } require("dapui").setup({ controls = { -- Requires Neovim nightly (or 0.8 when released) enabled = true, -- Display controls in this element element = "repl", icons = { pause = '⏸', play = '⏵', step_into = '↓', step_over = '.⃕', step_out = '↑', step_back = '←', run_last = '↻', terminate = '⏹' } } })