Support setting target directory in `hugo gen man` - hugo - [fork] hugo port for 9front
 (HTM) git clone git@git.drkhsh.at/hugo.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 50b5d0af29698f8866d55b8dac4da60276784d14
 (DIR) parent 09379e893e2849cb7e86b0ea2f205e70b45a4b14
 (HTM) Author: Anthony Fok <foka@debian.org>
       Date:   Sat, 28 Nov 2015 07:32:02 -0700
       
       Support setting target directory in `hugo gen man`
       
       Fixes #1627
       
       Diffstat:
         M commands/genman.go                  |      19 +++++++++++++++++--
       
       1 file changed, 17 insertions(+), 2 deletions(-)
       ---
 (DIR) diff --git a/commands/genman.go b/commands/genman.go
       @@ -2,12 +2,15 @@ package commands
        
        import (
                "fmt"
       +        "strings"
        
                "github.com/spf13/cobra"
                "github.com/spf13/hugo/helpers"
       +        "github.com/spf13/hugo/hugofs"
                jww "github.com/spf13/jwalterweatherman"
        )
        
       +var genmandir string
        var genmanCmd = &cobra.Command{
                Use:   "man",
                Short: "Generate man pages for the Hugo CLI",
       @@ -16,15 +19,27 @@ 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()),
                        }
       +                if !strings.HasSuffix(genmandir, helpers.FilePathSeparator) {
       +                        genmandir += helpers.FilePathSeparator
       +                }
       +                if found, _ := helpers.Exists(genmandir, hugofs.OsFs); !found {
       +                        jww.FEEDBACK.Println("Directory", genmandir, "does not exist, creating...")
       +                        hugofs.OsFs.MkdirAll(genmandir, 0777)
       +                }
       +                cmd.Root().DisableAutoGenTag = true
       +
                        jww.FEEDBACK.Println("Generating Hugo man pages in", genmandir, "...")
                        cmd.Root().GenManTree(header, genmandir)
       +
                        jww.FEEDBACK.Println("Done.")
                },
        }
       +
       +func init() {
       +        genmanCmd.PersistentFlags().StringVar(&genmandir, "dir", "man/", "the directory to write the man pages.")
       +}