{ "info": { "author": "Matthias Kauer", "author_email": "mk.software@zuez.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python" ], "description": "[![build status](https://travis-ci.org/MatthiasKauer/tim.png?branch=master)](https://travis-ci.org/MatthiasKauer/tim)\n**Note: I'm in the process of adapting the cram tests to tim; this is difficult on Windows and happens only when I feel like booting up my Linux machine. I am using tim daily already however**\n\n#tim amendments\ntim tries to simplify [ti](https://github.com/sharat87/ti) by relying on [hledger](http://hledger.org/) (which must be on your path) for number crunching.\n\nBiggest changes:\n\n* hledger omits tasks that are too short. 4min, rounded up to 0.1 h seems to be the cut-off.\n* interrupts are gone because the stack is complex; you can call switch if you want to start work on something else. If you enter finish, nothing is automatically started.\n* hl command hands over your data to hledger to perform aggregations. [hledger manual](http://hledger.org/manual.html#timelog)\n* I'm not sure which program the test cases belong to. Please let me know, so I can amend them and test accordingly. Answer seems to be [cram](https://pypi.python.org/pypi/cram).\n* note is gone. \n* tag is gone (for now)\n* edit is deactivated till I figure out what it does\n\nThis leaves the following commands intact:\n\n* on\n* fin\n* log\n* status\n* help\n\n#File size considerations\nMy tim-sheet grows roughly 2KB / day. That's about 700kB / year. Probably less if I don't track weekends.\nWriting line by line the way I am doing it now is starting to get slow already however (at 6KB). hledger itself is significantly faster. As soon as this difference bothers me enough I will switch to storing in hledger format directly s.t. the speed will no longer be an issue.\n\n#For developers\n###Python environment installation\n####Windows\nWe develop using Anaconda with package manager [conda](http://conda.io/).\nYou can install all packages in our environment (inspect environment.yml beforehand; expect 2-3 min of linking/downloading, probably more if your conda base installation is still very basic or has vastly different packages than mine) using:\n```\nconda env create\n```\nif it already exists you may have to remove it first.\n\n * Read on top of environment.yml\n * Confirm via ```conda env list```\n * Remove ```conda env remove --name ```\n\nIf you feel like updating the environment, run ```conda env export -f environment.yml``` and commit it to the repository.\n\n# ti — A silly simple time tracker\n\n`ti` is a small command line time tracking application. Simple basic usage\nlooks like this\n\n $ ti on my-project\n $ ti fin\n\nYou can also give it human-readable times.\n\n $ ti on my-project 30mins ago\n\n`ti` sports many other cool features. Read along to discover.\n\n## Wat?\n\n`ti` is a simple command line time tracker. It has been completely re-written in\npython (from being a bash script) and has (almost) complete test coverage. It is\ninspired by [timed](http://adeel.github.com/timed), which is a nice project\nand you should check out if you don't like `ti`. It also takes inspiration from\nthe simplicity of [t](http://stevelosh.com/projects/t/).\n\nIf a time tracker tool makes me think for more than 3-5 seconds, I lose my line\nof thought and forget what I was doing. This is why I created `ti`. With `ti`,\nyou'll be as fast as you can type, which you should be good with anyway.\n\nThe most important part about `ti` is that it\nprovides just a few commands to manage your time tracking and gets out\nof your way. All data is saved in a JSON file (`~/.ti-sheet`, can be changed by\nsetting `$SHEET_FILE`) for easy access to whatever you need to do. Some ideas,\n\n- Read your json file to generate beautiful html reports.\n- Build monthly statistics based on tags or the tasks themselves.\n- Read the currently working project and make it show up in your terminal\n prompt. May be even with how long you've been on it. (!!!)\n\nIts *your* data.\n\nOh and by the way, the source is a fairly small python script, so if you know\npython, you may want to skim over it to get a better feel of how it works.\n\n*Note*: If you have used the previous bash version of `ti`, which was horribly\ntied up to only work on linux, you might notice the lack of *plugins* in this\npython version. I am not really missing them, so I might not add them. If anyone\nhas any interesting use cases for it, I'm willing to consider.\n\n## Usage\n\nHere's the minimal usage style:\n\n $ ti on my-project\n Start working on my-project.\n\n $ ti status\n You have been working on my-project for less than a minute.\n\n $ ti fin\n So you stopped working on my-project.\n\n`on` and `fin` can take a time (format described further down) at which to apply\nthe action.\n\n $ ti on another-project 2 hours ago\n Start working on another-project.\n\n $ ti s\n You have been working on another-project for about 2 hours.\n\n $ ti fin 30 minutes ago\n So you stopped working on another-project.\n\nAlso illustrating in the previous example is short aliases of all commands,\ntheir first letter. Like, `s` for `status`, `o` for `on`, `f` for `fin`, etc.\n\nPut brief notes on what you've been doing.\n\n $ ti note waiting for Napoleon to take over the world\n $ ti n another simple note for demo purposes\n\nTag your activities for fun and profit.\n\n $ ti tag imp\n\nGet a log of all activities with the `log` (or `l`) command.\n\n $ ti log\n\n## Command reference\n\nRun `ti -h` (or `--help` or `help` or just `h`) to get a short command summary\nof commands.\n\n### on\n\n- Short: `o`\n- Syntax: `ti (o|on) [