This commit is contained in:
Baipyrus 2024-06-09 20:12:15 +02:00
commit 2286989640
7 changed files with 37 additions and 82 deletions

View File

@ -2,11 +2,20 @@ return {
-- Simple task runner plugin
'stevearc/overseer.nvim',
opts = {},
config = function(_, opts)
require('overseer').setup(opts or {})
config = function()
local overseer = require 'overseer'
overseer.setup {
templates = {
'builtin',
'golang.run_project',
'golang.run_file',
},
}
-- Display status info about tasks
vim.keymap.set('n', '<leader>ol', '<cmd>OverseerToggle<cr>', { desc = '[O]verseer [L]og' })
vim.keymap.set('n', '<leader>ol', function()
overseer.toggle { winid = 0 }
end, { desc = '[O]verseer [L]og' })
-- Run task by listing all in floating
vim.keymap.set('n', '<leader>or', '<cmd>OverseerRun<cr>', { desc = '[O]verseer [R]un' })
end,

View File

@ -1,77 +0,0 @@
return {
{
'mfussenegger/nvim-dap',
dependencies = {
-- Async IO library
'nvim-neotest/nvim-nio',
-- Creates a beautiful debugger UI
'rcarriga/nvim-dap-ui',
-- Required dependency for nvim-dap-ui
'nvim-neotest/nvim-nio',
-- Installs the debug adapters for you
'williamboman/mason.nvim',
'jay-babu/mason-nvim-dap.nvim',
-- Language specific debuggers
-- 'leoluz/nvim-dap-go',
},
config = function()
local dap = require 'dap'
local dapui = require 'dapui'
require('mason-nvim-dap').setup {
-- Makes a best effort to setup the various debuggers with
-- reasonable debug configurations
automatic_installation = true,
}
-- Basic debugging keymaps, feel free to change to your liking!
vim.keymap.set('n', '<F5>', dap.continue, { desc = 'Debug: Start/Continue' })
vim.keymap.set('n', '<F1>', dap.step_into, { desc = 'Debug: Step Into' })
vim.keymap.set('n', '<F2>', dap.step_over, { desc = 'Debug: Step Over' })
vim.keymap.set('n', '<F3>', dap.step_out, { desc = 'Debug: Step Out' })
vim.keymap.set('n', '<leader>B', dap.toggle_breakpoint, { desc = 'Debug: Toggle Breakpoint' })
vim.keymap.set('n', '<leader>bs', function()
dap.set_breakpoint(vim.fn.input 'Breakpoint condition: ')
end, { desc = 'Debug: [B]reakpoint [S]et' })
-- Dap UI setup
dapui.setup {
-- Set icons to characters that are more likely to work in every terminal.
icons = { expanded = '', collapsed = '', current_frame = '*' },
controls = {
icons = {
pause = '',
play = '',
step_into = '',
step_over = '',
step_out = '',
step_back = 'b',
run_last = '▶▶',
terminate = '',
disconnect = '',
},
},
}
-- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception.
vim.keymap.set('n', '<F7>', dapui.toggle, { desc = 'Debug: See last session result.' })
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
-- Install golang specific config
-- require('dap-go').setup {
-- delve = {
-- -- On Windows delve must be run attached or it crashes.
-- -- See https://github.com/leoluz/nvim-dap-go/blob/main/README.md#configuring
-- detached = vim.fn.has 'win32' == 0,
-- },
-- }
end,
},
}

View File

@ -165,6 +165,7 @@ return {
tsserver = {},
pyright = {},
svelte = {},
gopls = {},
-- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs
--
-- Some languages (like typescript) have entire language plugins that can be useful:
@ -199,7 +200,9 @@ return {
local ensure_installed = vim.tbl_keys(servers or {})
vim.list_extend(ensure_installed, {
'stylua', -- Used to format lua code
'node-debug2-adapter',
'eslint_d',
'prettier',
'prettierd',
})
require('mason-tool-installer').setup { ensure_installed = ensure_installed }

View File

@ -35,6 +35,7 @@ return {
['<leader>dn'] = { name = '[N]o', _ = 'which_key_ignore' },
['<leader>l'] = { name = '[L]ist', _ = 'which_key_ignore' },
['<leader>f'] = { name = '[F]ormat/[F]ile', _ = 'which_key_ignore' },
['<leader>o'] = { name = '[O]verseer', _ = 'which_key_ignore' },
}
-- register which-key VISUAL mode

View File

@ -64,7 +64,6 @@ require('lazy').setup({
-- Here are some example plugins that I've included in the Kickstart repository.
-- Uncomment any of the lines below to enable them (you will need to restart nvim).
require 'kickstart.plugins.debug',
require 'kickstart.plugins.indent_line',
require 'kickstart.plugins.lint',
-- require 'kickstart.plugins.neo-tree',

View File

@ -0,0 +1,10 @@
-- Run currently open go file using Overseer
return {
name = 'go run file',
builder = function(_)
return {
cmd = 'go run ${file}',
}
end,
condition = { filetype = 'go' },
}

View File

@ -0,0 +1,10 @@
-- Run project in working directory using Overseer
return {
name = 'go run',
builder = function(_)
return {
cmd = 'go run .',
}
end,
condition = { filetype = 'go' },
}