mirror of
https://github.com/neilotoole/sq.git
synced 2024-12-26 09:44:18 +03:00
35 lines
718 B
Go
35 lines
718 B
Go
|
package cli
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
|
||
|
mcobra "github.com/muesli/mango-cobra"
|
||
|
"github.com/muesli/roff"
|
||
|
"github.com/spf13/cobra"
|
||
|
)
|
||
|
|
||
|
func newManCmd() *cobra.Command {
|
||
|
cmd := &cobra.Command{
|
||
|
Use: "man",
|
||
|
Short: "Generate man pages",
|
||
|
SilenceUsage: true,
|
||
|
DisableFlagsInUseLine: true,
|
||
|
Hidden: true,
|
||
|
Args: cobra.NoArgs,
|
||
|
RunE: execGenerateMan,
|
||
|
}
|
||
|
|
||
|
return cmd
|
||
|
}
|
||
|
|
||
|
func execGenerateMan(cmd *cobra.Command, args []string) error {
|
||
|
rc := RunContextFrom(cmd.Context())
|
||
|
manPage, err := mcobra.NewManPage(1, cmd.Root())
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
_, err = fmt.Fprint(rc.Out, manPage.Build(roff.NewDocument()))
|
||
|
return err
|
||
|
}
|