diff --git a/www/extract-section-titles.py b/www/extract-section-titles.py new file mode 100755 index 00000000..ad0e608b --- /dev/null +++ b/www/extract-section-titles.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python +""" +Extract and print level 1 and 2 titles from workshop slides. +""" + +with open("htdocs/index.html", "r") as f: + data = f.read() + +# @jpetazzo abuses "class: title" to make a point sometimes +skip = [ + "Why?", + "---", + "But ...", + "WHY?!?", +] + +# Ditch linebreaks from main section titles +replace = [ + "
", +] + +# remove blank lines +sections = [x for x in data.split('\n') if x] # and x not in skip] +sections = "\n".join(sections) +sections = sections.split('class: title') +del(sections[0]) # delete the CSS frontmatter + +for section in sections: + lines = [x for x in section.split("\n") if x] + + if lines[0] not in skip: + title = lines[0] + title = title.replace("
", "") + title = title.replace("# ", "") + del(lines[0]) + print("{}".format(title)) + + titles = [x[2:] for x in lines if x.startswith("# ")] + for title in titles: + print("\t{}".format(title))