mirror of
https://github.com/GothenburgBitFactory/timewarrior.git
synced 2025-07-07 20:06:39 +02:00
67 lines
2.4 KiB
Text
67 lines
2.4 KiB
Text
DOM - Document Object Model
|
|
===========================
|
|
Timewarrior needs DOM support, so that it can service a 'get' command and
|
|
provide access to data and rules. Both are important for extensions.
|
|
|
|
|
|
Data to be Accessed
|
|
-------------------
|
|
Here are the data accessible via DOM references:
|
|
|
|
- Configuration
|
|
- Exclusions
|
|
- Command line args in raw form (for rules, not 'get')
|
|
|
|
|
|
Syntax
|
|
------
|
|
All DOM references have this form:
|
|
|
|
dom.<name>
|
|
|
|
|
|
Supported Names
|
|
---------------
|
|
|
|
dom.tag.count --> 14 Count of all tags
|
|
dom.tag.1 --> 'tag' Nth tag used
|
|
|
|
dom.active --> 0/1 Boolean indicator that tracking is active
|
|
dom.active.tag.count --> N Count of active tags
|
|
dom.active.tag.1 --> 'tag' Active Nth tag
|
|
dom.active.start --> YYYY-MM-DDTHH:MM:SS Active start time
|
|
dom.active.duration --> PT1H25M8S Active elapsed
|
|
dom.active.json --> {...} Active interval as JSON
|
|
|
|
dom.tracked.count --> N Count of tracked intervals
|
|
dom.tracked.1.tag.count --> N Tracked Nth, count of tags
|
|
dom.tracked.1.tag.1 --> 'tag' Tracked Nth, Nth tag
|
|
|
|
--- Raw Notes ---
|
|
|
|
Proposed:
|
|
|
|
dom.tag.[1-3] --> 't1', 't2', 't3' First three tags
|
|
dom.tag.[1,2,3] --> 't1', 't2', 't3' First three tags
|
|
dom.tag.* --> 't1', ... 't14' All tags
|
|
|
|
dom.tracked.1.start --> YYYY-MM-DDTHH:MM:SS Tracked Nth start time
|
|
dom.tracked.1.duration --> PT1H25M8S Tracked Nth elapsed
|
|
dom.tracked.1.json --> {...} Tracked Nth interval as JSON
|
|
|
|
dom.tracked.year --> 231 Quantity this year
|
|
dom.tracked.quarter --> 64 Quantity this quarter
|
|
dom.tracked.month --> 21 Quantity this month
|
|
dom.tracked.week --> 6 Quantity this week
|
|
dom.tracked.today --> 2 Quantity today
|
|
|
|
dom.gap.today
|
|
...
|
|
|
|
rc.<name>
|
|
|
|
|
|
- The above does not support totals, as this would turn DOM references into a
|
|
query language. Instead, a 'sum' command could do this. The rules.txt doc
|
|
already mentions built-in functions.
|
|
|