aboutsummaryrefslogtreecommitdiff
path: root/proposals/reindex.py
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2023-10-10 11:56:35 -0400
committerNick Mathewson <nickm@torproject.org>2023-10-10 11:56:35 -0400
commitf7098acc43ac71ae0bf8ab1fbc4b1386adeb17ba (patch)
tree9826a7ffe761e8293e3aabda08eaab93d9272e9f /proposals/reindex.py
parent0f16f7fc156a6354e86d529b31af483fb45f0b20 (diff)
downloadtorspec-f7098acc43ac71ae0bf8ab1fbc4b1386adeb17ba.tar.gz
torspec-f7098acc43ac71ae0bf8ab1fbc4b1386adeb17ba.zip
hack reindex.py to generate a SUMMARY.md file for mdbook.
Diffstat (limited to 'proposals/reindex.py')
-rwxr-xr-xproposals/reindex.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/proposals/reindex.py b/proposals/reindex.py
index 72b1234..aecf7eb 100755
--- a/proposals/reindex.py
+++ b/proposals/reindex.py
@@ -98,6 +98,8 @@ def checkProposal(fn, fields):
for f in [ 'Implemented-In', 'Target' ]:
if f in fields: del fields[f]
+ fields['FilenameTruncated'] = os.path.splitext(fields['Filename'])[0]
+
def readProposals():
res = []
for fn in os.listdir(DIR):
@@ -152,6 +154,9 @@ def formatMarkdownEntry(prop, withStatus=False):
fmt = "* [`{Filename}`](/proposals/{Filename}): {Title}\n"
return fmt.format(**prop)
+def formatSummaryEntry(prop):
+ return " - [`{FilenameTruncated}`](./{Filename}): {Title} ({Status})\n".format(**prop)
+
def writeMarkdownFile(prefix, format_inputs):
template = prefix+"_template.md"
output = prefix+".md"
@@ -161,7 +166,7 @@ def writeMarkdownFile(prefix, format_inputs):
f.write(content)
def writeMarkdownIndexFiles(proposals):
- markdown_files = [ "README", "BY_INDEX" ]
+ markdown_files = [ "README", "BY_INDEX", "SUMMARY" ]
format_inputs = {}
format_inputs['warning'] = "<!-- DO NOT EDIT THIS FILE -->"
@@ -171,6 +176,11 @@ def writeMarkdownIndexFiles(proposals):
entries.append(formatMarkdownEntry(prop, withStatus=True))
format_inputs["BY_INDEX"] = "".join(entries)
+ entries = []
+ for prop in proposals:
+ entries.append(formatSummaryEntry(prop))
+ format_inputs["SUMMARY_TABLE"] = "".join(entries)
+
for s in STATUSES:
entries = []
for prop in proposals: