cmd/doc: add support for generating package index

Signed-off-by: Sam Alba <sam.alba@gmail.com>
This commit is contained in:
Sam Alba 2021-06-22 17:43:46 +02:00
parent b1d52254b1
commit 6ff2fed960

View File

@ -365,6 +365,14 @@ func walkStdlib(ctx context.Context, output, format string) {
return false return false
} }
// Create main index
index, err := os.Create(path.Join(output, "README.md"))
if err != nil {
lg.Fatal().Err(err).Msg("cannot generate stdlib doc index")
}
defer index.Close()
fmt.Fprintf(index, "# Index\n\n")
for p, pkg := range packages { for p, pkg := range packages {
filename := fmt.Sprintf("%s.%s", p, format) filename := fmt.Sprintf("%s.%s", p, format)
// If this package has sub-packages (e.g. `aws`), create // If this package has sub-packages (e.g. `aws`), create
@ -384,6 +392,8 @@ func walkStdlib(ctx context.Context, output, format string) {
} }
defer f.Close() defer f.Close()
// FIXME: sort packages by name
fmt.Fprintf(index, "- [%s](./%s)\n", p, filename)
fmt.Fprintf(f, "%s", pkg.Format(format)) fmt.Fprintf(f, "%s", pkg.Format(format))
} }
} }