about summary refs log tree commit diff
path: root/lua/sketchbook/select_template.lua
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lua/sketchbook/select_template.lua71
1 files changed, 0 insertions, 71 deletions
diff --git a/lua/sketchbook/select_template.lua b/lua/sketchbook/select_template.lua
deleted file mode 100644
index e0c9f7e..0000000
--- a/lua/sketchbook/select_template.lua
+++ /dev/null
@@ -1,71 +0,0 @@
-local M = {}
-
-local templates_dir = vim.g.notes_templates_dir or "~/notes/templates/"
-
-function M.select_template()
-  templates_dir = vim.fn.expand(templates_dir)
-  local templates = vim.fn.readdir(templates_dir, function(name)
-    return name:match "%.md$"
-  end)
-
-  if vim.tbl_isempty(templates) then
-    M.create_note_from_template(nil)
-  else
-    local template_files = {}
-    for _, template in ipairs(templates) do
-      table.insert(template_files, templates_dir .. template)
-    end
-
-    require("telescope.pickers")
-      .new({}, {
-        prompt_title = "Select Template",
-        finder = require("telescope.finders").new_table {
-          results = template_files,
-          entry_maker = function(entry)
-            return {
-              value = entry,
-              display = vim.fn.fnamemodify(entry, ":t"),
-              ordinal = entry,
-            }
-          end,
-        },
-        sorter = require("telescope.config").values.generic_sorter {},
-        attach_mappings = function(prompt_bufnr, map)
-          local actions = require "telescope.actions"
-          local action_state = require "telescope.actions.state"
-
-          actions.select_default:replace(function()
-            actions.close(prompt_bufnr)
-            local selection = action_state.get_selected_entry()
-            M.create_note_from_template(selection.value)
-          end)
-
-          return true
-        end,
-      })
-      :find()
-  end
-end
-
-function M.create_note_from_template(template_path)
-  local notes_dir = vim.g.notes_directory or "~/notes/"
-  local filename = os.date "%Y-%m-%d_%H-%M-%S" .. ".md"
-  local filepath = vim.fn.expand(notes_dir) .. filename
-  vim.cmd("edit " .. filepath)
-  if template_path then
-    vim.cmd("0r " .. template_path)
-  else
-    local title = "Title " .. os.date "%Y-%m-%d %H:%M:%S"
-    local template = {
-      "# " .. title,
-      "",
-    }
-    local file = io.open(filepath, "w")
-    for _, line in ipairs(template) do
-      file:write(line .. "\n")
-    end
-    file:close()
-  end
-end
-
-return M