aboutsummaryrefslogtreecommitdiffhomepage
path: root/docshelper
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <[email protected]>2017-04-05 16:18:53 +0200
committerBjørn Erik Pedersen <[email protected]>2017-04-07 10:52:16 +0200
commit3c405f5172a6081483c9e5f4264a4d60e60bc8ac (patch)
treedbf2651314bfba7d6b8a8eaeb9f4acdd7814de5f /docshelper
parent95808724595ab97042c204f3d92ea5c2929a8241 (diff)
downloadhugo-3c405f5172a6081483c9e5f4264a4d60e60bc8ac.tar.gz
hugo-3c405f5172a6081483c9e5f4264a4d60e60bc8ac.zip
all: Document the Output Formats feature
This commit also adds a new command, docshelper, with some utility funcs that adds a JSON datafiles to /docs/data that would be a pain to create and maintain by hand. Fixes #3242
Diffstat (limited to 'docshelper')
-rw-r--r--docshelper/docs.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/docshelper/docs.go b/docshelper/docs.go
new file mode 100644
index 000000000..3de350f61
--- /dev/null
+++ b/docshelper/docs.go
@@ -0,0 +1,32 @@
+// Copyright 2017-present The Hugo Authors. All rights reserved.
+//
+// Licensed under the Apache 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://www.apache.org/licenses/LICENSE-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.
+
+// Package docshelper provides some helpers for the Hugo documentation, and
+// is of limited interest for the general Hugo user.
+package docshelper
+
+import (
+ "encoding/json"
+)
+
+var DocProviders = make(map[string]DocProvider)
+
+func AddDocProvider(name string, provider DocProvider) {
+ DocProviders[name] = provider
+}
+
+type DocProvider func() map[string]interface{}
+
+func (d DocProvider) MarshalJSON() ([]byte, error) {
+ return json.MarshalIndent(d(), "", " ")
+}