diff options
Diffstat (limited to 'lua/update_index.lua')
-rw-r--r-- | lua/update_index.lua | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lua/update_index.lua b/lua/update_index.lua new file mode 100644 index 0000000..1a6044e --- /dev/null +++ b/lua/update_index.lua @@ -0,0 +1,22 @@ +local M = {} + +function M.update_index() + local notes_dir = vim.g.notes_directory or "~/notes/" + notes_dir = vim.fn.expand(notes_dir) + local index_file = notes_dir .. "index.md" + local notes = vim.fn.globpath(notes_dir, "*.md", false, true) + local content = { "# Index", "" } + for _, note in ipairs(notes) do + if vim.fn.fnamemodify(note, ":t") ~= "index.md" then + table.insert(content, "- [" .. vim.fn.fnamemodify(note, ":t:r") .. "](" .. note .. ")") + end + end + local file = io.open(index_file, "w") + for _, line in ipairs(content) do + file:write(line .. "\n") + end + file:close() + print "Index updated" +end + +return M |