No description
Find a file
Barrett Ruth a24521ee4e
feat(filter): wire F key and <Plug>(pending-filter) mapping (#53)
* refactor(config): remove legacy gcal top-level config key

Problem: the gcal migration shim silently accepted vim.g.pending = { gcal
= {...} } and copied it to sync.gcal, adding complexity and a deprecated
API surface.

Solution: remove the migration block in config.get(), drop the cfg.gcal
fallback in gcal_config(), delete the two migration tests, and clean up
the vimdoc references. Callers must now use sync.gcal directly.

* ci: fix

* fix(spec): remove duplicate buffer require in complete_spec

* docs(pending): reorganize vimdoc and fix incorrect defaults

Problem: sections were out of logical order — inline metadata appeared
before commands, GCal before its own backend framework, store resolution
duplicated and buried after health check. Two defaults were wrong:
default_category documented as 'Inbox' (should be 'Todo') and the gcal
calendar example used 'Tasks' (should be 'Pendings').

Solution: reorder all 21 sections into onboarding-first flow, add a
CONTENTS table with hyperlinks, fix both incorrect defaults in every
location they appeared, and remove the duplicate STORE RESOLUTION
section.

* feat(filter): wire F key and <Plug>(pending-filter) mapping

Problem: the filter predicate logic, diff guard, _on_write handling,
:Pending filter command, and filter_spec were already implemented, but
there was no buffer-local key to invoke filtering interactively.

Solution: add filter = 'F' to keymaps config and defaults, wire the
filter action in _setup_buf_mappings via vim.ui.input, add
<Plug>(pending-filter), and update the vimdoc (mappings table, Plug
section, config example, and FILTERS section).
2026-02-26 23:25:39 -05:00
.github doc: minify readme (#24) 2026-02-25 09:40:06 -05:00
assets feat(customization): icons config, PendingTab, and demo infrastructure (#46) 2026-02-26 19:20:29 -05:00
doc feat(filter): wire F key and <Plug>(pending-filter) mapping (#53) 2026-02-26 23:25:39 -05:00
lua/pending feat(filter): wire F key and <Plug>(pending-filter) mapping (#53) 2026-02-26 23:25:39 -05:00
plugin feat(filter): wire F key and <Plug>(pending-filter) mapping (#53) 2026-02-26 23:25:39 -05:00
scripts feat(customization): icons config, PendingTab, and demo infrastructure (#46) 2026-02-26 19:20:29 -05:00
spec refactor(config): remove legacy gcal top-level config key (#51) 2026-02-26 22:53:51 -05:00
syntax refactor: adopt markdown-style checkbox buffer format (#20) 2026-02-24 23:21:55 -05:00
.busted build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00
.editorconfig build: initial repo scaffold 2026-02-24 15:08:35 -05:00
.gitignore build: initial repo scaffold 2026-02-24 15:08:35 -05:00
.luarc.json build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00
.pre-commit-config.yaml ci: format 2026-02-24 15:17:24 -05:00
flake.lock build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00
flake.nix build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00
LICENSE build: initial repo scaffold 2026-02-24 15:08:35 -05:00
pending.nvim-scm-1.rockspec feat: rename 2026-02-24 15:21:44 -05:00
README.md feat(customization): icons config, PendingTab, and demo infrastructure (#46) 2026-02-26 19:20:29 -05:00
selene.toml build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00
stylua.toml build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00
vim.yaml build: add tooling and dev environment configs 2026-02-24 15:08:44 -05:00

pending.nvim

Edit tasks like text. :w saves them.

demo

Requirements

  • Neovim 0.10+
  • (Optionally) curl and openssl for Google Calendar and Google Task sync

Installation

Install with your package manager of choice or via luarocks:

luarocks install pending.nvim

Documentation

:help pending.nvim

Icons

pending.nvim renders task status and metadata using configurable icon characters. The defaults use plain unicode (no nerd font required):

vim.g.pending = {
  icons = {
    pending = '○', done = '✓', priority = '●',
    header = '▸', due = '·', recur = '↺', category = '#',
  },
}

See :help pending.Icons for nerd font examples.

Acknowledgements