mirror of
https://github.com/FAUSheppy/homelab_gamevault
synced 2025-12-06 23:11:36 +01:00
32 lines
846 B
Python
32 lines
846 B
Python
import jinja2
|
|
import os
|
|
|
|
def render_path(path, install_location, game_directory,):
|
|
|
|
# sanity check input path #
|
|
if not path.endswith(".reg.j2"):
|
|
raise NotImplementedError("Path must end in .reg.j2 for Jinja-Module")
|
|
|
|
# build result path #
|
|
result_path = path[:-len(".j2")]
|
|
|
|
# prepare template #
|
|
input_content = ""
|
|
with open(path, encoding="utf-16") as f:
|
|
input_content = f.read()
|
|
|
|
template = jinja2.Template(input_content)
|
|
print("in", input_content)
|
|
|
|
# render #
|
|
output_content = template.render(
|
|
install_dir=install_location.replace("\\", "\\\\"),
|
|
user_home=os.path.expanduser("~").replace("\\", "\\\\")
|
|
)
|
|
|
|
# save new file #
|
|
with open(result_path, "w", encoding="utf-16") as f:
|
|
f.write(output_content)
|
|
|
|
print(output_content)
|
|
return result_path |