-
Notifications
You must be signed in to change notification settings - Fork 6
/
orgstatExample.yaml
121 lines (105 loc) · 4.3 KB
/
orgstatExample.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
## This is example orgstat configuration file. Sadly it's still
## poorly documented, so check out Config.hs for more options in
## case something is missing.
# Scopes are sets of org-mode files you consider as one single
# working tree. Different possible scopes are possible, but
# in general it's convenient to work with a single one, controlling
# output with scope modifiers.
scopes:
# Scope without name is given the name "default".
# In this particular example, the scope is represented by tree with
# three root directories: /study/, /work/, and /private/.
- paths: [/home/username/org/study.org, /home/username/org/work.org, /home/username/org/private.org.gpg]
# This creates a tree with only one /secretAgentLife/ root directory.
- name: alternative
paths: [/home/username/secretAgentLife.org]
# Reports are temporary internal representations of summaries that
# we want to later output. Report works within the scope, applying
# modifiers that change the working tree.
reports:
# Current week, all tasks
- name: curWeekFull
range: week # month-1, week-5, day-3 are possible (as in org-mode)
# Current week, only work/study
- name: curWeekTop
range: week
# scope: default # 'default' is the default scope, but you
# can chose another one
modifiers:
# Prune modifier goes to node on path and transforms all
# noes at depth 'depth' into leaves, collecting their
# timestamps into one
- type: prune
path: /study/
depth: 1
- type: prune
path: /work/
depth: 1
# Only study, previous week
- name: prevWeekStudy
range: week-1
modifiers:
# Select does 'cd' into the chosen node.
- type: select
path: study
- type: prune
path: /
depth: 2
- name: prevWeekWork
range: week-1
modifiers:
- type: filterbytag
tag: work # Tag name
# Multiple tags are supported (as in "a|b")
# tags: [work,study] #
# Outputs are the ways to represent/materialise the reports. One report can
# be outputed in several different ways. There is a discrete number of
# outputs available.
outputs:
# Timeline output, it outputs the timeline svg from the report.
- name: curWeekFullTimeline
type: timeline
report: curWeekFull
- name: curWeekTopTimeline
report: curWeekTop
type: timeline
# Statistics output accumulates total report durations into variable
# and injects them into the given template. Finally, it writes the
# resulting string into the file.
- name: thisWeekStats
type: summary
template: "work: %prevWeekWork%, study: %prevWeekStudy%"
# Script output is the generalisation of the previous one.
# It will take a script and execute it with durations of
# reports injected as environment variable with the same name.
- name: scriptOutput
type: script
# One can choose between inline script or a path to the file
inline: "echo $prevWeekWork > file.txt"
# scriptPath: /path/to/script.sh
# Reports to consider. Since we don't know generally what reports
# are used inside the script, they can be specified here.
# If this list is empty (default), then *all* reports will
# be ran and injected!
reports: [prevWeekWork]
# Block output is something similar to the org-report -- it builds
# a table with items and durations. Is useful for debugging.
- name: blockOutput
type: block
unicode: true # Optional, default true
maxLength: 60 # Optional, default 80
report: curWeekTop
# Must contain all todo keywords you use in files, because
# otherwise parsed headings' titles will contain them prepended.
todoKeywords: [ TODO, STARTED, WAITING, DONE, CANCELED ]
# Default outputs parent folder. Subfolder for the particular output
# will be auto-generated.
outputDir: /home/username/reps/orgstat/
# Optional parameters controlling timeline output:
timelineDefault:
colorSalt: 3 # Salt that controls coloring of report items, default 0
colWidth: 1.2 # Width of single timeline column, default 1
colHeight: 1.1 # Height of single timeline column, default 1
topDay: 8 # Number of items in per-day longest-top list, default 5
legend: true # Should legend be shown, default true
background: '#ff00aa' # Background color, default white