ref: c14e7b10d0384bf648f849f40cc6a11d9453c412
parent: d6f81c7346c126d0b321146cbd007a0d6e036019
author: bep <[email protected]>
date: Sun Feb 1 17:05:47 EST 2015
Add 'config' command to list site configuration Fixes #871
--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -68,6 +68,7 @@
func AddCommands() {
HugoCmd.AddCommand(serverCmd)
HugoCmd.AddCommand(version)
+ HugoCmd.AddCommand(config)
HugoCmd.AddCommand(check)
HugoCmd.AddCommand(benchmark)
HugoCmd.AddCommand(convertCmd)
--- /dev/null
+++ b/commands/list_config.go
@@ -1,0 +1,39 @@
+// Copyright © 2013-14 Steve Francia <[email protected]>.
+//
+// Licensed under the Simple Public License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://opensource.org/licenses/Simple-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.Print the version number of Hug
+
+package commands
+
+import (
+ "fmt"
+ "github.com/spf13/cobra"
+ "github.com/spf13/viper"
+ "sort"
+)
+
+var config = &cobra.Command{
+ Use: "config",
+ Short: "Print the site configuration",
+ Long: `Print the site configuration, both default and custom settings`,
+ Run: func(cmd *cobra.Command, args []string) {
+ InitializeConfig()
+ allSettings := viper.AllSettings()
+ var keys []string
+ for k := range allSettings {
+ keys = append(keys, k)
+ }
+ sort.Strings(keys)
+ for _, k := range keys {
+ fmt.Printf("%s: %+v\n", k, allSettings[k])
+ }
+ },
+}