From 0fa2b270b4aae13352905de55226b1fd74ffcc99 Mon Sep 17 00:00:00 2001 From: contrapunctus Date: Thu, 2 Dec 2021 17:52:16 +0530 Subject: [PATCH] doc(TODO): mention in-progress branch --- TODO.org | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/TODO.org b/TODO.org index b73834f..c88695b 100644 --- a/TODO.org +++ b/TODO.org @@ -707,7 +707,7 @@ Midnight-spanning intervals are split in the hash table when the file is read, b * Duplication - accessing the latest-record :code: Many functions use the latest record. A =(chronometrist-with-latest-record var &rest body)= might help... -* STARTED Plist-group backend :feature:optimization: +* STARTED Plist-group backend [70%] :feature:optimization: See branch =grouped-plist-format= 1. [X] Migrate backend code to use CLOS 2. [-] Implement plist-group backend code @@ -722,7 +722,9 @@ See branch =grouped-plist-format= 11. [X] create new tagged list if required when clocking in 12. [X] split midnight-spanning intervals when clocking out 13. [X] interactive backend-switching command with completion; reset backend state after switching to account for changes made to the file in the meantime -14. [ ] (maybe) handle existing (in-file) split tasks. Currently, if an interval is split, commands such as =chronometrist-key-values-unified-prompt= operate on the second split interval, but not the first. Instead, plist-group methods for =chronometrist-replace-last= and =chronometrist-remove-last= could check if the last interval is split, and operate on both of them. (=chronometrist-insert= can already insert) +14. [ ] (maybe) handle existing (in-file) split tasks. Currently, if an interval is split, commands such as =chronometrist-key-values-unified-prompt= operate on the second split interval, but not the first. Instead, plist-group methods for =chronometrist-replace-last= and =chronometrist-remove-last= could check if the last interval is split, and operate on both of them. (=chronometrist-insert= already splits plists when inserting.) + * Don't modify =chronometrist-latest-record=; code using it generally only wants the latter half of a split plist. + * See branch =plist-group-handle-split-plists= Optional 1. define generic backend protocol for key-values package @@ -759,7 +761,7 @@ protocol implementation progress 3. =events-to-durations= * Use ISO date for functions operating on dates :time:format: -* customizable task list :feature: +* STARTED customizable task list :feature: 1. Interactive, buffer-local modification of task list, with completion (=completing-read-multiple=) 2. Adding a task? We can modify the task list, but how to persist it? * Extend time range prompt :feature: