diff --git a/src/wireviz/wv_html.py b/src/wireviz/wv_html.py
index 09bba26..73881f8 100644
--- a/src/wireviz/wv_html.py
+++ b/src/wireviz/wv_html.py
@@ -29,7 +29,6 @@ def generate_html_output(filename: Union[str, Path], bom_list: List[List[str]],
'^<[?]xml [^?>]*[?]>[^<]*]*>',
'',
svgdata, 1)
- html = html.replace('', svgdata)
# generate BOM table
bom = flatten2d(bom_list)
@@ -54,33 +53,34 @@ def generate_html_output(filename: Union[str, Path], bom_list: List[List[str]],
bom_html = '
\n' + bom_header_html + ''.join(bom_contents) + '
\n'
bom_html_reversed = '\n' + ''.join(list(reversed(bom_contents))) + bom_header_html + '
\n'
- # insert BOM table
- html = html.replace('', bom_html)
- html = html.replace('', bom_html_reversed)
+ # prepare simple replacements
+ replacements = {
+ '': f'{APP_NAME} {__version__} - {APP_URL}',
+ '': svgdata,
+ '': bom_html,
+ '': bom_html_reversed,
+ '': '1', # TODO: handle multi-page documents
+ '': '1', # TODO: handle multi-page documents
+ }
- # insert generator
- html = html.replace('', f'{APP_NAME} {__version__} - {APP_URL}')
-
- # insert other metadata
+ # prepare metadata replacements
if metadata:
-
- html = html.replace(f'"sheetsize_default"', '"{}"'.format(metadata.get('template',{}).get('sheetsize', ''))) # include quotes so no replacement happens within