From 1dd662e7c166b7c66cb82b2df196dcd29d1c06d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moussouni=2C=20Ya=C3=ABl?= Date: Wed, 22 Oct 2025 17:59:13 +0200 Subject: [PATCH] 2025-10-22: Automatic update --- src/arxtic.py | 1 + src/utils.py | 36 ++++++++++++++++++++++++++++-------- 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/src/arxtic.py b/src/arxtic.py index f571e4c..6afa3fe 100644 --- a/src/arxtic.py +++ b/src/arxtic.py @@ -67,6 +67,7 @@ if __name__ == "__main__": libraries["local"] = local_api.update_local_pdf(library=libraries["local"]) libraries["read"] = local_api.update_library(libraries["local"], "read") libraries["unread"] = local_api.update_library(libraries["local"], "unread") + while not q: print(COLOUR_INPUT + "Select an action") val = input("> " + COLOUR_DEFAULT) diff --git a/src/utils.py b/src/utils.py index 10e775d..551bfdb 100644 --- a/src/utils.py +++ b/src/utils.py @@ -415,8 +415,13 @@ def arxtic_library_add(key, library, value): block = find(key, library) old_value = block["arxtic_library"] new_value = old_value + "," + value - if new_value[0] == ",": new_value = new_value[1:] - if new_value[-1] == ",": new_value = new_value[:-1] + if new_value == "": + None + elif new_value == ",": + new_value = "" + else: + if new_value[0] == ",": new_value = new_value[1:] + if new_value[-1] == ",": new_value = new_value[:-1] block["arxtic_library"] = new_value return library @@ -424,8 +429,13 @@ def arxtic_library_remove(key, library, value): block = find(key, library) old_value = block["arxtic_library"] new_value = old_value.replace(value, "").replace(",,", ",") - if new_value[0] == ",": new_value = new_value[1:] - if new_value[-1] == ",": new_value = new_value[:-1] + if new_value == "": + None + elif new_value == ",": + new_value = "" + else: + if new_value[0] == ",": new_value = new_value[1:] + if new_value[-1] == ",": new_value = new_value[:-1] block["arxtic_library"] = new_value return library @@ -433,8 +443,13 @@ def arxtic_keywords_add(key, library, value): block = find(key, library) old_value = block["arxtic_keywords"] new_value = old_value + "," + value - if new_value[0] == ",": new_value = new_value[1:] - if new_value[-1] == ",": new_value = new_value[:-1] + if new_value == "": + None + elif new_value == ",": + new_value = "" + else: + if new_value[0] == ",": new_value = new_value[1:] + if new_value[-1] == ",": new_value = new_value[:-1] block["arxtic_keywords"] = new_value return library @@ -442,8 +457,13 @@ def arxtic_keywords_remove(key, library, value): block = find(key, library) old_value = block["arxtic_keywords"] new_value = old_value.replace(value, "").replace(",,", ",") - if new_value[0] == ",": new_value = new_value[1:] - if new_value[-1] == ",": new_value = new_value[:-1] + if new_value == "": + None + elif new_value == ",": + new_value = "" + else: + if new_value[0] == ",": new_value = new_value[1:] + if new_value[-1] == ",": new_value = new_value[:-1] block["arxtic_keywords"] = new_value return library