shithub: hugo

Download patch

ref: aee2b06780858c12d8cb04c7b1ba592543410aa9
parent: c1a5da9777adb81ad170a9391210dbfd047c4e48
author: Max Rydahl Andersen <[email protected]>
date: Thu Jul 27 18:36:22 EDT 2017

Add --debug option to be improved on over time

Why:

 * first time using hugo I got very little info from --verbose output
   but I noticed there is quite a lot of useful DEBUG logging
 * asked for in other issues like https://github.com/gohugoio/hugo/issues/3514

This change addreses the need by:

 * adding a simple --debug flag which simply turns on debug level in stdout
   and logoutput if enabled.

--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -143,6 +143,7 @@
 	renderToMemory bool // for benchmark testing
 	verbose        bool
 	verboseLog     bool
+	debug          bool
 	quiet          bool
 )
 
@@ -263,6 +264,7 @@
 // init initializes flags.
 func init() {
 	HugoCmd.PersistentFlags().BoolVarP(&verbose, "verbose", "v", false, "verbose output")
+	HugoCmd.PersistentFlags().BoolVarP(&debug, "debug", "", false, "debug output")
 	HugoCmd.PersistentFlags().BoolVar(&logging, "log", false, "enable Logging")
 	HugoCmd.PersistentFlags().StringVar(&logFile, "logFile", "", "log File path (if set, logging enabled automatically)")
 	HugoCmd.PersistentFlags().BoolVar(&verboseLog, "verboseLog", false, "verbose logging")
@@ -432,8 +434,15 @@
 		stdoutThreshold = jww.LevelInfo
 	}
 
+	if cfg.GetBool("debug") {
+		stdoutThreshold = jww.LevelDebug
+	}
+
 	if verboseLog {
 		logThreshold = jww.LevelInfo
+		if cfg.GetBool("debug") {
+			logThreshold = jww.LevelDebug
+		}
 	}
 
 	// The global logger is used in some few cases.
@@ -446,7 +455,7 @@
 }
 
 func (c *commandeer) initializeFlags(cmd *cobra.Command) {
-	persFlagKeys := []string{"verbose", "logFile"}
+	persFlagKeys := []string{"debug", "verbose", "logFile"}
 	flagKeys := []string{
 		"cleanDestinationDir",
 		"buildDrafts",
--- a/hugolib/config.go
+++ b/hugolib/config.go
@@ -132,4 +132,5 @@
 	v.SetDefault("enableGitInfo", false)
 	v.SetDefault("ignoreFiles", make([]string, 0))
 	v.SetDefault("disableAliases", false)
+	v.SetDefault("debug", false)
 }