taskfinder 2.13.0

A terminal user interface that extracts and displays tasks from plain text files, hooking into your default terminal-based editor for editing.
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
- [ ] 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.)
  - 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/>
- [ ] in log mode (table), add a navigation control to go down/up one month (or maybe to beginning/end of month)
- [ ] 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

## Back
[[notes/2023-12-21-2248.md]] Taskfinder