From 7377037c1a70a8ad491f740acfe953e604bb340b Mon Sep 17 00:00:00 2001 From: Benjamin Bohard Date: Fri, 4 Sep 2020 11:01:38 +0200 Subject: [PATCH] Filter out some slides --- setup_main_tex_file.py | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/setup_main_tex_file.py b/setup_main_tex_file.py index 243feef..2326198 100755 --- a/setup_main_tex_file.py +++ b/setup_main_tex_file.py @@ -212,6 +212,25 @@ def main(): else: return [] + def filter_outlines(headers_list, max_level=None): + filtered_outlines = [] + buffered_header = None + default_max_level = max([hl[1] for hl in headers_list]) + if not max_level: + max_level = default_max_level + temp_max_level = default_max_level + filtered_out = ['Pratique', 'Plan', 'Licence du document'] + + for header in headers_list: + if header[1] <= min(max_level, default_max_level, temp_max_level): + if header[2] in filtered_out: + temp_max_level = header[1] + 1 + continue + else: + temp_max_level = default_max_level + filtered_outlines.append(header) + return filtered_outlines + def outline_format(headers_list): levels = list(set([hl[1] for hl in headers_list])) levels.sort() @@ -234,12 +253,11 @@ def main(): sections = section_re.finditer(master) subsections = subsection_re.finditer(master) includes = SKBINPUT_RE.finditer(master) - print(document_class) parts_list = [(part.start(), part_level, part.group('name')) for part in parts] sections_list = [(section.start(), section_level, section.group('name')) for section in sections] includes_list = [element for skbinput in includes for element in outline_from_include(file_path_from_skbinput(skbinput, args.master, skbconfig), skbinput.start(), document_class)] subsections_list = [(subsection.start(), subsection_level, subsection.group('name')) for subsection in subsections] - print(outline_format(reorder_lists(parts_list, sections_list, includes_list, subsections_list))) + print(outline_format(filter_outlines(reorder_lists(parts_list, sections_list, includes_list, subsections_list)))) jinja_loader = FileSystemLoader('./templates')