logging.info("Parsing configuration from {}".format(doxyfile))
comment_re = re.compile(r"""^\s*(#.*)?$""")
- variable_re = re.compile(r"""^\s*(?P<key>[A-Z0-9_@]+)\s*=\s*(?P<quote>"?)(?P<value>.*)(?P=quote)\s*(?P<backslash>\\?)$""")
- variable_continuation_re = re.compile(r"""^\s*(?P<key>[A-Z_]+)\s*\+=\s*(?P<quote>"?)(?P<value>.*)(?P=quote)\s*(?P<backslash>\\?)$""")
+ variable_re = re.compile(r"""^\s*(?P<key>[A-Z0-9_@]+)\s*=\s*(?P<quote>['"]?)(?P<value>.*)(?P=quote)\s*(?P<backslash>\\?)$""")
+ variable_continuation_re = re.compile(r"""^\s*(?P<key>[A-Z_]+)\s*\+=\s*(?P<quote>['"]?)(?P<value>.*)(?P=quote)\s*(?P<backslash>\\?)$""")
continuation_re = re.compile(r"""^\s*(?P<quote>['"]?)(?P<value>.*)(?P=quote)\s*(?P<backslash>\\?)$""")
# Defaults so we don't fail with minimal Doxyfiles and also that the
else:
backslash = False
- return [i.replace('\\"', '"') for i in out], backslash
+ return [i.replace('\\"', '"').replace('\\\'', '\'') for i in out], backslash
with open(doxyfile) as f:
continued_line = None
# Adding
HTML_EXTRA_STYLESHEET = a.css
HTML_EXTRA_STYLESHEET += b.css
+
+# Escaping
+M_PAGE_HEADER = 'this is "quotes" \'apostrophes\''
+M_PAGE_FINE_PRINT = "this is \"quotes\""
'M_CLASS_TREE_EXPAND_LEVELS': 1,
'M_EXPAND_INNER_TYPES': False,
'M_FILE_TREE_EXPAND_LEVELS': 1,
+ 'M_PAGE_FINE_PRINT': 'this is "quotes"',
+ 'M_PAGE_HEADER': 'this is "quotes" \'apostrophes\'',
'M_SHOW_DOXYGEN_VERSION': True,
'M_THEME_COLOR': '#22272e',
'OUTPUT_DIRECTORY': '',