From afa13306efee7f796e5aafee7e06db7d4be96eab Mon Sep 17 00:00:00 2001 From: DominikDoom Date: Fri, 26 Jan 2024 20:39:33 +0100 Subject: [PATCH 1/2] Small regex fix to make style completion work after [ or before , --- javascript/ext_styles.js | 2 +- javascript/tagAutocomplete.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/javascript/ext_styles.js b/javascript/ext_styles.js index 7f26a9c..0401e9c 100644 --- a/javascript/ext_styles.js +++ b/javascript/ext_styles.js @@ -1,4 +1,4 @@ -const STYLE_REGEX = /(\$(\d*)\(?)[^$|\]\s]*\)?/; +const STYLE_REGEX = /(\$(\d*)\(?)[^$|\[\],\s]*\)?/; const STYLE_TRIGGER = () => TAC_CFG.useStyleVars && tagword.match(STYLE_REGEX); var lastStyleVarIndex = ""; diff --git a/javascript/tagAutocomplete.js b/javascript/tagAutocomplete.js index e03553e..992456e 100644 --- a/javascript/tagAutocomplete.js +++ b/javascript/tagAutocomplete.js @@ -400,8 +400,8 @@ function isEnabled() { const WEIGHT_REGEX = /[([]([^()[\]:|]+)(?::(?:\d+(?:\.\d+)?|\.\d+))?[)\]]/g; const POINTY_REGEX = /<[^\s,<](?:[^\t\n\r,<>]*>|[^\t\n\r,> ]*)/g; const COMPLETED_WILDCARD_REGEX = /__[^\s,_][^\t\n\r,_]*[^\s,_]__[^\s,_]*/g; -const STYLE_VAR_REGEX = /\$\(?[^$|\]\s]*\)?/g; -const NORMAL_TAG_REGEX = /[^\s,|<>\]:]+_\([^\s,|<>\]:]*\)?|[^\s,|<>():\]]+|\[\]:]+_\([^\s,|<>\[\]:]*\)?|[^\s,|<>():\[\]]+|?/g; const TAG_REGEX = new RegExp(`${POINTY_REGEX.source}|${COMPLETED_WILDCARD_REGEX.source}|${STYLE_VAR_REGEX.source}|${NORMAL_TAG_REGEX.source}`, "g"); From 08d3436f3bf03dfec2b987f6af07356c77245ec9 Mon Sep 17 00:00:00 2001 From: DominikDoom Date: Sat, 27 Jan 2024 12:38:08 +0100 Subject: [PATCH 2/2] Fix mtime check for list return Fixes #269 --- scripts/tag_autocomplete_helper.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/scripts/tag_autocomplete_helper.py b/scripts/tag_autocomplete_helper.py index f2d8d79..e5a77cc 100644 --- a/scripts/tag_autocomplete_helper.py +++ b/scripts/tag_autocomplete_helper.py @@ -578,10 +578,17 @@ def on_ui_settings(): script_callbacks.on_ui_settings(on_ui_settings) def get_style_mtime(): - style_file = getattr(shared, "styles_filename", "styles.csv") - style_file = Path(FILE_DIR).joinpath(style_file) - if Path.exists(style_file): - return style_file.stat().st_mtime + try: + style_file = getattr(shared, "styles_filename", "styles.csv") + # Check in case a list is returned + if isinstance(style_file, list): + style_file = style_file[0] + + style_file = Path(FILE_DIR).joinpath(style_file) + if Path.exists(style_file): + return style_file.stat().st_mtime + except Exception: + return None last_style_mtime = get_style_mtime()