Core: Fix Template Yamls for games with colon in name (#4106)
* add quotes around strings containing {{ game }}
* do the actually correct thing instead of a hack
thanks berserker66 for pointing out to me that I was doing this the
completly wrong way, so I fixed it up
* Clean up filenames to prevent illegal chars
* Use %s substitution instead of concatenation
* whoops
somehow i removed a space from the comment for the regex, so this adds
it back
* Use pre-existing function in Utils.py
* Test: add test for option yaml with colon
---------
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
This commit is contained in:
@@ -15,7 +15,7 @@ from dataclasses import dataclass
|
||||
from schema import And, Optional, Or, Schema
|
||||
from typing_extensions import Self
|
||||
|
||||
from Utils import get_fuzzy_results, is_iterable_except_str, output_path
|
||||
from Utils import get_file_safe_name, get_fuzzy_results, is_iterable_except_str, output_path
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
from BaseClasses import MultiWorld, PlandoOptions
|
||||
@@ -1531,7 +1531,7 @@ def generate_yaml_templates(target_folder: typing.Union[str, "pathlib.Path"], ge
|
||||
|
||||
del file_data
|
||||
|
||||
with open(os.path.join(target_folder, game_name + ".yaml"), "w", encoding="utf-8-sig") as f:
|
||||
with open(os.path.join(target_folder, get_file_safe_name(game_name) + ".yaml"), "w", encoding="utf-8-sig") as f:
|
||||
f.write(res)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user