diff --git a/cmd/tools/vdoc/vdoc.v b/cmd/tools/vdoc/vdoc.v index 5527595782..4c9cc501c4 100644 --- a/cmd/tools/vdoc/vdoc.v +++ b/cmd/tools/vdoc/vdoc.v @@ -403,8 +403,12 @@ fn doc_node_html(dd doc.DocNode, link string, head bool, tb &table.Table) string hlighted_code := html_highlight(dd.content, tb) node_class := if dd.kind == .const_group { ' const' } else { '' } sym_name := get_sym_name(dd) - node_id := if head { 'head_' + get_node_id(dd) } else { get_node_id(dd) } - hash_link := if !head { ' #' } else { '' } + mut node_id := get_node_id(dd) + mut hash_link := if !head { ' #' } else { '' } + if head && is_module_readme(dd) { + node_id = 'readme_$node_id' + hash_link = ' #' + } dnw.writeln('${tabs[1]}
') if dd.name.len > 0 { if dd.kind == .const_group { @@ -457,7 +461,7 @@ fn (cfg DocConfig) readme_idx() int { return -1 } -fn write_toc(dn doc.DocNode, nodes []doc.DocNode, mut toc strings.Builder) { +fn write_toc(dn doc.DocNode, mut toc strings.Builder) { mut toc_slug := if dn.name.len == 0 || dn.content.len == 0 { '' } else { slug(dn.name) } if toc_slug == '' && dn.children.len > 0 { if dn.children[0].name == '' { @@ -466,7 +470,9 @@ fn write_toc(dn doc.DocNode, nodes []doc.DocNode, mut toc strings.Builder) { toc_slug = slug(dn.name + '.' + dn.children[0].name) } } - if dn.name != 'Constants' { + if is_module_readme(dn) { + toc.write('
  • README') + } else if dn.name != 'Constants' { toc.write('
  • $dn.kind $dn.name') toc.writeln('