From 30c6aea11b09b37bfbcd79eb61b90c4d7ac34e84 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Sun, 31 Oct 2021 17:06:28 +0100 Subject: [PATCH] Add option for taskwarrior overrides --- open-todo-txt.py | 15 ++++++--------- options.py | 8 ++++++++ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/open-todo-txt.py b/open-todo-txt.py index c50dfcd..def4b3b 100755 --- a/open-todo-txt.py +++ b/open-todo-txt.py @@ -9,7 +9,7 @@ import re import os import sys import subprocess -import options +import options as opts def get_todo_block_date(line, todo_block_title): @@ -58,7 +58,7 @@ def handle_completed_tasks(line, date, options): line, ) if completed_task and options.taskwarrior_log_completed: - log_completed_to_taskwarrior(completed_task[1], date, options.dryrun) + log_completed_to_taskwarrior(completed_task[1], date, options) return True return False @@ -77,9 +77,8 @@ def get_prio_string(task_string): return prio_string -def log_completed_to_taskwarrior(task_string, date, dryrun): - overrides = ["rc.context=none", "rc.verbose=nothing", "rc.hooks=0"] - +def log_completed_to_taskwarrior(task_string, date, options): + overrides = options.taskwarrior_overrides cmd = [ "task", *overrides, @@ -89,11 +88,9 @@ def log_completed_to_taskwarrior(task_string, date, dryrun): f"end:{date}", get_prio_string(task_string), ] - - if dryrun: + if options.dryrun: print(cmd) return - subprocess.Popen(cmd) @@ -115,5 +112,5 @@ def delete_logged_tasks_from_file(fname, lines, dryrun): if __name__ == "__main__": - process_file(options.init()) + process_file(opts.init()) sys.exit(0) diff --git a/options.py b/options.py index 9542155..b491d7b 100644 --- a/options.py +++ b/options.py @@ -5,10 +5,18 @@ from dataclasses import dataclass @dataclass class Options: + # can be changed jrnl_fname: str = f"{os.path.expanduser('~')}/documents/records/todo.md" todo_block_title: str = "todotxt" dryrun: bool = False taskwarrior_log_completed: bool = True + + # can not yet be changed + taskwarrior_overrides: list = [ + "rc.context=none", + "rc.verbose=nothing", + "rc.hooks=0", + ] regex_task_completed: str = r"(?:x|[x])" regex_task_incomplete: str = r"[ ]"