diff options
| author | Robert Günzler <r@gnzler.io> | 2026-04-08 13:24:01 +0900 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2026-04-08 13:24:01 +0900 |
| commit | 28db7c76e26c312918959384e02e433f8858de49 (patch) | |
| tree | cc06c8ffa2444b49cbaf01d45aede08411d23049 /.config/timewarrior/extensions/common.py | |
| parent | b61b58ce2c1371d6f904f108fa7feed3abfbe5c7 (diff) | |
*
Automated-commit-by: dots Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to '.config/timewarrior/extensions/common.py')
| -rw-r--r-- | .config/timewarrior/extensions/common.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/.config/timewarrior/extensions/common.py b/.config/timewarrior/extensions/common.py new file mode 100644 index 0000000..19467cb --- /dev/null +++ b/.config/timewarrior/extensions/common.py @@ -0,0 +1,30 @@ +import fileinput, json, sys +import datetime + +def loadstdin() -> (any, any): + meta = {} + data = [] + + for line in fileinput.input(encoding='utf-8'): + mp = line.removesuffix('\n').split(': ') + if len(mp) == 2: + meta[mp[0]] = mp[1] + + if line == "[\n" or len(data) != 0: + data.append(line) + + pass + + return (meta, json.loads("".join(data))) + + +def dumpstdout(output) -> None: + print(json.dumps(output), end='') + + +def parse_timedelta(s: str) -> datetime.timedelta: + t = datetime.datetime.strptime(s, '%H:%M') + return datetime.timedelta(hours=t.hour, minutes=t.minute) + +if __name__ == "__main__": + sys.exit(1) |