diff options
| author | 2026-04-21 01:23:18 +0100 | |
|---|---|---|
| committer | 2026-04-21 01:23:18 +0100 | |
| commit | d00bf2cb2d5087164fa509a4f20a2be62a519044 (patch) | |
| tree | e788986ca341fa7a9d7327b48c58d2e0c0c43115 /dot_config/nvim/lua/plugins/runner.lua | |
| parent | 9b2af4dd6c73ea57cc921f41120db7a2700e806d (diff) | |
| download | dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.tar.gz dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.tar.bz2 dotfiles-d00bf2cb2d5087164fa509a4f20a2be62a519044.zip | |
refactor: restructure to chezmoi source state
Rename home/ contents to chezmoi naming conventions:
- dot_ prefix for dotfiles and dot-dirs
- private_dot_ for .gnupg and .ssh directories
- private_ for 0600 files (nym.pub)
- executable_ for scripts in .local/bin and display-toggle.sh
- symlink_ for mimeapps.list symlink
Diffstat (limited to 'dot_config/nvim/lua/plugins/runner.lua')
| -rw-r--r-- | dot_config/nvim/lua/plugins/runner.lua | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/dot_config/nvim/lua/plugins/runner.lua b/dot_config/nvim/lua/plugins/runner.lua new file mode 100644 index 0000000..28e4e5f --- /dev/null +++ b/dot_config/nvim/lua/plugins/runner.lua @@ -0,0 +1,77 @@ +local overseer = require("overseer") +overseer.setup({}) +overseer.add_template_hook({ name = ".*" }, function(task_defn, util) + util.add_component(task_defn, { + "open_output", + on_start = "never", + on_complete = "failure", + direction = "vertical", + }) +end) + +vim.keymap.set("n", "<leader>to", function() + overseer.toggle() +end, { desc = "[T]oggle [O]verseer" }) +vim.keymap.set("n", "<leader>ob", function() + overseer.run_task({ name = "just build", disallow_prompt = true }) +end, { desc = "[O]verseer [B]uild" }) +vim.keymap.set("n", "<leader>oB", function() + overseer.run_task({ name = "just build" }) +end, { desc = "[O]verseer [B]uild" }) +vim.keymap.set("n", "<leader>ot", function() + overseer.run_task({ name = "just test", disallow_prompt = true }) +end, { desc = "[O]verseer [J]ust [T]est" }) +vim.keymap.set("n", "<leader>oT", function() + overseer.run_task({ name = "just test" }) +end, { desc = "[O]verseer [J]ust [T]est" }) +vim.keymap.set("n", "<leader>of", function() + overseer.run_task({ + name = "just test", + disallow_prompt = true, + params = { target = vim.fn.expand("%") }, + }) +end, { desc = "[O]verseer test [F]ile" }) +vim.keymap.set("n", "<leader>oF", function() + overseer.run_task({ + name = "just test", + params = { target = vim.fn.expand("%") }, + }) +end, { desc = "[O]verseer test [F]ile" }) +vim.keymap.set("n", "<leader>od", function() + overseer.run_task({ + name = "just debug=true test", + disallow_prompt = true, + params = { target = vim.fn.expand("%") }, + }) +end, { desc = "[O]verseer [d]ebug test file" }) +vim.keymap.set("n", "<leader>oD", function() + overseer.run_task({ + name = "just debug=true test", + params = { target = vim.fn.expand("%") }, + }) +end, { desc = "[O]verseer [D]ebug test file" }) +vim.keymap.set("n", "<leader>oa", function() + overseer.run_task({ + name = "just test_autofix", + disallow_prompt = true, + params = { target = vim.fn.expand("%") }, + }) +end, { desc = "[O]verseer [A]utofix" }) +vim.keymap.set("n", "<leader>or", function() + overseer.run_task() +end, { desc = "[O]verseer [R]un" }) +vim.keymap.set("n", "<leader>os", function() + vim.cmd("OverseerShell") +end, { desc = "[O]verseer [S]hell" }) +vim.keymap.set("n", "<leader>ol", function() + local tasks = overseer.list_tasks({ + sort = function(a, b) + return a.id > b.id + end, + }) + if vim.tbl_isempty(tasks) then + vim.notify("No tasks found", vim.log.levels.WARN) + else + overseer.run_action(tasks[1], "restart") + end +end, { desc = "[O]verseer run [L]ast" }) |
