aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/custom_statics.py29
-rw-r--r--modules/generation_parameters_copypaste.py8
-rw-r--r--webui-user.bat4
3 files changed, 39 insertions, 2 deletions
diff --git a/modules/custom_statics.py b/modules/custom_statics.py
new file mode 100644
index 00000000..207bd5fb
--- /dev/null
+++ b/modules/custom_statics.py
@@ -0,0 +1,29 @@
+import os
+import gc
+import re
+
+import modules.paths as paths
+
+class CustomStatics:
+
+ @staticmethod
+ # loads a file with strings structured as below, on each line with a : between the search and replace strings, into a list
+ # search0:replace0
+ # search string:replace string
+ #
+ # Then replaces all occurrences of the list's search strings with the list's replace strings in one go
+ def mass_replace_strings(input_string):
+ with open(os.path.join(paths.data_path, "custom_statics/Replacements.txt"), "r", encoding="utf8") as file:
+ replacements = file.readlines()
+
+ replacement_dict = {}
+ for line in replacements:
+ search, replace = line.strip().split(":")
+ replacement_dict[search] = replace
+
+ def replace(match_text):
+ return replacement_dict[match_text.group(0)]
+
+ return re.sub('|'.join(r'\b%s\b' % re.escape(s) for s in replacement_dict.keys()), replace, str(input_string))
+
+ return str(geninfo) \ No newline at end of file
diff --git a/modules/generation_parameters_copypaste.py b/modules/generation_parameters_copypaste.py
index a3448be9..bd7b0018 100644
--- a/modules/generation_parameters_copypaste.py
+++ b/modules/generation_parameters_copypaste.py
@@ -370,6 +370,14 @@ def connect_paste(button, paste_fields, input_comp, override_settings_component,
prompt = file.read()
params = parse_generation_parameters(prompt)
+
+ # This sanitizes unsavory prompt words when copying from another image
+ # for my own sanity. This is not intended to be contributed to the main repo,
+ # it's just so I don't have to see anything I'm not interested in when batch
+ # reproducing images from civit.ai or elsewhere when working on loras
+ # todo: make this work with the callback instead of forcing it here, this can be an extension when I feel like putting it together :D
+ from modules import custom_statics
+ params = custom_statics.CustomStatics.mass_replace_strings(params)
script_callbacks.infotext_pasted_callback(prompt, params)
res = []
diff --git a/webui-user.bat b/webui-user.bat
index e5a257be..1ba2116d 100644
--- a/webui-user.bat
+++ b/webui-user.bat
@@ -1,8 +1,8 @@
@echo off
-
+set TEMP=G:\SD-temp
set PYTHON=
set GIT=
set VENV_DIR=
-set COMMANDLINE_ARGS=
+set COMMANDLINE_ARGS= --xformers
call webui.bat