Command line interface to tracking time on Basecamp.
Switch branches/tags
Nothing to show
Pull request Compare This branch is 4 commits ahead, 2 commits behind konklone:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


               Basecamper-ng - New Generation command line time tracker for Basecamp / Campfire

Basecamper is a command line interface to log and manage your times on your
Basecamp.  It uses and extends the Basecamp API Ruby wrapper.  Perhaps in the
future it will do more than time tracking.  This time is not now.

Oct 27, 2011 - Forked from original github repo

=== Install ===

gem sources -a
sudo gem install dHevre-basecamper

=== Usage ===

Configure the tracker with your Basecamp URL, login details, and whether the
Basecamp uses SSL.  This will take a while as it caches project information 
from your Basecamp. Example:

  track configure username password true

Set a project as "current", so any times logged are assumed to be meant for
that project.

  track project "Johnson Industries"
  track project joh

Log a time by giving the duration, or by giving two times. You can optionally
specify the project to log time to, which won't change the default project.

  track log 0.25 "Log message"
  track log :15 "Log message" "Johnson Industries"
  track log 2:30p 5:30pm "Log message"
  track log 10:00 1:00 "Log message" joh

  In the last case (10:00 to 1:00), the tracker will assume that the 2nd time
  is later than the 1st one, and calculate it as 3 hours, not -9.

Log time by starting a timer.  If you don't specify a starting time, it's
assumed you're starting now.  You can optionally specify a project, which 
will change the default project.

  track start
  track start "Johnson Industries"
  track start 3:15
  track start 3:15 "Johnson Industries"

Stop the timer to log elapsed time.  If you don't specify an ending time, it's
assumed you're stopping now.

  track stop "Log message"
  track stop 5:15pm "Log message"

Pause and unpause the timer.

  track pause

Cancel all time tracking and reset counters to 0, if the timer is running or 

  track cancel

List times logged that day, including totals:

  track times

Delete a logged time from Basecamp with "undo".  If you don't specify an
ID, it's assumed you want to delete the last logged time.

  track undo
  track undo 6861536

Set a variable, such as the minute increment to round times to, or any Basecamp
authorization credentials.

  track set rounding 15

See the list of available projects to track time against.

  track projects

See whether the tracker is configured correctly, the current project, and 
if/when the timer was started or paused:

  track status

See a general or command-specific help message:

  track help
  track help log

== General ==

  * Project names can be entered as starting fragments.  For example, if
    "Johnson Industries" was the only project beginning with "joh", you could
    reference it as "joh" (e.g. "track project joh").  If more than one
    project starts with a fragment, the first one that matches is chosen.

  * Times:
    - Valid formats for times of day are:    10:00, 9:00pm, 23:30, 8, 1am, 10p
    - Invalid formats for times of day are:  1230, 1120pm, 22:00am
  * When calculating elapsed time, minutes are rounded up to be integers, and 
    then rounded to the nearest 15 minute increment, by default.  So a 1-minute
    time will be logged as 15, 15 as 15, 16 as 30, etc.  Use the 'set' command
    to change the increment that times are rounded to.  Times logged using the
    'log' command will not be rounded.