diff --git a/lua/todoer/init.lua b/lua/todoer/init.lua index 78687f5..f73fc8d 100644 --- a/lua/todoer/init.lua +++ b/lua/todoer/init.lua @@ -118,15 +118,24 @@ local function remove_todo() end end --- Set up the keymaps (for now, this happens immediately on require) -vim.keymap.set("n", "t", function() end, { desc = "+TODOs" }) -vim.keymap.set("i", "", press_enter, { desc = "On enter", noremap = true, expr = true }) -vim.keymap.set("i", "", press_tab, { desc = "On tab", noremap = true, expr = true }) -vim.keymap.set("i", "S-Tab", press_shift_tab, { desc = "On shift tab", noremap = true, expr = true }) -vim.keymap.set("n", "tt", toggle_todo, { desc = "Toggle TODO" }) -vim.keymap.set("n", "ta", add_todo, { desc = "Add TODO" }) -vim.keymap.set("n", "td", remove_todo, { desc = "Remove TODO" }) +-- Setup function +-- This function will be called by the user to configure and activate the plugin +-- For now, it just sets up the default keymaps +function M.setup(opts) + -- opts is a placeholder for future configuration options + opts = opts or {} + + -- Set up the keymaps + vim.keymap.set("n", "t", function() end, { desc = "+TODOs" }) + vim.keymap.set("i", "", press_enter, { desc = "On enter", noremap = true, expr = true }) + vim.keymap.set("i", "", press_tab, { desc = "On tab", noremap = true, expr = true }) + vim.keymap.set("i", "S-Tab", press_shift_tab, { desc = "On shift tab", noremap = true, expr = true }) + vim.keymap.set("n", "tt", toggle_todo, { desc = "Toggle TODO" }) + vim.keymap.set("n", "ta", add_todo, { desc = "Add TODO" }) + vim.keymap.set("n", "td", remove_todo, { desc = "Remove TODO" }) + + print("Todoer setup complete!") -- Added a print statement for confirmation +end -- Return the module table return M - diff --git a/plugin/todoer.lua b/plugin/todoer.lua index 3c96b27..0073d57 100644 --- a/plugin/todoer.lua +++ b/plugin/todoer.lua @@ -1,5 +1,3 @@ --- Load the main module. --- This will execute the code inside lua/todoer/init.lua immediately, --- including setting the keymaps. -require('todoer') - +-- Load the main module and call its setup function. +-- This will execute the setup logic inside lua/todoer/init.lua immediately. +require('todoer').setup()