Tasks for taskfinder
#project #rust #term pri@2
For those seeing this on the repo: This is a bit of an experiment to see how hard-linking a file from my zettelkasten-like system (where I keep all of my notes and tasks and run taskfinder from) to the project repo works out. Ignore the bit at the bottom - it's a backlink to the main project file. Otherwise, you can see what I'm thinking about doing in the future.
TODO
- [ ] allow user to ignore certain tags in count
- this will accomplish what I was thinking about in <https://codeberg.org/kdwarn/taskfinder/issues/32> with minimum change to how the app is used (though perhaps a decent amount of change in the code). Easiest/most performant way to do this on the counting side may be to add a field to Task, "contains_ignored_tag" or
- [ ] more robust tag/search filter
- not, and, or
- currently, excluding by tag ("!tagname" in the dialog) works in both file mode and tasks mode, but expanding this to the other ways will probably require a different way to tackle it;
- write tests for this
- [ ] fix date in completed task view
- seems it is not using current date if there's been a date change since the app was started
- [ ] fix sorting of files by priority
- the priority of a task set is (incorrectly) being used as the file's priority when it is higher than the file even when all the incomplete tasks of that set have a lower priority. That is, if you have file with no priority, a task set within it with priority 1, and only one incomplete task within that task set (of priority > 1), the file will be sorted in the list of files as if it had a priority of 1. (If there were incomplete tasks with priority 1 within the set, this behavior would be expected.)
- this may be a result of completed task priorities?
- should make a test for this. I've found similar sorting bugs. Should protect against regression.
- [ ] refresh interface when date has changed
- though I recently got the log to update (though see task about the bug with it), the dates aren't updated unless you change the view (e.g. "today" will not changed to "yesterday")
- [ ] add more tests
- particularly on due/completed dates at task-set level and the inheritance of that in tasks
- [ ] watch multiple directories
- optionally put under separate tabs. <https://ratatui.rs/examples/widgets/tabs/>
- [x] in log mode (table), add a navigation control to go down/up one month (or maybe to beginning/end of month) completed:2025-12-21
- 30 rows up/down
- [ ] handle all expects and unwraps
- except ones where they are absolutely ok - in this case, add comments
- [x] (hard) link a tasks file (with tasks only) from here to project repo as way to keep users informed of intended changes completed:2025-04-29
- [x] show number of tasks due/completed within a week in Tasks mode completed:2025-04-30
- [x] remove leading characters that identifies a task (all the variations of []) of the task text in Tasks mode completed:2025-05-12
- [x] search for tasks in Tasks mode completed:2025-05-14
- [x] add a tips section? completed:2025-05-24
- [x] filter for recurring/non-recurring tasks in Tasks mode completed:2025-05-29
- [x] tag at the taskset/task level completed:2025-06-16
- [x] slow blink overdue dates in files mode, and allow user to turn it off completed:2025-06-17
- [x] bad dates can make the program panic. Set them to very old date. completed:2025-07-01
- [x] add a way to manually order tasks completed:2025-07-05
- [x] fix task counting - in log and files mode, wasn't going to individual task level for priorities completed:2025-07-06
- [x] include a way to make a task or taskset no priority - override higher level completed:2025-07-06
- [x] fix filtering by priority in Files mode (doesn't filter at the task level) completed:2025-07-07
- [x] fix location of "no tasks" in Tasks mode - put in third column (task name); getting cut off in 2nd (order) completed:2025-07-08
- [x] log tasks in file each new day the program is running completed:2025-07-12
- [x] fix bug where previous date in log will be duplicated after date change (e.g. at Midnight) completed:2025-09-13
- this doesn't seem to happen all the time; not sure exact circumstances
- [x] improve error message when no task found - include the directory it's looking in completed:2025-09-13
- brought up by user who thought running it in a particular directory would search that directory
- [x] use action enum to act on user input completed:2025-10-12
- [x] add method to show only complete/incomplete line in chart (`c`), rename "toggle chart" to toggle graph so it can use `g` instead of `c` completed:2025-10-07
- [x] export upcoming tasks to ~/.config/taskfinder/upcoming.txt. completed:2025-10-30
- [x] consolidate config mode and tasks mode message_to_user into one at app-level completed:2025-11-02
- [x] add to terminal trove due:2026-01-11 completed:2026-01-11
- [x] count recurring and non-recurring tasks in log completed:2026-02-09
- [x] switch TaskCount from being usizes to Option<usize>.
- [x] include recurring/non-recurring differences in info box in log mode table completed:2026-02-12
- [x] make extract priorities more efficient completed:2026-02-13
- every time a priority is extracted or displayed, the config file is opened, which is definitely not necessary.
- [x] fix direct index on line 59 of files_mode.rs completed:2026-02-14
- [x] do screencasts, update ratatui/tui dialog versions, release 2.14.0 completed:2026-02-15 completed:2026-02-15
## Back
[[notes/2023-12-21-2248.md]] Taskfinder