I started my doing
project late last week and it’s turned into my “productive procrastination” project. It’s a simple CLI that helps you keep track of what you’re doing and provides a record of what you’ve done.
I just pushed doing v0.2.4. It’s a big update and I don’t have time to elaborate on everything, but if you’re interested, the docs are updated and the help system is complete. You can install or update with gem install doing
, or gem update doing
if you already have it.
In brief, doing
can now tag, filter, colorize and more. It has fuzzy matching for section and view names, and even basic time tracking.
You can use doing help
to see all the commands, and doing help COMMAND
to see additional details for any command. Details on the custom view templates, additional configuration and time tracking are in the docs.
See the project page for full details.
Here are my rough notes I made as I coded:
doing done
without argument tags last entry done-a
archives them
doing finish
ordoing finish X
marks last X entries done-a
archives them
doing tag tag1 [tag2]
tags last entry or-c X
entriesdoing tag -r tag1 [tag2]
removes said tag(s)
- custom views additions
- custom views can include
tags
andtags_bool
- tags is a space separated list of tags to filter the results by
- tags_bool defines AND (all tags must exist), OR (any tag exists), or NONE (none of the tags exist)
- order key (asc or desc) defines output sort order by date
- section key can be set to “All” to combine sections
- custom views can include
doing show
updates- accepts “all” as a section
- arguments following section name are tags to filter by
-b
sets boolean (AND, OR, NONE) or (ALL, ANY, NONE) (default OR/ANY)
- use
-c X
to limit results - use
-s
to set sort order (asc or desc) - use
-a
to set age (newest or oldest) - CSV output for show command (
--csv
)
- fuzzy section guessing when specified section isn’t found
- fuzzy view guessing for
doing view
command - fuzzy searching for all commands that specify a view.
- On the terminal you’ll see “Assume you meant XXX” to show what match it found, but this is output to STDERR and won’t show up if you’re redirecting the output or using it in GeekTool, etc.
- tags_color in view config to highlight tags at the end of the lines. Can be set to any of the %colors.
- Basic time tracking.
-t
onshow
andview
will turn on time calculations- Intervals between timestamps and dated
@done
tags are calculated for each line, if the tag exists. - You must include a %interval token in the appropriate template for it to show
@start(date)
tags can optionally be used to override the time stamp in the calculation- Any other tags in the line have that line’s total added to them
- Totals for tags can be displayed at the end of output with
--totals