Skip to content
This repository has been archived by the owner on Nov 17, 2017. It is now read-only.
/ tracking Public archive

A simple and configurable command line time tracker.

License

Notifications You must be signed in to change notification settings

nickmccurdy/tracking

Repository files navigation

Deprecated

Use timers for Org.

tracking

Gem Version Build Status Dependency Status Code Climate

A simple and configurable command line time tracker.

Installation

gem install tracking

If you're on Windows, you should set up Ruby Installer and DevKit first.

Tracking does not officially support versions of Ruby before 1.9.3. Please make sure your version of Ruby is up to date.

Features

  • concise and configurable display
  • simple syntax
  • portable data

Ideas (future)

  • hashtag-like tags for organizing tasks
  • different ways to view your data

Tutorial

$ tracking essay for English class
+-------+------------------------------------------+----------+
| start |                   task                   | elapsed  |
+-------+------------------------------------------+----------+
| 12:00 | essay for English class                  | 00:00:00 |
+-------+------------------------------------------+----------+
$ tracking getting distracted on Reddit
+-------+------------------------------------------+----------+
| start |                   task                   | elapsed  |
+-------+------------------------------------------+----------+
| 12:00 | essay for English class                  | 00:00:20 |
| 12:20 | getting distracted on Reddit             | 00:00:00 |
+-------+------------------------------------------+----------+
$ tracking
+-------+------------------------------------------+----------+
| start |                   task                   | elapsed  |
+-------+------------------------------------------+----------+
| 12:00 | essay for English class                  | 00:00:20 |
| 12:20 | getting distracted on Reddit             | 00:00:05 |
+-------+------------------------------------------+----------+
$ tracking back to work
+-------+------------------------------------------+----------+
| start |                   task                   | elapsed  |
+-------+------------------------------------------+----------+
| 12:00 | essay for English class                  | 00:00:20 |
| 12:20 | getting distracted on Reddit             | 00:00:10 |
| 12:30 | back to work                             | 00:00:00 |
+-------+------------------------------------------+----------+

Usage

Usage: tracking [mode]
                                     display tasks
    <task description>               start a new task with the given text (spaces allowed)
    -r, --rename                     rename the last task
    -d, --delete                     delete the last task
    -c, --clear                      delete all tasks
    -h, --help                       display this help information

Configuration

The config file for tracking is located in ~/.tracking/config.yml.

The default settings are listed below, along with a description of each setting.

# path to the data file (string, ~ can be used)
:data_file: ~/.tracking/data.csv
# number of lines to be displayed at once by default (integer)
:lines: 10
# width of the task name column, in characters (integer)
:task_width: 40
# format to use for elapsed time display (:colons or :letters)
:elapsed_format: :colons
# toggle colored display of the current (last) task
:color_current_task: true
# toggle header describing tracking's display columns (true or false)
:show_header: true
# toggle display of seconds in elapsed time (true of false)
:show_elapsed_seconds: false

Elapsed Time Formats

Elapsed times are displayed in this order: days, hours, minutes, seconds (if enabled)

  • hide elapsed seconds
    • colons: 01:02:03 (default)
    • letters: 01d 02h 03m
  • show elapsed seconds
    • colons: 01:02:03:04
    • letters: 01d 02h 03m 04s

Contributing to tracking

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
  • Fork the project.
  • Start a feature/bugfix branch.
  • Commit and push until you are happy with your contribution.
  • Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

Similar Projects

Special Thanks

Copyright

Copyright (c) 2012 Nicolas McCurdy. See LICENSE.txt for further details.

About

A simple and configurable command line time tracker.

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Languages