about summary refs log tree commit diff
path: root/update_index.lua
diff options
context:
space:
mode:
authoriurii plugatarov <[email protected]>2024-08-02 23:01:35 +0200
committeriurii plugatarov <[email protected]>2024-08-02 23:01:35 +0200
commitf4a1319352d466308cd85eb1263aef9fd2c54293 (patch)
tree335eac92b9f9f47cec3d9bf60d7699d9fa8d66d7 /update_index.lua
downloadsketchbook.nvim-f4a1319352d466308cd85eb1263aef9fd2c54293.tar.gz
init
Diffstat (limited to 'update_index.lua')
-rw-r--r--update_index.lua22
1 files changed, 22 insertions, 0 deletions
diff --git a/update_index.lua b/update_index.lua
new file mode 100644
index 0000000..1a6044e
--- /dev/null
+++ b/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