Implement #+BEGIN: clocktable dynamic block
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
Research direction
Start by tracing the existing agenda clock-report logic and scope resolution through org_agenda_files. Define how clocktable blocks are recognized and updated, then verify that :scope file and :scope subtree produce rendered tables in place from the existing clock data.
Written by the indexing model from the issue text.
Description
Does this feature exist in Emacs orgmode core?
Yes, Here’s the official Emacs Org Mode documentation for the clocktable dynamic block.
Orgmode link (https://orgmode.org/manual/The-clock-table.html)
This page explains:
- How to insert and update #+BEGIN: clocktable … #+END: blocks
- How clock tables automatically summarize clocked time by headline
- How to set options like :scope file, :maxlevel, :block, etc.
clocktable is a core feature of Emacs Org, not an add-on. It’s the bridge between raw CLOCK:LOGS and derived, in-file analytics. Right now, nvim-orgmode already has all the primitives components required for this.
- CLOCK entries with LOGBOOK support
- Accurate duration computation
- Agenda clock reports via
<space>oaR - Formatting via
gqgq - Scope resolution via
org_agenda_files
What’s missing is the Glue the dynamic block evaluator that lets a file contain a projection of its own data.
In Emacs Org:
#+BEGIN: clocktable :scope file
#+END:
generates an in-file table by:
- Scanning CLOCK entries in the requested scope (file, subtree, etc.)
- Aggregating by headline
- Computing totals
- Rendering a table in place
raw facts → derived views in the same document by this clocktable feature.
In nvim-orgmode, the same data already exists and is already aggregated in Agenda. The engine that computes clock reports exists. The missing piece is exposing that engine as a dynamic block renderer inside files.
Proposed minimal MVP:
- Recognize blocks of the form:
#+BEGIN: clocktable :scope file
#+END:
- Add a command (e.g.
:Org CreateDynamicClockTableor:Org UpdateDynamicClockTable) that parses the block. - Calls the existing clock-report logic.
- Replaces the block body with a rendered table
Even a first version that supports only:
:scope file- `:scope subtree'
would unlock a major part of Org’s workflow.
This is not a “nice-to-have”.
It is one of Org’s core features, and nvim-orgmode already has 90% of the machinery. Implementing this would complete the loop between logging and reflection inside the same document.
- Dominant language
- Lua
- Stars
- 3.9k
- Forks
- 192
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 12
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from nvim-orgmode/orgmode
-
Difficulty 1/5 Under an hour Newbie friendliness 73/100
nvim-orgmode/orgmode#1193 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
nvim-orgmode/orgmode#1175 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 92/100
nvim-orgmode/orgmode#1173 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 4/5 3-5 days Newbie friendliness 50/100
nvim-orgmode/orgmode#1172 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 52/100
nvim-orgmode/orgmode#1170 ·
Maintainers usually reply within 1 day
All issues in nvim-orgmode/orgmode
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Addon Conflict Bug Forever Module - Map / Minimap
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Zenmap
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 3 days
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
PathOfBuildingCommunity/PathOfBuilding#10395 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 78/100