Namespace the plugin
Allow next and previous
Add tagging
Tools to work with notes and tasks in neovim.
The minimal setup doesn't require any configuration, and sets the default paths and keybins as defined in the sections below.
require('lazy').setup({
'https://git.sr.ht/~rbdr/nota.nvim',
})
This plugin has an optional dependency: fzf-lua.
By default, nota adds keybinds that might not suit your style or conflict with other plugins. You can disable them with the default_keybinds
option.
require('lazy').setup({
{
'git@git.sr.ht:~rbdr/nota.nvim',
opts = {
default_keybinds = false
}
})
Here's the full configuration with its default values:
require('lazy').setup({
{
'git@git.sr.ht:~rbdr/nota.nvim',
opts = {
nota_home = '~/.local/share/nota', -- Root location in which to store all notes
default_keybinds = true, -- Whether or not to set the default keybinds
periodic_locations = {
daily = 'periodic/daily', -- Location to store daily notes, relative to nota_home
weekly = 'periodic/weekly', -- Location to store weekly notes, relative to nota_home
monthly = 'periodic/monthly', -- Location to store monthly notes, relative to nota_home
seasonal = 'periodic/seasonal', -- Location to store seasonal notes, relative to nota_home
yearly = 'periodic/yearly' -- Location to store yearly notes, relative to nota_home
},
templates = {
daily = 'templates/daily.md', -- Template for daily notes, relative to nota_home
weekly = 'templates/weekly.md', -- Template for weekly notes, relative to nota_home
monthly = 'templates/monthly.md', -- Template for monthly notes, relative to nota_home
seasonal = 'templates/seasonal.md', -- Template for seasonal notes, relative to nota_home
yearly = 'templates/yearly.md', -- Template for yearly notes, relative to nota_home
plan = 'templates/plan.md' -- Template for plan notes, relative to nota_home
},
tasks = {
inbox = 'inbox.md', -- Location of the file in which to store newly captured tasks, relative to nota_home
someday = 'someday.md' -- Location of the file in which to store indefinitely deferred tasks, relative to nota_home
},
learning = {
learning_file = 'learning.md', -- Location of the file in which to store learning entries, relative to nota_home
prefix = '%Y-%x-%d: ' -- Prefix to add when capturing learning entries
},
plan = {
archive = 'plans', -- Location of the plan archives.
plan_file = '~/.plan' -- Location of the active plan, the default is what is expected by finger.
}
}
}
})
<leader>od
, :NotaOpenDailyNote
, Opens today's daily note.<leader>ow
, :NotaOpenWeeklyNote
, Opens this week's weekly note.<leader>om
, :NotaOpenMonthlyNote
, Opens this month's monthly note.<leader>os
, :NotaOpenSeasonalNote
, Opens this season's seasonal note.<leader>oy
, :NotaOpenYearlyNote
, Opens this year's yearly note.<leader>on
, :NotaOpenNote
, Opens an arbitrary note. (Requires fzf-lua)<leader>N
, :NotaOpenNextNote
, Opens the next periodic note. (eg. tomorrow or next year)<leader>P
, :NotaOpenPreviousNote
, Opens the previous periodic note. (eg. yesterday or last week)<leader>oa
, :NotaOpenAgenda
, Opens the agenda window with this week's tasks.<leader>oo
, :NotaOpenOpen
, Opens a window that lets you navigate through all open tasks.<leader>oO
, :NotaOpenOpenImportant
, Opens a window that lets you navigate through all open important tasks.<leader>oj
, :NotaOpenJournal
, Opens a window that lets you search completed tasks to find journal entries. (Requires fzf-lua and ripgrep)<leader>t
, :NotaToggleTask
, Toggles completion state of the task under the cursor.<leader>st
, :NotaToggleTaskImportance
, Toggles importance state of the task under the cursor. (- [ ] is a regular task, * [ ] is an important task)<leader>it
, :NotaInsertTask
, Inserts a task at cursor location.<leader>ct
, :NotaCaptureTask
, Captures a new task into the inbox.<leader>Tt
, :NotaTagTask
, Adds a tag to the current task.<leader>Rt
, :NotaRemoveTagTask
, Removes a tag from the current task.<leader>rt
, :NotaRescheduleTaskToday
, Reschedules the task under the cursor to today.<leader>rT
, :NotaRescheduleTaskTomorrow
, Reschedules the task under the cursor to tomorrow.<leader>rs
, :NotaRescheduleTaskSomeday
, Reschedules the task under the cursor to someday.<leader>rr
, :NotaRescheduleTask
, Reschedules the task under the cursor to an arbitrary date.<leader>ol
, :NotaOpenLearning
, Opens the learning file.<leader>cl
, :NotaCaptureLearning
, Captures a new task into the inbox.<leader>op
, :NotaOpenPlan
, Opens the current plan file.<leader>cp
, :NotaCapturePlan
, Captures a new plan and archives the current one.