summaryrefslogtreecommitdiff
path: root/.config/nvim
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim')
-rw-r--r--.config/nvim/lua/custom/plugins/overseer.lua30
1 files changed, 26 insertions, 4 deletions
diff --git a/.config/nvim/lua/custom/plugins/overseer.lua b/.config/nvim/lua/custom/plugins/overseer.lua
index db5e53a..ff4e707 100644
--- a/.config/nvim/lua/custom/plugins/overseer.lua
+++ b/.config/nvim/lua/custom/plugins/overseer.lua
@@ -3,10 +3,32 @@ return {
-- NOTE: without telescope the UI is not custom, so making sure telescope is loaded first
dependencies = { 'nvim-telescope/telescope.nvim' },
event = 'VeryLazy',
- keys = {
- { '<leader>or', '<cmd>OverseerRun<cr>', desc = '[O]verseer [R]un' },
- { '<leader>ot', '<cmd>OverseerToggle<cr>', desc = '[O]verseer [T]oggle' },
- },
+ keys = function()
+ local overseer = require('overseer')
+ local RUN_TAG = overseer.TAG.RUN
+ local BUILD_TAG = overseer.TAG.BUILD
+ local TEST_TAG = overseer.TAG.TEST
+ local function run_template(tag, show_prompt)
+ return function()
+ local prompt = show_prompt and 'always' or 'avoid'
+ overseer.run_template({ tags = { tag }, first = true, prompt = prompt })
+ overseer.open({ enter = false }) -- don't focus
+ end
+ end
+ return {
+ { '<leader>or', run_template(RUN_TAG, false), desc = '[O]verseer [R]un' },
+ { '<leader>oR', run_template(RUN_TAG, true), desc = '[O]verseer [R]un (with params)' },
+
+ { '<leader>ob', run_template(BUILD_TAG, false), desc = '[O]verseer [B]uild' },
+ { '<leader>oB', run_template(BUILD_TAG, true), desc = '[O]verseer [B]uild (with params)' },
+
+ { '<leader>ot', run_template(TEST_TAG, false), desc = '[O]verseer [T]est' },
+ { '<leader>oT', run_template(TEST_TAG, true), desc = '[O]verseer [T]est (with params)' },
+
+ { '<leader>ow', '<cmd>OverseerToggle!<cr>', desc = '[O]verseer [W]indow (toggle)' },
+ { '<leader>oW', '<cmd>OverseerQuickAction open float<cr>', desc = '[O]verseer [W]indow (terminal float)' },
+ }
+ end,
opts = {
templates = { 'builtin', 'custom' },
task_list = {