in src/grammar.py [0:0]
def get_grammar(build_mode: bool):
data = []
grammar_file = path.join(path.dirname(path.dirname(__file__)), 'grammar.xml')
if not os.path.isfile(grammar_file):
if build_mode:
raise FileNotFoundError("Grammar file %s not found" % grammar_file)
else:
print("Grammar page is NOT included. No file ", grammar_file)
return []
grammar_xml = ElementTree(file=grammar_file).getroot()
for grammar_set in grammar_xml:
result_set = {
'file-name': grammar_set.attrib['file-name'],
'content': []
}
for node in grammar_set:
if node.tag == 'doc':
result_set['content'].append({
'type': 'comment',
'content': customized_markdown(node.text)
})
elif node.tag == 'item':
result_set['content'].append(_get_item_content(node))
data.append(result_set)
return data