From 1e80e47b799b77c377d977bc7f982fa33bef8324 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20D=C3=A4schle?= Date: Thu, 2 Nov 2023 10:52:34 +0100 Subject: [PATCH] doc: fix duplication in toc (#19726) --- cmd/tools/vdoc/html.v | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/cmd/tools/vdoc/html.v b/cmd/tools/vdoc/html.v index 11b385839d..a963f8f376 100644 --- a/cmd/tools/vdoc/html.v +++ b/cmd/tools/vdoc/html.v @@ -210,13 +210,14 @@ fn (vd VDoc) gen_html(d doc.Doc) string { } // write nav1 if cfg.is_multi || vd.docs.len > 1 { - mut submod_prefix := '' + mut used_submod_prefix := []string{} for i, dc in vd.docs { - if i - 1 >= 0 && dc.head.name.starts_with(submod_prefix + '.') { + names := dc.head.name.split('.') + submod_prefix := if names.len > 1 { names[0] } else { dc.head.name } + if i - 1 >= 0 && submod_prefix in used_submod_prefix { continue } - names := dc.head.name.split('.') - submod_prefix = if names.len > 1 { names[0] } else { dc.head.name } + used_submod_prefix << submod_prefix mut href_name := './${dc.head.name}.html' if (cfg.is_vlib && dc.head.name == 'builtin' && !cfg.include_readme) || dc.head.name == 'README' {