diff options
| author | Kyren223 <contact@kyren.codes> | 2026-08-05 03:19:05 +0300 |
|---|---|---|
| committer | Kyren223 <contact@kyren.codes> | 2026-08-05 03:19:05 +0300 |
| commit | 615433f5772748d8beaa4eef61082ac39c7c5c3b (patch) | |
| tree | 66b4b0d8b4398ab730730f5ace4bec904f2e6569 /.config/nvim/lua/keymaps.lua | |
| parent | 0e25e3f5d9c1ee4592137e7b1f07990929f3fd4f (diff) | |
Refactor compile/task system thing to be more flexible, can now define
any number of tasks instead of just hardcoding build/run/test
Diffstat (limited to '.config/nvim/lua/keymaps.lua')
| -rw-r--r-- | .config/nvim/lua/keymaps.lua | 38 |
1 files changed, 11 insertions, 27 deletions
diff --git a/.config/nvim/lua/keymaps.lua b/.config/nvim/lua/keymaps.lua index a5c1aad..20d977d 100644 --- a/.config/nvim/lua/keymaps.lua +++ b/.config/nvim/lua/keymaps.lua @@ -204,36 +204,20 @@ vim.api.nvim_create_autocmd('LspAttach', { end, }) -local compile = function() - if vim.g.project_compile_cmd then - Compile_project(vim.g.project_compile_cmd) - -- vim.notify(vim.g.project_compile_cmd) - else - vim.notify('vim.g.project_compile_cmd is not set', 'warn') - end -end -local run = function() - if vim.g.project_run_cmd then - Compile_project(vim.g.project_run_cmd) - -- vim.notify(vim.g.project_run_cmd) - else - vim.notify('vim.g.project_run_cmd is not set', 'warn') - end -end -local test = function() - if vim.g.project_test_cmd then - Compile_project(vim.g.project_test_cmd) - -- vim.notify(vim.g.project_test_cmd) - else - vim.notify('vim.g.project_test_cmd is not set', 'warn') +function RunTask(task_name) + return function() + local task = vim.g.workspace_tasks[task_name] + if task and task.cmd then + RunCommand(task.cmd) + else + vim.notify('either ' .. task_name .. "or vim.g.workspace_tasks[task_name].cmd don't exist", 'warn') + end end end -vim.keymap.set('n', '<A-m>', compile, { desc = 'Idk? lol' }) -vim.keymap.set('n', '<A-c>', compile, { desc = '[C]ompile Project' }) -vim.keymap.set('n', '<A-b>', compile, { desc = '[B]uild Project' }) -vim.keymap.set('n', '<A-r>', run, { desc = '[R]un Project' }) -vim.keymap.set('n', '<A-t>', test, { desc = '[T]est Project' }) +vim.keymap.set('n', '<A-b>', RunTask('build'), { desc = '[B]uild Project' }) +vim.keymap.set('n', '<A-r>', RunTask('run'), { desc = '[R]un Project' }) +vim.keymap.set('n', '<A-t>', RunTask('test'), { desc = '[T]est Project' }) vim.keymap.set('n', '<A-s>', function() Run_nvim_lua() |
