A command line work tracking program.
See Documentation for basic file format
otherwise the --help command should be useful enough.
You can use this program to clockin
work_tock -i <JobName>
clockout
work_tock -o
The program works with a single text file, and will only read, and append to it, so all data in that file will otherwise remain untouched.
use "-f" to select the file or set it in "$HOME/.config/work_tock/init"
config:
file:{HOME}/<path>/<to>/<file>
"{HOME}" is the env var $HOME, Any other env var can be used or not.
A standard file looks like this :
``` 23/01/2019 Carwashing,12:30-13:50 15:00,#Carwashing is implied by previous Job Programming,16:00,#Clockout for Carwash is implied by new Job Eating,17:00 -18:00,#Clockout
24/01/2019 breakfast,#Tags can be added with underscore 15:00,#Eating is implied as it was the last job _,#clears all current tags. -16:00 ```
Every Clockin will use the most recent Job,Date, and Tags for the clocking,
So given the example file work_tock
will produce:
``` {"Carwashing": 02:20, "Eating": 02:00, "Programming": 01:00}
Total Time = 05:20 ```
Using "-p" Will print all entries, but if you want to be morse spcific you can apply a filter and -p will print only entries that pass that filter.
To get more relevent data you can use filters such as "-d" :Today, or "--day 3/1/2019", or by job
eg: work_tock -p --job Carwashing
will return
``` 23/01/2019 Carwashing: 12:30-13:50 = 01:20 => 01:20 Carwashing: 15:00-16:00 = 01:00 => 02:20
{"Carwashing": 02:20}
Total Time = 02:20 ```
For more information use work_tock --help
Separated library from application
Trying to get repository and docs showing on Cargo
Added Docs to readme
Added basic usage documentation