mirror of
https://github.com/Baipyrus/nvim-config.git
synced 2024-11-15 05:23:50 +00:00
48 lines
1.2 KiB
Lua
48 lines
1.2 KiB
Lua
return {
|
|
-- Simple task runner plugin
|
|
'stevearc/overseer.nvim',
|
|
opts = {},
|
|
config = function()
|
|
local overseer = require 'overseer'
|
|
overseer.setup {
|
|
templates = {
|
|
'builtin',
|
|
'golang.run_project',
|
|
'golang.run_file',
|
|
},
|
|
task_list = {
|
|
bindings = {
|
|
['<C-h>'] = false,
|
|
['<C-j>'] = false,
|
|
['<C-k>'] = false,
|
|
['<C-l>'] = false,
|
|
['q'] = false,
|
|
},
|
|
},
|
|
}
|
|
|
|
-- Reference: overseer.nvim/lua/overseer/window.lua
|
|
local function is_open()
|
|
for _, winid in ipairs(vim.api.nvim_tabpage_list_wins(0)) do
|
|
local bufnr = vim.api.nvim_win_get_buf(winid)
|
|
if vim.bo[bufnr].filetype == 'OverseerList' then
|
|
return true
|
|
end
|
|
end
|
|
return false
|
|
end
|
|
|
|
-- Display status info about tasks
|
|
vim.keymap.set('n', '<leader>ol', function()
|
|
overseer.toggle { winid = 0 }
|
|
if is_open() then
|
|
vim.cmd.winc '_'
|
|
else
|
|
vim.api.nvim_buf_delete(vim.api.nvim_get_current_buf(), {})
|
|
end
|
|
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,
|
|
}
|