mirror of
https://github.com/GothenburgBitFactory/timewarrior.git
synced 2025-06-26 10:54:28 +02:00
56 lines
2 KiB
Text
56 lines
2 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>
|
|
|
|
|
|
--- Raw Notes ---
|
|
|
|
- Possible DOM references to support:
|
|
|
|
dom.active --> 0/1 Boolean indicator that tracking is active
|
|
dom.active.tags --> 2 Active tag count
|
|
dom.active.tag.1 --> 'tag' Active 1st tag
|
|
dom.active.start --> YYYYMMDDTHHMMSSZ Active start time
|
|
dom.active.duration --> PT1H25M8S Active elapsed
|
|
|
|
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.tracked.today.1 --> {...} 1st interval today JSON
|
|
dom.tracked.today.1.start --> YYYYMMDDTHHMMSSZ 1st interval today start
|
|
dom.tracked.today.1.end --> YYYYMMDDTHHMMSSZ 1st interval today end
|
|
dom.tracked.today.1.tags --> 1 1st interval today tag count
|
|
dom.tracked.today.1.tag.1 --> 'tag1' 1st interval today tag
|
|
dom.tracked.today.1.duration --> P1H25M8S 1st interval today duration
|
|
|
|
dom.gap.today
|
|
...
|
|
|
|
rc.<name>
|
|
|
|
- The above needs to support overlapping tags.
|
|
|
|
- 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.
|
|
|
|
|