annotate README @ 536:a59622c06936

Fix generating reports if no week given unix_week() cannot handle week being None but does so for year. It just assumes the current year in this case, although this only duplicates the initialisation of year with c_year in this context. week being None gives TypeError: unsupported operand type(s) for -: 'NoneType' and 'int' load_entries() handles the case with no week given, thus call it anyhow. This fix makes it possible to invoke scripts/getan-report with a year given but no week and seeing the expected result (data for a whole year) instead of a traceback.
author Tom Gottfried <tom@intevation.de>
date Thu, 09 Jan 2020 11:32:34 +0100
parents fab6ff9b248e
children b8d0cc8d7221
rev   line source
417
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
1 Usage
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
2 =====
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
3
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
4 Call ``getan`` or ``getan.py`` in a terminal to start
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
5 with an empty list of tasks that you want to track time for.
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
6
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
7 Use the Insert-Key to add a new task to track.
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
8 (A *task* is called *project* within getan.)
438
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
9 You will have to enter a project "key" and a project "description".
417
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
10
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
11 Now select one of the projects with the arrow keys from your keyboard
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
12 and press enter to start the clock. See ``INTRODUCTION`` for more keyboard
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
13 commands.
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
14
418
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
15 The time log entries will be saved in an sqlite database,
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
16 by default getan will create ``~/.getan/time.db``.
417
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
17 The ``scripts/`` will help to generate reports from them.
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
18
438
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
19 Tree mode
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
20 ---------
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
21 Getan supports a hierarchy of projects. A top level project key
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
22 has only one character, once you starting using a second character
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
23 as project key, it will be the next level down in the hierarchy.
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
24 Example::
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
25
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
26 a Top level project
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
27 aa 1st second level project
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
28 ab 2nd second level project
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
29 aba Third level Project
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
30
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
31 Use the switch_project_order key which is ``f2`` by default
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
32 to cycle to the hierarchical view.
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
33
d56fee6fd7ca Documentation: Adds description of the available tree mode.
Bernhard Reiter <bernhard@intevation.de>
parents: 424
diff changeset
34
418
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
35 Customization
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
36 -------------
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
37
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
38 Use ``~/.getan/getanrc`` or the system-wide ``/etc/getanrc``
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
39 to customize keys and colors. See ``getan/config.py`` for
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
40 the recognized options. Example::
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
41
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
42 [keybindings]
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
43 # changes the insert function to be activated by the `)` key
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
44 insert: )
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
45
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
46 [theme]
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
47 header: light green, dark green
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
48 body: light green, black
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
49
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
50
cd990c7dc746 Version: Prepares for 2.0.post1 release.
Bernhard Reiter <bernhard@intevation.de>
parents: 417
diff changeset
51
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
52 Installation
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
53 ============
0
7eb7886ed8fd Initial import.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
54
336
a3d1fc6c0153 README updated: New urwid.org homepage and location simplified. Typo fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 291
diff changeset
55 Getan requires `urwid <http://urwid.org/>`_ in a version >= 1.0. Urwid is
367
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
56 a console user interface library written in Python. For console output e.g.
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
57 zeiterfassung.py Getan also requires `Jinja2 <http://jinja.pocoo.org/>_`.
261
cf905ed23de0 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 259
diff changeset
58
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
59 Install urwid
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
60 -------------
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 3
diff changeset
61
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
62 On Debian GNU/Linux >= Wheezy just run as root:::
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
63
507
32ddea6d5bdb README: use python3 for apt-get and setup.py calls
Thomas Arendsen Hein <thomas@intevation.de>
parents: 481
diff changeset
64 $ apt-get install python3-urwid
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
65
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
66 On other systems urwid may be installed via pip or directly put into the sources
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
67 of getan.
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
68
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
69 Using pip
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
70 ^^^^^^^^^
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
71
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
72 To install urwid via pip run as root::
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
73
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
74 $ pip install urwid
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
75
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
76 Or if you prefer using a virtualenv::
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
77
414
69ef6f89e930 Prepares release v2.0.
Bernhard Reiter <bernhard@intevation.de>
parents: 367
diff changeset
78 $ virtualenv getan-env
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
79 $ source getan-env/bin/activate
414
69ef6f89e930 Prepares release v2.0.
Bernhard Reiter <bernhard@intevation.de>
parents: 367
diff changeset
80 (getan-env)$ pip install -U pip # to get the latest pip
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
81 (getan-env)$ pip install urwid
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
82
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
83 Using urwid sources
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
84 ^^^^^^^^^^^^^^^^^^^
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
85
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
86 Urwid can be put as source to the getan directory when getan is run directly
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
87 from the sources. Urwid source can be downloaded from `pypi
336
a3d1fc6c0153 README updated: New urwid.org homepage and location simplified. Typo fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 291
diff changeset
88 <https://pypi.python.org/pypi/urwid/>`_.
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
89
337
96a8545eb247 README: updated for urwid 1.1.2. Better example shell commands for using urwid from source.
Bernhard Reiter <bernhard@intevation.de>
parents: 336
diff changeset
90 For urwid 1.1.2 the direct download link from pypi is
340
325499a01b65 Use text width of 80 chars per line in README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 337
diff changeset
91 `<https://pypi.python.org/packages/source/u/urwid/urwid-1.1.2.tar.gz>`_
325499a01b65 Use text width of 80 chars per line in README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 337
diff changeset
92 (sha256sum is
325499a01b65 Use text width of 80 chars per line in README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 337
diff changeset
93 f56568b4f8459b3265c65d9e275ef72df6cb16ad0c291f0feb027cc911ea0f26).::
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
94
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
95 $ cd getan-source
337
96a8545eb247 README: updated for urwid 1.1.2. Better example shell commands for using urwid from source.
Bernhard Reiter <bernhard@intevation.de>
parents: 336
diff changeset
96 $ v=urwid-1.1.2
96a8545eb247 README: updated for urwid 1.1.2. Better example shell commands for using urwid from source.
Bernhard Reiter <bernhard@intevation.de>
parents: 336
diff changeset
97 $ curl -O https://pypi.python.org/packages/source/u/urwid/$v.tar.gz
96a8545eb247 README: updated for urwid 1.1.2. Better example shell commands for using urwid from source.
Bernhard Reiter <bernhard@intevation.de>
parents: 336
diff changeset
98 $ sha256sum $v.tar.gz
96a8545eb247 README: updated for urwid 1.1.2. Better example shell commands for using urwid from source.
Bernhard Reiter <bernhard@intevation.de>
parents: 336
diff changeset
99 $ tar -xzvf $v.tar.gz
96a8545eb247 README: updated for urwid 1.1.2. Better example shell commands for using urwid from source.
Bernhard Reiter <bernhard@intevation.de>
parents: 336
diff changeset
100 $ ln -s $v/urwid urwid
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
101
367
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
102 Install Jinja2
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
103 --------------
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
104
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
105 On Debian GNU/Linux just run as root:::
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
106
507
32ddea6d5bdb README: use python3 for apt-get and setup.py calls
Thomas Arendsen Hein <thomas@intevation.de>
parents: 481
diff changeset
107 $ apt-get install python3-jinja2
367
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
108
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
109 On other systems jinja2 may be installed via pip or directly put into the
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
110 sources of getan.
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
111
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
112 Using pip
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
113 ^^^^^^^^^
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
114
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
115 To install jinja2 via pip run as root::
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
116
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
117 $ pip install jinja2
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
118
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
119 Or if you prefer using a virtualenv::
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
120
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
121 $ source getan-env/bin/activate
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
122 (getan-env)$ pip install jinja2
ea5a171abda7 Update README for installing jinja2
Björn Ricks <bjoern.ricks@intevation.de>
parents: 342
diff changeset
123
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
124 Install getan
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
125 -------------
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
126
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
127 A installation of getan is not required. It can also be run directly from the
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
128 sources. To install getan system wide the following command must be run as root
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
129 user::
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
130
507
32ddea6d5bdb README: use python3 for apt-get and setup.py calls
Thomas Arendsen Hein <thomas@intevation.de>
parents: 481
diff changeset
131 $ python3 setup.py install
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
132
508
708e1ff71b52 README: mention that python3-setuptools is needed
Thomas Arendsen Hein <thomas@intevation.de>
parents: 507
diff changeset
133 You may need to install setuptools first, on Debian GNU/Linux just run as root:::
708e1ff71b52 README: mention that python3-setuptools is needed
Thomas Arendsen Hein <thomas@intevation.de>
parents: 507
diff changeset
134
708e1ff71b52 README: mention that python3-setuptools is needed
Thomas Arendsen Hein <thomas@intevation.de>
parents: 507
diff changeset
135 $ apt-get install python3-setuptools
708e1ff71b52 README: mention that python3-setuptools is needed
Thomas Arendsen Hein <thomas@intevation.de>
parents: 507
diff changeset
136
708e1ff71b52 README: mention that python3-setuptools is needed
Thomas Arendsen Hein <thomas@intevation.de>
parents: 507
diff changeset
137
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
138 Starting getan
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
139 ==============
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
140
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
141 Getan can be directly run from sources or after a system wide installation from
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
142 the bin dir (e.g. /usr/bin).
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
143
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
144 Running from Sources
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
145 --------------------
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
146
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
147 To run getan from the sources run::
0
7eb7886ed8fd Initial import.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
148
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 3
diff changeset
149 $ ./getan.py
0
7eb7886ed8fd Initial import.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
150
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
151 or::
0
7eb7886ed8fd Initial import.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
152
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
153 $ ./getan.py /path/to/mytime.db
0
7eb7886ed8fd Initial import.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
154
341
148300d6f126 Fix typos in README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 340
diff changeset
155 to choose a different sqlite3 database then the default time.db
288
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
156
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
157
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
158 Running from installation
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
159 -------------------------
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
160
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
161 After installing getan it can be run with::
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
162
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
163 $ getan
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
164
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
165 or::
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
166
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
167 $ getan /path/to/mytime.db
1c9c3c9454e3 Update README
Björn Ricks <bjoern.ricks@intevation.de>
parents: 261
diff changeset
168
424
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
169
526
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
170 Writing Templates
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
171 =================
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
172
527
fab6ff9b248e Update README
Magnus Schieder <mschieder@intevation.de>
parents: 526
diff changeset
173 External templates must be stored in ~/.getan/templates/ to be able to call
fab6ff9b248e Update README
Magnus Schieder <mschieder@intevation.de>
parents: 526
diff changeset
174 them.
fab6ff9b248e Update README
Magnus Schieder <mschieder@intevation.de>
parents: 526
diff changeset
175
526
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
176 Getan uses the Jinja2 templating language. You can find more information
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
177 at `Jinja2 <http://jinja.pocoo.org/>`_.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
178
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
179 If a year or a week is specified, only the entries in this period will be
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
180 loaded.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
181
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
182 Variables
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
183 ---------
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
184
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
185 current_week: The current week.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
186 current_year: The current year.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
187
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
188 user: What You indicated with -u.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
189 week: What You indicated with -w.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
190 unix_week: What You indicated with -w, in unix notation.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
191 year: What you indicated with -y.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
192
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
193 get_total_duration(): Total duration of all entries.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
194
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
195 database: Path of the database.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
196
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
197 entries: List of all entries.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
198 get_comment(): Description of the entry.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
199 get_workpackage(): Work package of the entry.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
200 desc: Work package and Description of the entry.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
201
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
202 startisoday: Year, month and day in ISO format.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
203 start: Start time as datetime.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
204 end: End time as datetime.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
205 get_duration(): Duration of the entry.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
206
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
207 projects: List of all projects.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
208 get_total_duration(): Total duration of all
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
209 entries in the project.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
210 desc: Description of the project.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
211 key: Key of the project.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
212
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
213 entries: All entries in this project (See entries).
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
214
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
215
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
216 If -w is specified, only this week will be loaded from the database.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
217
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
218 year(): All entries in this year.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
219 month(): All entries in this month.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
220 week(): All entries in this week.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
221 day(): All entries in this day.
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
222
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
223 Example
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
224 -------
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
225
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
226 {{ user }}, (KW {{ week }}, {{ year }})
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
227 {% for i in user -%}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
228 =
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
229 {%- endfor -%}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
230 ==============
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
231 {% for proj in projects %}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
232 # {{ proj.desc }}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
233 {% for entry in proj.entries|sort(attribute='start') -%}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
234 {{ entry.get_comment() }}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
235 {% endfor -%}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
236 # total time: {{ proj.get_total_duration()|human_time }}h
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
237 {% endfor %}
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
238 # total: {{ total_time|human_time }}h
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
239
31282f97b807 Reworked the --help function
Magnus Schieder <mschieder@intevation.de>
parents: 524
diff changeset
240
424
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
241 CREDITS
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
242 =======
439
3103429ec963 Makes 'move' operation more consistent.
Bernhard Reiter <bernhard@intevation.de>
parents: 438
diff changeset
243 Getan is Free Software licensed under the terms of GNU GPL v>=3.
424
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
244 For details see LICENSE coming with the source of 'getan'.
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
245
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
246
523
1d7b303e7b3a Backed out changeset e8b7abbe07e5
Bernhard Reiter <bernhard@intevation.de>
parents: 522
diff changeset
247 Main development
1d7b303e7b3a Backed out changeset e8b7abbe07e5
Bernhard Reiter <bernhard@intevation.de>
parents: 522
diff changeset
248 ----------------
524
d749ded62687 update credits in README
Bernhard Reiter <bernhard@intevation.de>
parents: 523
diff changeset
249 2018- Magnus Schieder <magnus.schieder@intevation.de>
d749ded62687 update credits in README
Bernhard Reiter <bernhard@intevation.de>
parents: 523
diff changeset
250 2014- Bernhard E. Reiter <bernhard@intevation.de> (current maintainer)
523
1d7b303e7b3a Backed out changeset e8b7abbe07e5
Bernhard Reiter <bernhard@intevation.de>
parents: 522
diff changeset
251 2011-2014 Björn Ricks <bjoern.ricks@intevation.de>
524
d749ded62687 update credits in README
Bernhard Reiter <bernhard@intevation.de>
parents: 523
diff changeset
252 2010 Ingo Weinzierl <ingo.weinzierl@intevation.de>
523
1d7b303e7b3a Backed out changeset e8b7abbe07e5
Bernhard Reiter <bernhard@intevation.de>
parents: 522
diff changeset
253 2009-2014 Thomas Arendsen Hein <thomas@intevation.de>
1d7b303e7b3a Backed out changeset e8b7abbe07e5
Bernhard Reiter <bernhard@intevation.de>
parents: 522
diff changeset
254 2008-2010 Sascha L. Teichmann <sascha.teichmann@intevation.de>
424
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
255
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
256 Contributions
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
257 -------------
439
3103429ec963 Makes 'move' operation more consistent.
Bernhard Reiter <bernhard@intevation.de>
parents: 438
diff changeset
258 Frank Koormann
424
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
259 Stephan Holl
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
260 Tom Gottfried
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
261
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
262 Thanks
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
263 ------
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
264 To all users that gave feedback, especially at Intevation.
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
265
8b1916aabe65 Docs: adds CREDITS section with license info.
Bernhard Reiter <bernhard@intevation.de>
parents: 418
diff changeset
266
417
d6d9d319bd2e Prepares for PyPi publication.
Bernhard Reiter <bernhard@intevation.de>
parents: 414
diff changeset
267 .. vim: set ts=4 sw=4 tw=80 filetype=rst :
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)