fix: generate long desc and examples for root command

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
This commit is contained in:
David Karlsson 2024-04-12 14:06:40 +02:00
Родитель c6cc9a5c3f
Коммит ea2c7ca089
1 изменённых файлов: 23 добавлений и 23 удалений

Просмотреть файл

@ -88,33 +88,33 @@ func (c *Client) GenAllTree() error {
} }
// loadLongDescription gets long descriptions and examples from markdown. // loadLongDescription gets long descriptions and examples from markdown.
func (c *Client) loadLongDescription(parentCmd *cobra.Command, generator string) error { func (c *Client) loadLongDescription(cmd *cobra.Command, generator string) error {
for _, cmd := range parentCmd.Commands() {
if cmd.HasSubCommands() { if cmd.HasSubCommands() {
if err := c.loadLongDescription(cmd, generator); err != nil { for _, sub := range cmd.Commands() {
if err := c.loadLongDescription(sub, generator); err != nil {
return err return err
} }
} }
}
name := cmd.CommandPath() name := cmd.CommandPath()
if i := strings.Index(name, " "); i >= 0 { if i := strings.Index(name, " "); i >= 0 {
// remove root command / binary name // remove root command / binary name
name = name[i+1:] name = name[i+1:]
} }
if name == "" { if name == "" {
continue return nil
} }
mdFile := strings.ReplaceAll(name, " ", "_") + ".md" mdFile := strings.ReplaceAll(name, " ", "_") + ".md"
sourcePath := filepath.Join(c.source, mdFile) sourcePath := filepath.Join(c.source, mdFile)
content, err := os.ReadFile(sourcePath) content, err := os.ReadFile(sourcePath)
if os.IsNotExist(err) { if os.IsNotExist(err) {
log.Printf("WARN: %s does not exist, skipping Markdown examples for %s docs\n", mdFile, generator) log.Printf("WARN: %s does not exist, skipping Markdown examples for %s docs\n", mdFile, generator)
continue return nil
} }
if err != nil { if err != nil {
return err return err
} }
applyDescriptionAndExamples(cmd, string(content)) applyDescriptionAndExamples(cmd, string(content))
}
return nil return nil
} }