A Neovim plugin designed to help you manage and persist a backlog of pending tasks with a sleek, Telescope-like interface.
The plugin provides a dual-pane UI:
- Main Pane: Displays a table of all your tasks.
- Preview Pane: Shows details or a preview of the currently selected task.
- Interactive Input: A bottom interface for adding new tasks or commenting on existing ones.
backlog.nvim/
├── lua/
│ └── backlog/
│ ├── init.lua -- Plugin entry point and setup
│ ├── ui.lua -- UI logic for table and preview
│ └── data.lua -- Data persistence logic
├── plugin/
│ └── backlog.lua -- Neovim command registration
└── README.md -- Project documentation
Using lazy.nvim:
{
"frankogenrwoth/backlog.nvim",
dependencies = {
-- Add dependencies here if needed (e.g., nvim-lua/plenary.nvim)
},
config = function()
require("backlog").setup({})
end,
}Run the following command to open the backlog interface:
:Backlog- Inside the Backlog UI, press
ito focus the Input Bar. - Type your task description.
- Press
<Enter>to save. The task will be added to today's group.
- Press
ito focus the Input Bar. - Type
c [ID] [Message]. For example:c 1 This task is almost done. - Press
<Enter>to save. - You can see the comments in the Preview Pane as you move your cursor over the tasks in the main window.
- Hover over a task in the Main Window.
- Press
x. The checkbox will toggle between[ ]and[x].
- Press
Rin the Main Window to force a refresh of the UI and recalculate table layouts.
j/k: Move selection (Preview updates automatically).i: Focus Input Bar.x: Toggle task completion.R: Reload UI.qor<Esc>: Close the UI.