a command-line time tracker
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Version 0.3: a complete refactoring. Feb 12, 2011
scripts added script to convert from old log files Aug 14, 2009
timed Create file if it doesn't exist Aug 11, 2011
.gitignore Version 0.3: a complete refactoring. Feb 12, 2011
LICENSE change license to MIT Aug 9, 2011
README.md Update README.md Dec 8, 2017
setup.py change license to MIT Aug 9, 2011

README.md

timed

Timed is a command-line time tracker.

Summary

$ timed start myproject
starting work on myproject
  at 16:35 on 07 Feb 2011

$ timed
working on myproject:
  from     16:35 on 07 Feb 2011
  to now,  17:00 on 07 Feb 2011
        => 0h25m have elapsed

$ timed stop
worked on myproject
  from    16:35 on 07 Feb 2011
  to now, 17:40 on 07 Feb 2011
       => 1h5m elapsed

$ timed summary
myproject   1h5m

$ cat ~/.timed
myproject: 16:35 on 07 Feb 2011 - 17:40 on 07 Feb 2011

$ cat ~/.timed | grep "Jan 2011" | timed parse

Installation

From GitHub:

  $ git clone git://github.com/adeel/timed.git
  $ cd timed
  # python setup.py install

From Pypi:

  # pip install timed

For Arch Linux, Tom Vincent (@tlvince) has prepared a PKGBUILD.

Usage

timed: alias for 'timed status'

timed status:
       print current status

timed start <project>:
       start tracking for <project>

timed stop:
       stop tracking for the active project

timed summary:
       show a summary of all projects

timed parse:
       parses a stream with text formatted as a Timed logfile and shows a
       summary

timed help:
       print help

Bonus

Enable tab completion for project names by putting this in your .bashrc:

shopt -s progcomp                                                               
timed_complete() {                                                              
  local partial                                                                 
  COMPREPLY=()                                                                  
  partial=${COMP_WORDS[COMP_CWORD]}                                             
  COMPREPLY=($(compgen -W '$( timed projects )' -- $partial))                   
  return 0                                                                      
}                                           
complete -F timed_complete -o dirnames timed

Thanks

Thanks to Tom Vincent.

License

Copyright (c) 2011 Adeel A. Khan adeel@yusufzai.me.

MIT license.