diff --git a/.config/nvim/lua/config/autocmds.lua b/.config/nvim/lua/config/autocmds.lua index 77773c62..9919db5d 100644 --- a/.config/nvim/lua/config/autocmds.lua +++ b/.config/nvim/lua/config/autocmds.lua @@ -47,7 +47,17 @@ vim.api.nvim_create_autocmd({ "FileType" }, { buffer = 0, command = "silent! write", }) - vim.keymap.set("i", "", "MDListItemBelow", { desc = "Continue List", silent = true, remap = true }) + -- TODO: fix the not being sent\ recognize other types too? + vim.keymap.set("i", "", function() + local md_utils = require("md-utils") + local isList = md_utils.isCursorInList() + if isList then + print("Markdown list!") + else + print("Not markdown list") + end + vim.api.nvim_input("") + end, { desc = "Continue List", silent = true, remap = true }) vim.opt_local.wrap = true vim.opt_local.spell = true -- local secondary = "#379393" diff --git a/.config/nvim/lua/md-utils.lua b/.config/nvim/lua/md-utils.lua index e69de29b..b043b362 100644 --- a/.config/nvim/lua/md-utils.lua +++ b/.config/nvim/lua/md-utils.lua @@ -0,0 +1,17 @@ +local M = {} + +local ts_utils = require("nvim-treesitter.ts_utils") + +M.isCursorInList = function() + local node = ts_utils.get_node_at_cursor() + while node do + -- Check if node is a list item + if node:type() == "list_item" then + return true + end + node = node:parent() + end + return false +end + +return M