diff --git a/cmd/tools/vdoc/html.v b/cmd/tools/vdoc/html.v index 9832108e507e9a..d50d803c9bdc1f 100644 --- a/cmd/tools/vdoc/html.v +++ b/cmd/tools/vdoc/html.v @@ -13,13 +13,16 @@ import v.pref import v.util { tabs } const ( - css_js_assets = ['doc.css', 'normalize.css', 'doc.js', 'dark-mode.js'] - default_theme = os.resource_abs_path('theme') - link_svg = '' + css_js_assets = ['doc.css', 'normalize.css', 'doc.js', 'dark-mode.js'] + default_theme = os.resource_abs_path('theme') + link_svg = '' - single_quote = "'" - double_quote = '"' - no_quotes_replacement = [single_quote, '', double_quote, ''] + single_quote = "'" + double_quote = '"' + no_quotes_replacement = [single_quote, '', double_quote, ''] + + html_tag_escape_replacement = ['<', '<', '>', '>'] + html_tag_escape_re = regex.regex_opt(r'`.+[(<)(>)].+`') or { panic(err) } ) enum HighlightTokenTyp { @@ -450,8 +453,8 @@ fn doc_node_html(dn doc.DocNode, link string, head bool, include_examples bool, } fn html_tag_escape(str string) string { - escaped_string := str.replace_each(['<', '<', '>', '>']) - mut re := regex.regex_opt(r'`.+[(<)(>)].+`') or { regex.RE{} } + escaped_string := str.replace_each(html_tag_escape_replacement) + mut re := html_tag_escape_re if re.find_all_str(escaped_string).len > 0 { return str }