Modify ↓
#5 closed defect (fixed)
Skip over headers appearing in wiki-escaped blocks
Reported by: | Owned by: | Alec Thomas | |
---|---|---|---|
Priority: | normal | Component: | TocMacro |
Severity: | minor | Keywords: | toc macro code example bug |
Cc: | sns@… | Trac Release: |
Description
For example, the header example on the WikiFormatting page confuses the parser. I have a fix but don't have any great way to communicate it. (I'd supply a diff, but I've already made some unrelated changes which would obscure the relevant changes.) Below is what the relevant portion of my version of TOC.py looks like:
def parse_toc(env, out, page, body): depth = 1 in_example = False for line in body.splitlines(): line = escape(line) # Skip over wiki-escaped code, e.g. code examples if in_example: if line == '}}}': in_example = False else: continue if line == '{{{': in_example = True continue # If we're not in an example block, check for list stuff match = rules.match(line) if match:
You'll recognize the top couple of lines and the bottom couple of lines, beyond which there were no changes. This bit of code fixes the problem on the WikiFormatting page's TOC without any obvious negative side-effects.
I hope this was an appropriate way of communicating the problem!
Attachments (0)
Note: See
TracTickets for help on using
tickets.
Resolved by [12].