X-Git-Url: https://git.r.bdr.sh/rbdr/nota.nvim/blobdiff_plain/9e9e89d8556ecafa6b11ab21aa9ffab550f7f3ad..HEAD:/lua/notes.lua?ds=sidebyside diff --git a/lua/notes.lua b/lua/notes.lua deleted file mode 100644 index b23d6df..0000000 --- a/lua/notes.lua +++ /dev/null @@ -1,87 +0,0 @@ -------------------------------------------------------------------------------- --- Tools to deal with notes -------------------------------------------------------------------------------- -local Notes = {} - -local Util = require('util') -local Configuration = require('configuration') -local api = vim.api -------------------------------------------------------------------------------- --- Internal Functions -------------------------------------------------------------------------------- -local function open_or_create_from_template(type, file_path) - - local journal_file = io.open(file_path, 'r') - if not journal_file then - local template_contents = Configuration.load_template(type) - - journal_file = io.open(file_path, 'w') - journal_file:write(template_contents) - journal_file:close() - end - vim.cmd('edit ' .. file_path) -end - -local function open_periodic_note(type, filename) - local file_directory_path = Configuration.path_for(Configuration.configuration.periodic_locations[type]) - - Util.ensure_directory_exists(file_directory_path) - local file_path = Util.join(file_directory_path, filename) - - open_or_create_from_template(type, file_path) -end - -------------------------------------------------------------------------------- --- Public Interface -------------------------------------------------------------------------------- - ---- Opens the daily note -function Notes.open_daily(date) - if not date or date == '' then - date = os.date('%Y-%m-%d') - end - local filename = date .. '.md' - open_periodic_note('daily', filename) -end - ---- Opens the weekly note -function Notes.open_weekly() - local filename = os.date('%Y-w%V') - open_periodic_note('weekly', filename) -end - ---- Opens the monthly note -function Notes.open_monthly() - local filename = os.date('%Y-%m') .. '.md' - open_periodic_note('monthly', filename) -end - ---- Opens the seasonal note -function Notes.open_seasonal() - local year = os.date('%Y') - local month = tonumber(os.date('%m')) - local season = math.ceil(month / 3) - - local filename = year .. '-s' .. season .. '.md' - open_periodic_note('seasonal', filename) -end - ---- Opens the yearly note -function Notes.open_yearly() - local filename = os.date('%Y') .. '.md' - open_periodic_note('yearly', filename) -end - ---- Opens an arbitrary note -function Notes.open() - local success, module = pcall(require, 'fzf-lua') - if success then - local notes_path = Configuration.path_for() - Util.ensure_directory_exists(notes_path) - module.files({ cwd = notes_path }) - else - api.nvim_err_writeln('This feature requires optional dependency fzf-lua') - end -end - -return Notes