Merge pull request 'cambia el reconocimiento por patrones que deberían aceptar los espacios iniciales' (#1) from spaces into main

Reviewed-on: #1
main
brobert 1 year ago
commit 349b0d6832

@ -26,25 +26,53 @@ end
vim.keymap.set("i", "<CR>", press_enter, { desc = "On enter", noremap = true, expr = true })
-- function that checks if the current line starts with the string "- [ ]" or "- [x]" and toggles the x
local function toggle_todo()
-- create a variable called openpattern with a pattern that matches a string that starts with any amount of spaces or tabs followed by "- [ ]"
local openpattern = "^%s*%- %[[ x]%]"
-- create a variable called closepattern with a pattern that matches a string that starts with any amount of spaces or tabs followed by "- [x]"
local closedpattern = "^%s*%- %[[ x]%]"
-- create a variable called titleopenpattern with a pattern that matches a string that starts with "# [ ]"
local titleopenpattern = "^# [ ]"
-- create a variable called titleclosedpattern with a pattern that matches a string that starts with "# [x]"
local titleclosedpattern = "^# [x]"
local line = vim.api.nvim_get_current_line()
if string.sub(line, 1, 5) == "- [ ]" then
line = string.sub(line, 6, -1)
line = "- [x]" .. line
if string.match(line, openpattern) then
line = string.gsub(line, openpattern, "- [x]")
vim.api.nvim_set_current_line(line)
elseif string.sub(line, 1, 5) == "- [x]" then
line = string.sub(line, 6, -1)
line = "- [ ]" .. line
elseif string.match(line, closedpattern) then
line = string.gsub(line, closedpattern, "- [ ]")
vim.api.nvim_set_current_line(line)
elseif string.sub(line, 1, 5) == "# [ ]" then
line = string.sub(line, 6, -1)
line = "# [x]" .. line
elseif string.match(line, titleopenpattern) then
line = string.gsub(line, titleopenpattern, "# [x]")
vim.api.nvim_set_current_line(line)
elseif string.sub(line, 1, 5) == "# [x]" then
line = string.sub(line, 6, -1)
line = "# [ ]" .. line
elseif string.match(line, titleclosedpattern) then
line = string.gsub(line, titleclosedpattern, "# [ ]")
vim.api.nvim_set_current_line(line)
end
-- if string.sub(line, 1, 5) == "- [ ]" then
-- line = string.sub(line, 6, -1)
-- line = "- [x]" .. line
-- vim.api.nvim_set_current_line(line)
-- elseif string.sub(line, 1, 5) == "- [x]" then
-- line = string.sub(line, 6, -1)
-- line = "- [ ]" .. line
-- vim.api.nvim_set_current_line(line)
-- elseif string.sub(line, 1, 5) == "# [ ]" then
-- line = string.sub(line, 6, -1)
-- line = "# [x]" .. line
-- vim.api.nvim_set_current_line(line)
-- elseif string.sub(line, 1, 5) == "# [x]" then
-- line = string.sub(line, 6, -1)
-- line = "# [ ]" .. line
-- vim.api.nvim_set_current_line(line)
-- end
end
vim.keymap.set("n", "<leader>tt", toggle_todo, { desc = "Toggle todo" })

Loading…
Cancel
Save