From 813195bed4ccbccff9a002049bb001d445947642 Mon Sep 17 00:00:00 2001 From: "Rieger, Simon" Date: Mon, 3 Jul 2023 09:33:03 +0200 Subject: [PATCH] fix khal --- dot_config/waybar/executable_waybar-khal-old.py | 12 +++++------- dot_config/waybar/executable_waybar-khal.py | 15 ++++++++++++--- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/dot_config/waybar/executable_waybar-khal-old.py b/dot_config/waybar/executable_waybar-khal-old.py index 492138c..7f9ff5e 100644 --- a/dot_config/waybar/executable_waybar-khal-old.py +++ b/dot_config/waybar/executable_waybar-khal-old.py @@ -12,17 +12,15 @@ today = datetime.date.today().strftime("%Y-%m-%d") next_week = (datetime.date.today() + datetime.timedelta(days=10)).strftime("%Y-%m-%d") -#output = subprocess.check_output("khal list now "+next_week, shell=True) -output = subprocess.check_output("khal list now 7days --format \"{start-end-time-style} {title}\"", shell=True).decode("utf-8") -#output = output.decode("utf-8") +output = subprocess.check_output("khal list now "+next_week, shell=True) +output = output.decode("utf-8") lines = output.split("\n") new_lines = [] for line in lines: - clean_line = escape(line).split(" ::")[0] - if len(clean_line) and not clean_line[0] in ['0', '1', '2']: - clean_line = "\n"+clean_line+"" - new_lines.append(clean_line) + if len(line) and line[0].isalpha(): + line = "\n"+line+"" + new_lines.append(line) output = "\n".join(new_lines).strip() if today in output: diff --git a/dot_config/waybar/executable_waybar-khal.py b/dot_config/waybar/executable_waybar-khal.py index 33c6679..782689a 100644 --- a/dot_config/waybar/executable_waybar-khal.py +++ b/dot_config/waybar/executable_waybar-khal.py @@ -1,18 +1,27 @@ #!/usr/bin/env python + import json import subprocess +from html import escape + data = {} + output = subprocess.check_output("khal list now 7days --format \"{start-end-time-style} {title}\"", shell=True).decode("utf-8") + lines = output.split("\n") new_lines = [] for line in lines: - if len(line) and line[0].isalpha(): - line = "\n"+line+"" - new_lines.append(line) + clean_line = escape(line).split(" ::")[0] + if len(clean_line) and not clean_line[0] in ['0', '1', '2']: + clean_line = "\n"+clean_line+"" + new_lines.append(clean_line) output = "\n".join(new_lines).strip() + if "Today" in output: data['text'] = " " + output.split('\n')[1] else: data['text'] = "" + data['tooltip'] = output + print(json.dumps(data))