Improved wildcards implementation (using same wildcard multiple times will now return different values)
This commit is contained in:
parent
1eaf7796da
commit
4dc3bd8b67
@ -1 +1 @@
|
||||
version = '2.1.695'
|
||||
version = '2.1.696'
|
||||
|
||||
@ -100,11 +100,12 @@ def apply_style(style, positive):
|
||||
|
||||
def apply_wildcards(wildcard_text, seed=None, directory=wildcards_path):
|
||||
placeholders = re.findall(r'__(\w+)__', wildcard_text)
|
||||
rng = random.Random(seed)
|
||||
for placeholder in placeholders:
|
||||
try:
|
||||
words = open(os.path.join(directory, f'{placeholder}.txt'), encoding='utf-8').read().splitlines()
|
||||
words = [x for x in words if x != '']
|
||||
wildcard_text = wildcard_text.replace(f'__{placeholder}__', random.Random(seed).choice(words))
|
||||
wildcard_text = wildcard_text.replace(f'__{placeholder}__', rng.choice(words), 1)
|
||||
except IOError:
|
||||
print(f'Error: could not open wildcard file {placeholder}.txt, using as normal word.')
|
||||
wildcard_text = wildcard_text.replace(f'__{placeholder}__', placeholder)
|
||||
|
||||
@ -1,3 +1,7 @@
|
||||
# 2.1.696
|
||||
|
||||
* Improved wildcards implementation (using same wildcard multiple times will now return different values).
|
||||
|
||||
**(2023 Oct 18) Again, the feature updating of Fooocus will be paused for about two or three weeks because we have some other workloads - we will come back in early or mid November. However, you may still see updates if other collaborators are fixing bugs or solving problems.**
|
||||
|
||||
# 2.1.695 (requested emergency bug fix)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user