From 2834cf3dea030f522273d1321843788b17c366f6 Mon Sep 17 00:00:00 2001 From: Kirill Morozov Date: Tue, 5 May 2026 15:12:28 +0200 Subject: [PATCH 1/2] feat: add agent note mappings for vim and neovim --- neovim/plugin/agents.lua | 32 ++++++++++++++++++++++++++++++++ vim/plugin/agents.vim | 16 ++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 neovim/plugin/agents.lua create mode 100644 vim/plugin/agents.vim diff --git a/neovim/plugin/agents.lua b/neovim/plugin/agents.lua new file mode 100644 index 00000000..9c54480c --- /dev/null +++ b/neovim/plugin/agents.lua @@ -0,0 +1,32 @@ +local function reset_agent_notes() + vim.fn.setreg("t", "TODO(agent): ") + vim.fn.setreg("f", "FIXME(agent): ") +end + +reset_agent_notes() + +vim.api.nvim_create_user_command("AgentNotesReset", reset_agent_notes, { + desc = "Reset agent note registers", +}) + +-- Insert template above the current line, then comment with existing `gcc`. +vim.keymap.set("n", "ct", "OtgccA", { + desc = "Insert TODO(agent) comment above", + remap = true, + silent = true, +}) +vim.keymap.set("n", "cf", "OfgccA", { + desc = "Insert FIXME(agent) comment above", + remap = true, + silent = true, +}) + +-- Raw template insertion without commenting. +vim.keymap.set("n", "cT", '"tp', { + desc = "Insert TODO(agent) template", + silent = true, +}) +vim.keymap.set("n", "cF", '"fp', { + desc = "Insert FIXME(agent) template", + silent = true, +}) diff --git a/vim/plugin/agents.vim b/vim/plugin/agents.vim new file mode 100644 index 00000000..51be959c --- /dev/null +++ b/vim/plugin/agents.vim @@ -0,0 +1,16 @@ +function! s:ResetAgentNotes() abort + call setreg('t', 'TODO(agent): ') + call setreg('f', 'FIXME(agent): ') +endfunction + +call s:ResetAgentNotes() + +command! AgentNotesReset call ResetAgentNotes() + +" Insert template above the current line, then comment with existing `gcc`. +nmap ct OtgccA +nmap cf OfgccA + +" Raw template insertion without commenting. +nnoremap cT "tp +nnoremap cF "fp From 987537cced10731187bc182e7e5f6025aa9f0737 Mon Sep 17 00:00:00 2001 From: Kirill Morozov Date: Tue, 5 May 2026 16:06:25 +0200 Subject: [PATCH 2/2] refactor: simplify the plugin To reduce maintenance. --- neovim/plugin/agents.lua | 44 +++++++++++++++++----------------------- vim/plugin/agents.vim | 14 +++++-------- 2 files changed, 24 insertions(+), 34 deletions(-) diff --git a/neovim/plugin/agents.lua b/neovim/plugin/agents.lua index 9c54480c..4645b106 100644 --- a/neovim/plugin/agents.lua +++ b/neovim/plugin/agents.lua @@ -1,32 +1,26 @@ -local function reset_agent_notes() +local function reset_registers() vim.fn.setreg("t", "TODO(agent): ") vim.fn.setreg("f", "FIXME(agent): ") end -reset_agent_notes() +reset_registers() -vim.api.nvim_create_user_command("AgentNotesReset", reset_agent_notes, { - desc = "Reset agent note registers", -}) - --- Insert template above the current line, then comment with existing `gcc`. -vim.keymap.set("n", "ct", "OtgccA", { - desc = "Insert TODO(agent) comment above", - remap = true, - silent = true, -}) -vim.keymap.set("n", "cf", "OfgccA", { - desc = "Insert FIXME(agent) comment above", - remap = true, - silent = true, -}) +vim.api.nvim_create_user_command( + "AgentCommentsReset", + reset_registers, + { desc = "Reset agent comment registers" } +) -- Raw template insertion without commenting. -vim.keymap.set("n", "cT", '"tp', { - desc = "Insert TODO(agent) template", - silent = true, -}) -vim.keymap.set("n", "cF", '"fp', { - desc = "Insert FIXME(agent) template", - silent = true, -}) +vim.keymap.set( + "n", + "ct", + '"tp', + { desc = "Insert TODO(agent) template", silent = true } +) +vim.keymap.set( + "n", + "cf", + '"fp', + { desc = "Insert FIXME(agent) template", silent = true } +) diff --git a/vim/plugin/agents.vim b/vim/plugin/agents.vim index 51be959c..6dc2f29a 100644 --- a/vim/plugin/agents.vim +++ b/vim/plugin/agents.vim @@ -1,16 +1,12 @@ -function! s:ResetAgentNotes() abort +function! s:ResetRegisters() abort call setreg('t', 'TODO(agent): ') call setreg('f', 'FIXME(agent): ') endfunction -call s:ResetAgentNotes() +call s:ResetRegisters() -command! AgentNotesReset call ResetAgentNotes() - -" Insert template above the current line, then comment with existing `gcc`. -nmap ct OtgccA -nmap cf OfgccA +command! AgentCommentsReset call ResetRegisters() " Raw template insertion without commenting. -nnoremap cT "tp -nnoremap cF "fp +nnoremap ct "tp +nnoremap cf "fp