Skip to main content

Terminal based time-tracking and reporting tool; comparable to 'worklog'.

Project description

Usage

Call getan or getan.py in a terminal to start with an empty list of tasks that you want to track time for.

Use the Insert-Key to add a new task to track. (A task is called project within getan.) You will have to enter a project “key” and a project “description”.

Now select one of the projects with the arrow keys from your keyboard and press enter to start the clock. See INTRODUCTION for more keyboard commands.

The time log entries will be saved in an sqlite database, by default getan will create ~/.getan/time.db. The scripts/ will help to generate reports from them.

Tree mode

Getan supports a hierarchy of projects. A top level project key has only one character, once you starting using a second character as project key, it will be the next level down in the hierarchy. Example:

a    Top level project
aa   1st second level project
ab   2nd second level project
aba  Third level Project

Use the switch_project_order key which is f2 by default to cycle to the hierarchical view.

Customization

Use ~/.getan/getanrc or the system-wide /etc/getanrc to customize keys and colors. See getan/config.py for the recognized options. Example:

[keybindings]
# changes the insert function to be activated by the `)` key
insert: )

[theme]
header: light green, dark green
body: light green, black

Installation

Getan requires urwid in a version >= 1.0. Urwid is a console user interface library written in Python. For console output e.g. zeiterfassung.py Getan also requires Jinja2 <http://jinja.pocoo.org/>_.

Install urwid

On Debian GNU/Linux >= Wheezy just run as root::

$ apt-get install python3-urwid

On other systems urwid may be installed via pip or directly put into the sources of getan.

Using pip

To install urwid via pip run as root:

$ pip install urwid

Or if you prefer using a virtualenv:

$ virtualenv getan-env
$ source getan-env/bin/activate
(getan-env)$ pip install -U pip  # to get the latest pip
(getan-env)$ pip install urwid

Using urwid sources

Urwid can be put as source to the getan directory when getan is run directly from the sources. Urwid source can be downloaded from pypi.

For urwid 1.1.2 the direct download link from pypi is https://pypi-hypernode.com/packages/source/u/urwid/urwid-1.1.2.tar.gz (sha256sum is f56568b4f8459b3265c65d9e275ef72df6cb16ad0c291f0feb027cc911ea0f26).:

$ cd getan-source
$ v=urwid-1.1.2
$ curl -O https://pypi-hypernode.com/packages/source/u/urwid/$v.tar.gz
$ sha256sum $v.tar.gz
$ tar -xzvf $v.tar.gz
$ ln -s $v/urwid urwid

Install Jinja2

On Debian GNU/Linux just run as root::

$ apt-get install python3-jinja2

On other systems jinja2 may be installed via pip or directly put into the sources of getan.

Using pip

To install jinja2 via pip run as root:

$ pip install jinja2

Or if you prefer using a virtualenv:

$ source getan-env/bin/activate
(getan-env)$ pip install jinja2

Install getan

A installation of getan is not required. It can also be run directly from the sources. To install getan system wide the following command must be run as root user:

$ python3 setup.py install

You may need to install setuptools first, on Debian GNU/Linux just run as root::

$ apt-get install python3-setuptools

Starting getan

Getan can be directly run from sources or after a system wide installation from the bin dir (e.g. /usr/bin).

Running from Sources

To run getan from the sources run:

$ ./getan.py

or:

$ ./getan.py /path/to/mytime.db

to choose a different sqlite3 database then the default time.db

Running from installation

After installing getan it can be run with:

$ getan

or:

$ getan /path/to/mytime.db

CREDITS

Getan is Free Software licensed under the terms of GNU GPL v>=3. For details see LICENSE coming with the source of ‘getan’.

Main development

2014-(current maintainer) Bernhard E. Reiter <bernhard@intevation.de> 2011-2014 Björn Ricks <bjoern.ricks@intevation.de> 2010 Ingo Weinzierl <ingo.weinzierl@intevation.de> 2009-2014 Thomas Arendsen Hein <thomas@intevation.de> 2008-2010 Sascha L. Teichmann <sascha.teichmann@intevation.de>

Contributions

Magnus Schieder Frank Koormann Stephan Holl Tom Gottfried

Thanks

To all users that gave feedback, especially at Intevation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

getan-3.2.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

getan-3.2-py3-none-any.whl (44.2 kB view details)

Uploaded Python 3

File details

Details for the file getan-3.2.tar.gz.

File metadata

  • Download URL: getan-3.2.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.3

File hashes

Hashes for getan-3.2.tar.gz
Algorithm Hash digest
SHA256 22e217bdebcdb6feffb8c9be6d1cbd6cd75ff5461288919fab2ad95ef3ebdede
MD5 71342a73b3cb4189eee2fedff750de56
BLAKE2b-256 133b7a0bf3057518e72cde4f08c80a5ad56468362a42fb702ccc03169c262a26

See more details on using hashes here.

File details

Details for the file getan-3.2-py3-none-any.whl.

File metadata

  • Download URL: getan-3.2-py3-none-any.whl
  • Upload date:
  • Size: 44.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.3

File hashes

Hashes for getan-3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6d287d7854a16017b86dd74f18bb498fc1d69f4528a534bb3d3dc6b9f1e96dad
MD5 d679deafabd1d23f8f257ee95e802e43
BLAKE2b-256 1533baf743622e2f643ef4ea25d8a640595e3b9c9804112144544a3efbd7a00c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page