github.com/neilgarb/delve@v1.9.2-nobreaks/_scripts/gen-usage-docs.go (about)

     1  //go:build ignore
     2  // +build ignore
     3  
     4  package main
     5  
     6  import (
     7  	"fmt"
     8  	"log"
     9  	"os"
    10  	"path/filepath"
    11  
    12  	"github.com/go-delve/delve/cmd/dlv/cmds"
    13  	"github.com/spf13/cobra/doc"
    14  )
    15  
    16  const defaultUsageDir = "./Documentation/usage"
    17  
    18  func main() {
    19  	usageDir := defaultUsageDir
    20  	if len(os.Args) > 1 {
    21  		usageDir = os.Args[1]
    22  	}
    23  	root := cmds.New(true)
    24  	doc.GenMarkdownTree(root, usageDir)
    25  	// GenMarkdownTree ignores additional help topic commands, so we have to do this manually
    26  	for _, cmd := range root.Commands() {
    27  		if cmd.Run == nil {
    28  			doc.GenMarkdownTree(cmd, usageDir)
    29  		}
    30  	}
    31  	fh, err := os.OpenFile(filepath.Join(usageDir, "dlv.md"), os.O_APPEND|os.O_WRONLY, 0)
    32  	if err != nil {
    33  		log.Fatalf("appending to dlv.md: %v", err)
    34  	}
    35  	defer fh.Close()
    36  	fmt.Fprintln(fh, "* [dlv log](dlv_log.md)\t - Help about logging flags")
    37  	fmt.Fprintln(fh, "* [dlv backend](dlv_backend.md)\t - Help about the `--backend` flag")
    38  }