docs: add icons config, PendingTab recipes, and demo infrastructure

Problem: icon customization and auto-start workflow are undocumented;
no demo asset exists for the README.

Solution: document pending.Icons in vimdoc with nerd font and ASCII
recipes, add PendingTab to commands and mappings, add open-on-startup
recipe, add demo-init.lua and demo.tape for VHS screenshot generation,
add assets/ directory, add README icons section and demo placeholder.
This commit is contained in:
Barrett Ruth 2026-02-26 18:23:50 -05:00
parent 9fc24f5239
commit cd96a269a4
6 changed files with 188 additions and 1 deletions

View file

@ -356,6 +356,10 @@ COMMANDS *pending-commands*
Equivalent to the `U` buffer-local key (see |pending-mappings|). Up to 20
levels of undo are persisted across sessions.
*:PendingTab*
:PendingTab
Open the task buffer in a new tab.
==============================================================================
MAPPINGS *pending-mappings*
@ -494,6 +498,9 @@ All motions support count: `3]]` jumps three headers forward. `]]` and
to the current buffer's file and the cursor's line number.
See |pending-file-token|.
<Plug>(pending-tab) *<Plug>(pending-tab)*
Open the task buffer in a new tab. See |:PendingTab|.
Example configuration: >lua
vim.keymap.set('n', '<leader>t', '<Plug>(pending-open)')
vim.keymap.set('n', '<leader>T', '<Plug>(pending-toggle)')
@ -679,6 +686,16 @@ Fields: ~
automatically. New configs should use `sync.gcal`
instead. See |pending.GcalConfig|.
{icons} (table) *pending.Icons*
Icon characters displayed in the buffer. Fields:
{pending} Uncompleted task icon. Default: '○'
{done} Completed task icon. Default: '✓'
{priority} Priority task icon. Default: '●'
{header} Category header prefix. Default: '▸'
{due} Due date prefix. Default: '·'
{recur} Recurrence prefix. Default: '↺'
{category} Category label prefix. Default: '#'
==============================================================================
LUA API *pending-api*
@ -860,6 +877,41 @@ directly, or disable `a_category` in `keymaps` and handle it via a
`vim.b.miniai_config` entry that returns a linewise region if mini.ai's
spec allows it in your version.
Nerd font icons: >lua
vim.g.pending = {
icons = {
pending = '',
done = '',
priority = '',
header = '',
due = '',
recur = '󰁯',
category = '',
},
}
<
ASCII fallback icons: >lua
vim.g.pending = {
icons = {
pending = '-',
done = 'x',
priority = '!',
header = '>',
due = '@',
recur = '~',
category = '+',
},
}
<
Open tasks in a new tab on startup: >lua
vim.api.nvim_create_autocmd('VimEnter', {
callback = function()
vim.cmd.PendingTab()
end,
})
<
==============================================================================
GOOGLE CALENDAR *pending-gcal*