ref: 098a0c819af2575628690517f4bd40253d7436d7
parent: 8727475596bc873e1cab203f5c006927671936e0
author: Anthony Fok <[email protected]>
date: Sun Nov 22 04:19:54 EST 2015
Add commands/genman.go to autogenerate man pages Fixes #1369
--- /dev/null
+++ b/commands/genman.go
@@ -1,0 +1,30 @@
+package commands
+
+import (
+ "fmt"
+
+ "github.com/spf13/cobra"
+ "github.com/spf13/hugo/helpers"
+ jww "github.com/spf13/jwalterweatherman"
+)
+
+var genmanCmd = &cobra.Command{
+ Use: "genman",
+ Short: "Generate man pages for the Hugo CLI",
+ Long: `This command automatically generates up-to-date man pages of Hugo's
+command-line interface. By default, it creates the man page files
+in the "man" directory under the current directory.`,
+
+ Run: func(cmd *cobra.Command, args []string) {
+ genmandir := "man/"
+ cmd.Root().DisableAutoGenTag = true
+ header := &cobra.GenManHeader{
+ Section: "1",
+ Manual: "Hugo Manual",
+ Source: fmt.Sprintf("Hugo %s", helpers.HugoVersion()),
+ }
+ jww.FEEDBACK.Println("Generating Hugo man pages in", genmandir, "...")
+ cmd.Root().GenManTree(header, genmandir)
+ jww.FEEDBACK.Println("Done.")
+ },
+}
--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -88,6 +88,7 @@
HugoCmd.AddCommand(undraftCmd)
HugoCmd.AddCommand(genautocompleteCmd)
HugoCmd.AddCommand(gendocCmd)
+ HugoCmd.AddCommand(genmanCmd)
HugoCmd.AddCommand(importCmd)
}