No description
Problem: `on_bytes` inserts bare `{ type = 'task' }` meta entries with
no `status` field for any new lines (paste, undo, native edits). When
meta positions also shift incorrectly (e.g. `P` paste above), existing
meta with the wrong status ends up on the wrong row. This causes done
tasks to lose their `PendingDone` highlight and pending tasks to appear
greyed out.
Solution: always re-infer `status` from the actual buffer line text for
dirty task rows before applying extmarks. The checkbox character (`[x]`,
`[>]`, `[=]`, `[ ]`) is the source of truth, with fallback to the
existing meta status if the line doesn't match a task pattern.
|
||
|---|---|---|
| .github | ||
| doc | ||
| lua/pending | ||
| plugin | ||
| scripts | ||
| spec | ||
| syntax | ||
| .busted | ||
| .editorconfig | ||
| .gitignore | ||
| .luarc.json | ||
| .pre-commit-config.yaml | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| pending.nvim-scm-1.rockspec | ||
| README.md | ||
| selene.toml | ||
| stylua.toml | ||
| vim.yaml | ||
pending.nvim
Edit tasks like text.
Oil-like task management for todos in Neovim, inspired by oil.nvim and vim-fugitive
https://github.com/user-attachments/assets/f3898ecb-ec95-43fe-a71f-9c9f49628ba9
Requirements
- Neovim 0.10+
- (Optionally)
curlfor 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