App::tt - Time tracking application
0.08
App::tt is an application that can track how much time you spend on an project from command line.
It is inspired by App::TimeTracker and share the same log file format, but it has (in my humble opinion) a simpler interface and easier to install.
The application is built up by specifying an an action and optional arguments.
$ tt <action> [options] $ tt help <action> $ tt <action> -h
Available actions: "edit", "log", "register", "start", "status" (default) and "stop".
Basic usage;
# Start to track time $ cd $HOME/git/my-project $ tt start # Work, work, work, cd ..., do other stuff $ tt stop
A bit more complex:
# Start to work on an event and add a tag $ tt start -t ISSUE-999 -p some-project-at-work # Add another tag to the same event and add a --comment $ tt stop -t GITHUB-1005 "Today I was mostly in meetings"
Each action can tak -h for more details. Example:
-h
$ tt start -h
This command can be used to rewrite one all all the log entries.
# Edit the last entry with your favorite $EDITOR $ tt edit # Edit a given file with your favorite $EDITOR $ tt edit ~/.TimeTracker/2017/12/20171220-092000_rg.trc # Rewrite all the log entries with a perl script # See source code before running this action. (Internals might change) $ cat rewrite.pl | tt edit
DISCLAIMER! Backup your files before running this action!
This command will report how much time you have spent on various events.
$ tt log # this month $ tt log -2 # two months ago $ tt log year # log for year $ tt log year -1 # last year $ tt log -p foo # Filter by project name
This command is used to import data from other sources. "project-name" default to "-p" or current git project, "some description" default to "-d" and tags can be specified by -t foo -t bar
$ tt register 2016-06-28T09:00:00 17:00:00 "project-name" "some description" "foo,bar" $ echo "2016-06-28T09:00:00\t2016-06-28T17:00:00\tproject-name\tsome description\tfoo,bar" | tt register
This command will start tracking a new event. It will also stop the current event if any event is in process. This action takes the "-p" and "-t" switches. "-p" (project) is not required if you start from a git repository.
# Specify a tag and custom project name $ tt start -t ISSUE-999 some-project-name # Started working at 08:00 instead of now $ tt start 08:00
This is the default action and will return the current status: Are you working on something or not?
$ tt status
This command will stop tracking the current event.
# Add more tags to the current event $ tt stop -t meetings -t not_fun # Stop working at 16:00 instead of now $ tt stop 16:00
Copyright (C) 2014, Jan Henning Thorsen
This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0.
Jan Henning Thorsen - jhthorsen@cpan.org
jhthorsen@cpan.org
To install App::tt, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::tt
CPAN shell
perl -MCPAN -e shell install App::tt
For more information on module installation, please visit the detailed CPAN module installation guide.