Giter Club home page Giter Club logo

t_time_tracker's Introduction

t_time_tracker

Simple command line time tracking.

To install

gem install t_time_tracker

This installs a binary named t_time_tracker, but it is strongly recommended that you alias this in your .bashrc to t to prevent extraneous typing:

echo "alias t='t_time_tracker'" >> ~/.bashrc

To use

Show current task:

$ t
In progress: publishing t_time_tracker to GitHub (0:11)

Start a new task and finish previous

$ t checking email 
Finished: publishing t_time_tracker to GitHub (0:12)
Started: lunch (now)

Start a task at a custom time (powered by Chronic)

$ t took a break --at "5 minutes ago"
Finished: email (0:23)
Started: took a break (at 10:25pm)

Stop a task, without starting a new one

$ t --done
$ t --stop
$ t -d
Finished: took a break (0:05)

Edit tasks with your $EDITOR

$ t --edit
$ t -e
# change "took a break" to "napping" in Sublime Text 2, my $EDITOR

Resume the last stopped/done task

$ t --resume
$ t -r
Resuming napping

List today's tasks

$ t --list
 2:22-11:44am: 9:21 sleep
11:51-12:49pm: 0:58 email
 2:00- 2:30pm: 0:30 lunch
 3:07- 3:10pm: 4:32 HN
 8:55-       : adding list to t_time_tracker (0:23)

List last week's tasks

$ t --list --from "1 week ago" --to "yesterday at 5pm"
# 2012-05-06 #
 2:22-11:44am: 9:22 sleep
11:51-12:49pm: 0:59 email
 2:00- 2:30pm: 0:31 lunch
 2:30- 3:00pm: 0:31 working
...
# 2012-05-14 #
12:15-12:35am: 0:21 physiology lab
12:35- 1:14am: 0:40 starcraft

To view

Daily csv files are created in month and year folders in ~/.ttimetracker in the format:

.ttimetracker/
  2012/
    05_May/
      2012-05-02.csv
      2012-05-03.csv
      2012-05-04.csv
      2012-05-05.csv
      2012-05-06.csv
      ...
    06_June/
    ...
  ...

In each .csv file there are three columns representing the start time, end time, and description:

14:00:13, 14:30:47, making lunch
15:07:21, 15:10:13, HN
18:25:40, 18:35:08, learning how to cat daddy

You can open these in your $EDITOR with the command t --edit.

Customize

By default, logs are stored in ~/.ttimetracker/. This can be changed by editing the line:

@data_dir = File.join(Dir.home, '.ttimetracker')

Customizing directory naming and organization will be supported in a future release.

Similar Projects

t_time_tracker's People

Contributors

christiangenco avatar houhoulis avatar danielvf avatar bestform avatar

Stargazers

 avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.