diff options
Diffstat (limited to 'lib/packages/docutils/rstgen.nim')
-rw-r--r-- | lib/packages/docutils/rstgen.nim | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/packages/docutils/rstgen.nim b/lib/packages/docutils/rstgen.nim index 57bc00fcb..ec9926863 100644 --- a/lib/packages/docutils/rstgen.nim +++ b/lib/packages/docutils/rstgen.nim @@ -591,10 +591,16 @@ proc readIndexDir*(dir: string): if path.endsWith(IndexExt): var (fileEntries, title) = parseIdxFile(path) # Depending on type add this to the list of symbols or table of APIs. - if title.kind == ieNimTitle: + if title.kind in {ieNimTitle, ieIdxRole}: for i in 0 ..< fileEntries.len: - if fileEntries[i].kind != ieNim: - continue + if title.kind == ieIdxRole: + # Don't add to symbols TOC entries (they start with a whitespace). + let toc = fileEntries[i].linkTitle + if toc.len > 0 and toc[0] == ' ': + continue + else: + if fileEntries[i].kind != ieNim: + continue # Ok, non TOC entry, add it. setLen(result.symbols, L + 1) result.symbols[L] = fileEntries[i] |