From 516bc5e46c8e8a4f63df0a21bf7efbe835bdec2a Mon Sep 17 00:00:00 2001 From: workhorse Date: Mon, 3 Jun 2024 16:48:36 -0400 Subject: Fixed heading config --- lua/simple-denote/api.lua | 57 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 lua/simple-denote/api.lua (limited to 'lua/simple-denote/api.lua') diff --git a/lua/simple-denote/api.lua b/lua/simple-denote/api.lua new file mode 100644 index 0000000..f835b7b --- /dev/null +++ b/lua/simple-denote/api.lua @@ -0,0 +1,57 @@ +local M = {} + +local internal = require("simple-denote.internal") +local util = require("simple-denote.util") + +---@param options table +---@param name string|nil +---@param tags table|nil +function M.note(options, name, tags) + if not name then + vim.ui.input({ prompt = "Note title: " }, function(input) + name = input + end) + end + if not tags then + vim.ui.input({ prompt = "Tags: " }, function(input) + if input ~= "" and input then + tags = util.splitspace(input) + end + end) + end + internal.note(options, name, tags) +end + +---@param options table +---@param filename string|nil +---@param new_title string|nil +function M.retitle(options, filename, new_title) + if not filename then + filename = vim.fn.expand("%") + end + if not new_title then + vim.ui.input({ prompt = "New title: " }, function(input) + new_title = input + end) + end + internal.retitle(options, filename, new_title) +end + +---@param options table +---@param filename string|nil +---@param new_tags table|nil +function M.retag(options, filename, new_tags) + if not filename then + filename = vim.fn.expand("%") + end + if not new_tags then + vim.ui.input({ prompt = "New tags: " }, function(input) + if input ~= "" and input then + new_tags = util.splitspace(input) + end + end) + end + internal.retag(options, filename, new_tags) +end + +return M -- cgit v1.2.3