def get_grammar()

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