diff options
| author | historia <gravel.justness270@slmail.me> | 2024-08-14 16:11:38 -0400 |
|---|---|---|
| committer | historia <gravel.justness270@slmail.me> | 2024-08-14 16:11:38 -0400 |
| commit | 98607a8a8c206e4ab2d4d47fb60f2d439a9d37d4 (patch) | |
| tree | bbc9dda11e267ef20e82e425c9f599ea6da93716 /lua/simple-denote | |
| parent | 64b58e667d0d255439b055227f1f11012fcc9006 (diff) | |
| download | simple-denote.nvim-98607a8a8c206e4ab2d4d47fb60f2d439a9d37d4.tar.gz | |
fix: renaming commands respect original extension
Diffstat (limited to 'lua/simple-denote')
| -rw-r--r-- | lua/simple-denote/api.lua | 5 | ||||
| -rw-r--r-- | lua/simple-denote/internal.lua | 13 |
2 files changed, 8 insertions, 10 deletions
diff --git a/lua/simple-denote/api.lua b/lua/simple-denote/api.lua index a03c9f2..ded8022 100644 --- a/lua/simple-denote/api.lua +++ b/lua/simple-denote/api.lua @@ -36,10 +36,9 @@ function M.title(options, filename, title) internal.title(options, filename, title) end ----@param options table ---@param filename string|nil ---@param keywords string|nil -function M.keywords(options, filename, keywords) +function M.keywords(filename, keywords) if not filename then filename = vim.fn.expand("%") end @@ -49,7 +48,7 @@ function M.keywords(options, filename, keywords) end) end if not keywords then return end - internal.keyword(options, filename, keywords) + internal.keyword(filename, keywords) end ---@param filename string|nil diff --git a/lua/simple-denote/internal.lua b/lua/simple-denote/internal.lua index 8821689..33593c6 100644 --- a/lua/simple-denote/internal.lua +++ b/lua/simple-denote/internal.lua @@ -73,7 +73,7 @@ end ---@param title string --- Retitles the filename and changes the first heading of the note function M.title(options, filename, title) - local prefix = filename:match("^(.-%d%d%d%d%d%d%d%dT%d%d%d%d%d%d).*") + local prefix, ext = filename:match("^(.-%d%d%d%d%d%d%d%dT%d%d%d%d%d%d).*(%..+)") if not prefix then error("This doesn't look like a Denote filename") end @@ -86,24 +86,23 @@ function M.title(options, filename, title) M.set_heading(options, title) end title = M.format_denote_string(title, "-") - local new_filename = prefix .. sig .. title .. keywords .. "." .. options.ext + local new_filename = prefix .. sig .. title .. keywords .. ext M.replace_file(filename, new_filename) end ----@param options table ---@param filename string ---@param keywords string ---Replaces the __keywords in filename -function M.keyword(options, filename, keywords) - local prefix = filename:match("^(.*)__.*$") +function M.keyword(filename, keywords) + local prefix, ext = filename:match("^(.*)__.*(%..+)$") if not prefix then - prefix = filename:match("^(.*)%..-$") + prefix, ext = filename:match("^(.*)(%..+)$") end if not prefix:match("%d%d%d%d%d%d%d%dT%d%d%d%d%d%d") then error("This doesn't look like a Denote filename") end keywords = M.format_denote_string(keywords, "_") - local new_filename = prefix .. keywords .. "." .. options.ext + local new_filename = prefix .. keywords .. ext M.replace_file(filename, new_filename) end |
