From 29b4a8f395845e4a9f86b48dee672166d25c3a58 Mon Sep 17 00:00:00 2001 From: Ariel D'Alessandro Date: Wed, 2 Feb 2022 19:05:36 +0100 Subject: improve dap, re add max window, update plugins --- lua/alpha/dap-fn.lua | 7 +++++++ lua/alpha/dap.lua | 43 +++++++++++++++++++++---------------------- lua/alpha/init.lua | 3 ++- lua/plugins.lua | 2 ++ 4 files changed, 32 insertions(+), 23 deletions(-) (limited to 'lua') diff --git a/lua/alpha/dap-fn.lua b/lua/alpha/dap-fn.lua index 317b24b..a9d7666 100644 --- a/lua/alpha/dap-fn.lua +++ b/lua/alpha/dap-fn.lua @@ -1,3 +1,5 @@ +local dap = require("dap") +local dapui = require("dapui") local widgets = require('dap.ui.widgets') local ui = require('dap.ui') local api = vim.api @@ -75,5 +77,10 @@ M.fullscopes = function () vim.api.nvim_win_set_cursor(a.win, {1, 0}) end +M.stop = function () + dap.terminate() + dapui.close() + dap.clear_breakpoints() +end return M diff --git a/lua/alpha/dap.lua b/lua/alpha/dap.lua index dfa7110..9d94afa 100644 --- a/lua/alpha/dap.lua +++ b/lua/alpha/dap.lua @@ -1,32 +1,31 @@ -local dap = require('dap') +local dap, dapui, dap_install = require("dap"), require("dapui"), require("dap-install") local api = vim.api -dap.adapters.php = { - type = 'executable', - command = 'node', - args = { os.getenv('HOME') .. '/repos/vscode-php-debug/out/phpDebug.js' } -} +dapui.setup() -dap.configurations.php = { - { - type = 'php', - request = 'launch', - name = 'Listen for Xdebug', - port = 9003, - pathMappings = { - ['/var/www/html'] = vim.fn.getcwd(), - ['/app'] = vim.fn.getcwd(), +dap_install.config("php", { + configurations = { + { + type = 'php', + request = 'launch', + name = 'Listen for Xdebug', + port = 9003, + pathMappings = function () + local sail = vim.call('composer#query', 'require-dev.laravel/sail') + if sail == nil then + return {['/app'] = vim.fn.getcwd()} + end + return {['/var/www/html'] = vim.fn.getcwd()} + end + } } - } -} - +}) -- Events Listeners -dap.listeners.before['event_terminated']['alpha'] = function(session, body) - print('Session terminated', vim.inspect(session), vim.inspect(body)) +dap.listeners.after.event_initialized["dapui_config"] = function() + dapui.open() end - local function with_win(win, fn, ...) local cur_win = api.nvim_get_current_win() api.nvim_set_current_win(win) @@ -71,7 +70,6 @@ end dap.listeners.after['event_stopped']['alpha'] = function(session, body) - P(body.reason) if body.reason ~= 'breakpoint' then return end @@ -89,6 +87,7 @@ end vim.api.nvim_set_keymap('n', 'dbp', ':lua require\'dap\'.toggle_breakpoint()', {noremap = true}) vim.api.nvim_set_keymap('n', 'dd', ':lua require\'dap\'.continue()', {noremap = true}) +vim.api.nvim_set_keymap('n', 'de', ':lua require\'alpha.dap-fn\'.stop()', {noremap = true}) vim.api.nvim_set_keymap('n', 'dl', ':lua require\'dap\'.step_into()', {noremap = true}) vim.api.nvim_set_keymap('n', 'dj', ':lua require\'dap\'.step_over()', {noremap = true}) vim.api.nvim_set_keymap('n', 'dk', ':lua require\'dap\'.step_out()', {noremap = true}) diff --git a/lua/alpha/init.lua b/lua/alpha/init.lua index 30306c6..cd38f36 100644 --- a/lua/alpha/init.lua +++ b/lua/alpha/init.lua @@ -10,9 +10,10 @@ require("alpha.treesitter") require("alpha.status-line") require("alpha.dap") - -- Keybindings vim.api.nvim_set_keymap('n', 'rs', ':lua require(\'alpha.refactor\').setter_getter()', {noremap = true}) vim.api.nvim_set_keymap('n', 'rn', ':lua require(\'alpha.refactor\').new_property()', {noremap = true}) vim.api.nvim_set_keymap('n', 'x', ':call alpha#save_and_exec()', {noremap = true}) + +vim.api.nvim_set_keymap('n', 'm', ':MaximizerToggle', {noremap = true}) diff --git a/lua/plugins.lua b/lua/plugins.lua index 746e2d9..fedc5e9 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -65,7 +65,9 @@ return require('packer').startup(function(use) requires = {'kyazdani42/nvim-web-devicons', opt = true} } + use 'rcarriga/nvim-dap-ui' use 'mfussenegger/nvim-dap' + use "Pocco81/DAPInstall.nvim" use 'szw/vim-maximizer' -- cgit v1.2.3