diff options
author | David Luevano Alvarado <david@luevano.xyz> | 2023-12-26 19:37:33 -0600 |
---|---|---|
committer | David Luevano Alvarado <david@luevano.xyz> | 2023-12-26 19:37:33 -0600 |
commit | 2b3fbe7925a24ac4569ea4bd2d5c4069feb6f81f (patch) | |
tree | 7ef72413d619a950fa06bd0ec17811702f93d1b3 | |
parent | 24f547435d321a9c93a235f653b79f1854049767 (diff) |
feat: add debug capabilities, remove rest of kickstart
-rw-r--r-- | lua/kickstart/plugins/autoformat.lua | 64 | ||||
-rw-r--r-- | lua/plugins/debug.lua (renamed from lua/kickstart/plugins/debug.lua) | 33 |
2 files changed, 18 insertions, 79 deletions
diff --git a/lua/kickstart/plugins/autoformat.lua b/lua/kickstart/plugins/autoformat.lua deleted file mode 100644 index 88bbd57..0000000 --- a/lua/kickstart/plugins/autoformat.lua +++ /dev/null @@ -1,64 +0,0 @@ --- autoformat.lua --- --- Use your language server to automatically format your code on save. --- Adds additional commands as well to manage the behavior - -return { - 'neovim/nvim-lspconfig', - config = function() - -- Switch for controlling whether you want autoformatting. - -- Use :KickstartFormatToggle to toggle autoformatting on or off - local format_is_enabled = true - vim.api.nvim_create_user_command('KickstartFormatToggle', function() - format_is_enabled = not format_is_enabled - print('Setting autoformatting to: ' .. tostring(format_is_enabled)) - end, {}) - - -- Create an augroup that is used for managing our formatting autocmds. - -- We need one augroup per client to make sure that multiple clients - -- can attach to the same buffer without interfering with each other. - local _augroups = {} - local get_augroup = function(client) - if not _augroups[client.id] then - local group_name = 'kickstart-lsp-format-' .. client.name - local id = vim.api.nvim_create_augroup(group_name, { clear = true }) - _augroups[client.id] = id - end - - return _augroups[client.id] - end - - vim.api.nvim_create_autocmd('LspAttach', { - group = vim.api.nvim_create_augroup('kickstart-lsp-attach-format', { clear = true }), - -- This is where we attach the autoformatting for reasonable clients - callback = function(args) - local client_id = args.data.client_id - local client = vim.lsp.get_client_by_id(client_id) - local bufnr = args.buf - - -- Only attach to clients that support document formatting - if not client.server_capabilities.documentFormattingProvider then - return - end - - -- Tsserver usually works poorly. Sorry you work with bad languages - -- You can remove this line if you know what you're doing :) - if client.name == 'tsserver' then - return - end - - vim.api.nvim_create_autocmd('BufWritePre', { - group = get_augroup(client), - buffer = bufnr, - callback = function() - if not format_is_enabled then - return - end - - vim.lsp.buf.format({ async = false }) - end, - }) - end, - }) - end, -} diff --git a/lua/kickstart/plugins/debug.lua b/lua/plugins/debug.lua index 0150db8..b4b7783 100644 --- a/lua/kickstart/plugins/debug.lua +++ b/lua/plugins/debug.lua @@ -4,12 +4,11 @@ return { 'rcarriga/nvim-dap-ui', 'williamboman/mason.nvim', 'jay-babu/mason-nvim-dap.nvim', - -- Add your own debuggers here 'leoluz/nvim-dap-go', }, config = function() - local dap = require 'dap' - local dapui = require 'dapui' + local dap = require('dap') + local dapui = require('dapui') require('mason-nvim-dap').setup { automatic_setup = true, @@ -18,16 +17,21 @@ return { 'delve', }, } - vim.keymap.set('n', '<F5>', dap.continue) - vim.keymap.set('n', '<F1>', dap.step_into) - vim.keymap.set('n', '<F2>', dap.step_over) - vim.keymap.set('n', '<F3>', dap.step_out) - vim.keymap.set('n', '<leader>b', dap.toggle_breakpoint) - vim.keymap.set('n', '<leader>B', function() - dap.set_breakpoint(vim.fn.input 'Breakpoint condition: ') - end) - dapui.setup { + local nmap = function(keys, func, desc) + if desc then + desc = 'DAP: ' .. desc + end + vim.keymap.set('n', keys, func, { desc = desc }) + end + nmap('<F5>', dap.continue) + nmap('<F1>', dap.step_into) + nmap('<F2>', dap.step_over) + nmap('<F3>', dap.step_out) + nmap("<leader>du", dapui.toggle, "Toggle [u]i") + nmap('<leader>db', dap.toggle_breakpoint, "Toggle [b]reakpoint") + + dapui.setup({ icons = { expanded = '▾', collapsed = '▸', current_frame = '*' }, controls = { icons = { @@ -42,13 +46,12 @@ return { disconnect = "⏏", }, }, - } - vim.keymap.set("n", "<F7>", dapui.toggle) + }) dap.listeners.after.event_initialized['dapui_config'] = dapui.open dap.listeners.before.event_terminated['dapui_config'] = dapui.close dap.listeners.before.event_exited['dapui_config'] = dapui.close - require('dap-go').setup() + require('dap-go').setup({}) end, } |