Merge branch 'temp51'

This commit is contained in:
Bjørn Erik Pedersen 2018-11-07 12:10:42 +01:00
commit e2ffe867a7
No known key found for this signature in database
GPG Key ID: 330E6E2BD4859D8F
35 changed files with 579 additions and 138 deletions

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo" title: "hugo"
slug: hugo slug: hugo
url: /commands/hugo/ url: /commands/hugo/
@ -74,4 +74,4 @@ hugo [flags]
* [hugo server](/commands/hugo_server/) - A high performance webserver * [hugo server](/commands/hugo_server/) - A high performance webserver
* [hugo version](/commands/hugo_version/) - Print the version number of Hugo * [hugo version](/commands/hugo_version/) - Print the version number of Hugo
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo benchmark" title: "hugo benchmark"
slug: hugo_benchmark slug: hugo_benchmark
url: /commands/hugo_benchmark/ url: /commands/hugo_benchmark/
@ -39,6 +39,7 @@ hugo benchmark [flags]
--ignoreCache ignores the cache directory --ignoreCache ignores the cache directory
-l, --layoutDir string filesystem path to layout directory -l, --layoutDir string filesystem path to layout directory
--memprofile string path/filename for the memory profile file --memprofile string path/filename for the memory profile file
--minify minify any supported output format (HTML, XML etc.)
--noChmod don't sync permission mode of files --noChmod don't sync permission mode of files
--noTimes don't sync modification time of files --noTimes don't sync modification time of files
--renderToMemory render to memory (only useful for benchmark testing) --renderToMemory render to memory (only useful for benchmark testing)
@ -66,4 +67,4 @@ hugo benchmark [flags]
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo check" title: "hugo check"
slug: hugo_check slug: hugo_check
url: /commands/hugo_check/ url: /commands/hugo_check/
@ -35,4 +35,4 @@ Contains some verification checks
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
* [hugo check ulimit](/commands/hugo_check_ulimit/) - Check system ulimit settings * [hugo check ulimit](/commands/hugo_check_ulimit/) - Check system ulimit settings
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo check ulimit" title: "hugo check ulimit"
slug: hugo_check_ulimit slug: hugo_check_ulimit
url: /commands/hugo_check_ulimit/ url: /commands/hugo_check_ulimit/
@ -39,4 +39,4 @@ hugo check ulimit [flags]
* [hugo check](/commands/hugo_check/) - Contains some verification checks * [hugo check](/commands/hugo_check/) - Contains some verification checks
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo config" title: "hugo config"
slug: hugo_config slug: hugo_config
url: /commands/hugo_config/ url: /commands/hugo_config/
@ -39,4 +39,4 @@ hugo config [flags]
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo convert" title: "hugo convert"
slug: hugo_convert slug: hugo_convert
url: /commands/hugo_convert/ url: /commands/hugo_convert/
@ -42,4 +42,4 @@ See convert's subcommands toJSON, toTOML and toYAML for more information.
* [hugo convert toTOML](/commands/hugo_convert_totoml/) - Convert front matter to TOML * [hugo convert toTOML](/commands/hugo_convert_totoml/) - Convert front matter to TOML
* [hugo convert toYAML](/commands/hugo_convert_toyaml/) - Convert front matter to YAML * [hugo convert toYAML](/commands/hugo_convert_toyaml/) - Convert front matter to YAML
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo convert toJSON" title: "hugo convert toJSON"
slug: hugo_convert_toJSON slug: hugo_convert_toJSON
url: /commands/hugo_convert_tojson/ url: /commands/hugo_convert_tojson/
@ -42,4 +42,4 @@ hugo convert toJSON [flags]
* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats * [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo convert toTOML" title: "hugo convert toTOML"
slug: hugo_convert_toTOML slug: hugo_convert_toTOML
url: /commands/hugo_convert_totoml/ url: /commands/hugo_convert_totoml/
@ -42,4 +42,4 @@ hugo convert toTOML [flags]
* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats * [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo convert toYAML" title: "hugo convert toYAML"
slug: hugo_convert_toYAML slug: hugo_convert_toYAML
url: /commands/hugo_convert_toyaml/ url: /commands/hugo_convert_toyaml/
@ -42,4 +42,4 @@ hugo convert toYAML [flags]
* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats * [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo env" title: "hugo env"
slug: hugo_env slug: hugo_env
url: /commands/hugo_env/ url: /commands/hugo_env/
@ -38,4 +38,4 @@ hugo env [flags]
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo gen" title: "hugo gen"
slug: hugo_gen slug: hugo_gen
url: /commands/hugo_gen/ url: /commands/hugo_gen/
@ -38,4 +38,4 @@ A collection of several useful generators.
* [hugo gen doc](/commands/hugo_gen_doc/) - Generate Markdown documentation for the Hugo CLI. * [hugo gen doc](/commands/hugo_gen_doc/) - Generate Markdown documentation for the Hugo CLI.
* [hugo gen man](/commands/hugo_gen_man/) - Generate man pages for the Hugo CLI * [hugo gen man](/commands/hugo_gen_man/) - Generate man pages for the Hugo CLI
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo gen autocomplete" title: "hugo gen autocomplete"
slug: hugo_gen_autocomplete slug: hugo_gen_autocomplete
url: /commands/hugo_gen_autocomplete/ url: /commands/hugo_gen_autocomplete/
@ -56,4 +56,4 @@ hugo gen autocomplete [flags]
* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators. * [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo gen chromastyles" title: "hugo gen chromastyles"
slug: hugo_gen_chromastyles slug: hugo_gen_chromastyles
url: /commands/hugo_gen_chromastyles/ url: /commands/hugo_gen_chromastyles/
@ -43,4 +43,4 @@ hugo gen chromastyles [flags]
* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators. * [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo gen doc" title: "hugo gen doc"
slug: hugo_gen_doc slug: hugo_gen_doc
url: /commands/hugo_gen_doc/ url: /commands/hugo_gen_doc/
@ -45,4 +45,4 @@ hugo gen doc [flags]
* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators. * [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo gen man" title: "hugo gen man"
slug: hugo_gen_man slug: hugo_gen_man
url: /commands/hugo_gen_man/ url: /commands/hugo_gen_man/
@ -41,4 +41,4 @@ hugo gen man [flags]
* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators. * [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo import" title: "hugo import"
slug: hugo_import slug: hugo_import
url: /commands/hugo_import/ url: /commands/hugo_import/
@ -37,4 +37,4 @@ Import requires a subcommand, e.g. `hugo import jekyll jekyll_root_path target_p
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
* [hugo import jekyll](/commands/hugo_import_jekyll/) - hugo import from Jekyll * [hugo import jekyll](/commands/hugo_import_jekyll/) - hugo import from Jekyll
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo import jekyll" title: "hugo import jekyll"
slug: hugo_import_jekyll slug: hugo_import_jekyll
url: /commands/hugo_import_jekyll/ url: /commands/hugo_import_jekyll/
@ -41,4 +41,4 @@ hugo import jekyll [flags]
* [hugo import](/commands/hugo_import/) - Import your site from others. * [hugo import](/commands/hugo_import/) - Import your site from others.
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo list" title: "hugo list"
slug: hugo_list slug: hugo_list
url: /commands/hugo_list/ url: /commands/hugo_list/
@ -40,4 +40,4 @@ List requires a subcommand, e.g. `hugo list drafts`.
* [hugo list expired](/commands/hugo_list_expired/) - List all posts already expired * [hugo list expired](/commands/hugo_list_expired/) - List all posts already expired
* [hugo list future](/commands/hugo_list_future/) - List all posts dated in the future * [hugo list future](/commands/hugo_list_future/) - List all posts dated in the future
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo list drafts" title: "hugo list drafts"
slug: hugo_list_drafts slug: hugo_list_drafts
url: /commands/hugo_list_drafts/ url: /commands/hugo_list_drafts/
@ -39,4 +39,4 @@ hugo list drafts [flags]
* [hugo list](/commands/hugo_list/) - Listing out various types of content * [hugo list](/commands/hugo_list/) - Listing out various types of content
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo list expired" title: "hugo list expired"
slug: hugo_list_expired slug: hugo_list_expired
url: /commands/hugo_list_expired/ url: /commands/hugo_list_expired/
@ -40,4 +40,4 @@ hugo list expired [flags]
* [hugo list](/commands/hugo_list/) - Listing out various types of content * [hugo list](/commands/hugo_list/) - Listing out various types of content
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo list future" title: "hugo list future"
slug: hugo_list_future slug: hugo_list_future
url: /commands/hugo_list_future/ url: /commands/hugo_list_future/
@ -40,4 +40,4 @@ hugo list future [flags]
* [hugo list](/commands/hugo_list/) - Listing out various types of content * [hugo list](/commands/hugo_list/) - Listing out various types of content
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo new" title: "hugo new"
slug: hugo_new slug: hugo_new
url: /commands/hugo_new/ url: /commands/hugo_new/
@ -50,4 +50,4 @@ hugo new [path] [flags]
* [hugo new site](/commands/hugo_new_site/) - Create a new site (skeleton) * [hugo new site](/commands/hugo_new_site/) - Create a new site (skeleton)
* [hugo new theme](/commands/hugo_new_theme/) - Create a new theme * [hugo new theme](/commands/hugo_new_theme/) - Create a new theme
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo new site" title: "hugo new site"
slug: hugo_new_site slug: hugo_new_site
url: /commands/hugo_new_site/ url: /commands/hugo_new_site/
@ -43,4 +43,4 @@ hugo new site [path] [flags]
* [hugo new](/commands/hugo_new/) - Create new content for your site * [hugo new](/commands/hugo_new/) - Create new content for your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo new theme" title: "hugo new theme"
slug: hugo_new_theme slug: hugo_new_theme
url: /commands/hugo_new_theme/ url: /commands/hugo_new_theme/
@ -42,4 +42,4 @@ hugo new theme [name] [flags]
* [hugo new](/commands/hugo_new/) - Create new content for your site * [hugo new](/commands/hugo_new/) - Create new content for your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo server" title: "hugo server"
slug: hugo_server slug: hugo_server
url: /commands/hugo_server/ url: /commands/hugo_server/
@ -54,6 +54,7 @@ hugo server [flags]
--liveReloadPort int port for live reloading (i.e. 443 in HTTPS proxy situations) (default -1) --liveReloadPort int port for live reloading (i.e. 443 in HTTPS proxy situations) (default -1)
--meminterval string interval to poll memory usage (requires --memstats), valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". (default "100ms") --meminterval string interval to poll memory usage (requires --memstats), valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". (default "100ms")
--memstats string log memory usage to this file --memstats string log memory usage to this file
--minify minify any supported output format (HTML, XML etc.)
--navigateToChanged navigate to changed content file on live browser reload --navigateToChanged navigate to changed content file on live browser reload
--noChmod don't sync permission mode of files --noChmod don't sync permission mode of files
--noHTTPCache prevent HTTP caching --noHTTPCache prevent HTTP caching
@ -85,4 +86,4 @@ hugo server [flags]
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -1,5 +1,5 @@
--- ---
date: 2018-10-29 date: 2018-11-05
title: "hugo version" title: "hugo version"
slug: hugo_version slug: hugo_version
url: /commands/hugo_version/ url: /commands/hugo_version/
@ -38,4 +38,4 @@ hugo version [flags]
* [hugo](/commands/hugo/) - hugo builds your site * [hugo](/commands/hugo/) - hugo builds your site
###### Auto generated by spf13/cobra on 29-Oct-2018 ###### Auto generated by spf13/cobra on 5-Nov-2018

View File

@ -0,0 +1,29 @@
---
title: "complement"
description: "`collections.Complement` (alias `complement`) gives the elements of a collection that are not in any of the others."
date: 2018-11-07
categories: [functions]
menu:
docs:
parent: "functions"
keywords: [collections,intersect,union]
signature: ["COLLECTION | complement COLLECTION [COLLECTION]..." ]
hugoversion: "0.51"
aliases: []
---
Example:
```go-html-template
{{ $pages := .Site.RegularPages | first 50 }}
{{ $news := where $pages "Type" "news" | first 5 }}
{{ $blog := where $pages "Type" "blog" | first 5 }}
{{ $other := $pages | complement $news $blog | first 10 }}
```
The above is an imaginary use case for the home page where you want to display different page listings in sections/boxes on different places on the page: 5 from `news`, 5 from the `blog` and then 10 of the pages not shown in the other listings, to _complement_ them.

View File

@ -10,7 +10,7 @@ categories: [functions]
menu: menu:
docs: docs:
parent: "functions" parent: "functions"
keywords: [] keywords: [collections,intersect,union,complement,symdiff]
signature: ["intersect SET1 SET2"] signature: ["intersect SET1 SET2"]
workson: [] workson: []
hugoversion: hugoversion:

View File

@ -1,7 +1,7 @@
--- ---
title: jsonify title: jsonify
linktitle: jsonify linktitle: jsonify
description: Encodes a given object to JSON, returning pretty printed output. description: Encodes a given object to JSON.
godocref: godocref:
date: 2017-02-01 date: 2017-02-01
publishdate: 2017-02-01 publishdate: 2017-02-01

View File

@ -0,0 +1,28 @@
---
title: "symdiff"
description: "`collections.SymDiff` (alias `symdiff`) returns the symmetric difference of two collections."
date: 2018-11-07
categories: [functions]
menu:
docs:
parent: "functions"
keywords: [collections,intersect,union, complement]
signature: ["COLLECTION | symdiff COLLECTION" ]
hugoversion: "0.51"
aliases: []
---
Example:
```go-html-template
{{ slice 1 2 3 | symdiff (slice 3 4) }}
```
The above will print `[1 2 4]`.
Also see https://en.wikipedia.org/wiki/Symmetric_difference

View File

@ -0,0 +1,102 @@
---
date: 2018-11-07
title: "0.51"
description: "0.51"
categories: ["Releases"]
---
Hugo reached [30 000 stars on GitHub](https://github.com/gohugoio/hugo/stargazers) this week, which is a good occasion to do a follow-up release of the great Hugo `0.50`. This is mostly a bug fix release, but it also adds some useful new functionality, two examples are the new template funcs `complement` and `symdiff`. This release also continues the work on improving Hugo's error messages. And with `.Position` now available on shortcodes, you can also improve your own error messages inside your custom shortcodes:
```bash
{{ with .Get "name" }}
{{ else }}
{{ errorf "missing value for param 'name': %s" .Position }}
{{ end }}
```
When the above fails, you will see an `ERROR` log similar to the below:
```bash
ERROR 2018/11/07 10:05:55 missing value for param name: "/sites/hugoDocs/content/en/variables/shortcodes.md:32:1"
```
This release represents **31 contributions by 5 contributors** to the main Hugo code base.
[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@krisbudhram](https://github.com/krisbudhram), [@LorenzCK](https://github.com/LorenzCK), and [@coliff](https://github.com/coliff) for their ongoing contributions.
And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
which has received **6 contributions by 5 contributors**. A special thanks to [@ikemo3](https://github.com/ikemo3), [@maiki](https://github.com/maiki), [@morya](https://github.com/morya), and [@regisphilibert](https://github.com/regisphilibert) for their work on the documentation site.
Hugo now has:
* 30095+ [stars](https://github.com/gohugoio/hugo/stargazers)
* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
* 276+ [themes](http://themes.gohugo.io/)
## Notes
* Remove deprecated useModTimeAsFallback [0bc4b024](https://github.com/gohugoio/hugo/commit/0bc4b0246dd6b7d71f8676a52644077a4f70ec8f) [@bep](https://github.com/bep)
* Bump to ERROR for the deprecated Pages.Sort [faeb55c1](https://github.com/gohugoio/hugo/commit/faeb55c1d827f0ea994551a103ff4f7448786d39) [@bep](https://github.com/bep)
* Deprecate .Site.Ref and .Site.RelRef [6c6a6c87](https://github.com/gohugoio/hugo/commit/6c6a6c87ec2b5ac7342e268ab47861429230f7f4) [@bep](https://github.com/bep) [#5386](https://github.com/gohugoio/hugo/issues/5386)
## Enhancements
### Templates
* Properly handle pointer types in complement/symdiff [79a06aa4](https://github.com/gohugoio/hugo/commit/79a06aa4b64b526c242dfa41f2c7bc24e1352d5b) [@bep](https://github.com/bep)
* Add collections.SymDiff [488776b6](https://github.com/gohugoio/hugo/commit/488776b6498d1377718133d42daa87ce1236215d) [@bep](https://github.com/bep) [#5410](https://github.com/gohugoio/hugo/issues/5410)
* Add collections.Complement [42d8dfc8](https://github.com/gohugoio/hugo/commit/42d8dfc8c88af03ea926a59bc2332acc70cca5f6) [@bep](https://github.com/bep) [#5400](https://github.com/gohugoio/hugo/issues/5400)
### Core
* Improve error message on duplicate menu items [3a44920e](https://github.com/gohugoio/hugo/commit/3a44920e79ef86003555d8a4860c29257b2914f0) [@bep](https://github.com/bep)
* Add .Position to shortcode [33a7b36f](https://github.com/gohugoio/hugo/commit/33a7b36fd42ee31dd79115ec6639bed24247332f) [@bep](https://github.com/bep) [#5371](https://github.com/gohugoio/hugo/issues/5371)
### Other
* Document shortcode error handling [e456e34b](https://github.com/gohugoio/hugo/commit/e456e34bdbde058243eb0a5d3c0017748639e08e) [@bep](https://github.com/bep)
* Document symdiff [5d14d04a](https://github.com/gohugoio/hugo/commit/5d14d04ac678ad24e4946ed2a581ab71b3834def) [@bep](https://github.com/bep)
* Document complement [ddcb4028](https://github.com/gohugoio/hugo/commit/ddcb402859b50193bfd6d8b752b568d26d14f603) [@bep](https://github.com/bep)
* Update minify [d212f609](https://github.com/gohugoio/hugo/commit/d212f60949b6afefbe5aa79394f98dbddf7be068) [@bep](https://github.com/bep)
* Re-generate CLI docs [2998fa0c](https://github.com/gohugoio/hugo/commit/2998fa0cd5bad161b9c802d2409d8c9c81155011) [@bep](https://github.com/bep)
* Add --minify to hugo server [5b1edd28](https://github.com/gohugoio/hugo/commit/5b1edd281a493bdb27af4dc3c8fae7e10dd54830) [@bep](https://github.com/bep)
* Make WARN the new default log log level [4b7d3e57](https://github.com/gohugoio/hugo/commit/4b7d3e57a40214a1269eda59731aa22a8f4463dd) [@bep](https://github.com/bep) [#5203](https://github.com/gohugoio/hugo/issues/5203)
* Regenerate the docs helper [486bc46a](https://github.com/gohugoio/hugo/commit/486bc46a5217a9d70fe0d14ab9261d7b4eb026d6) [@bep](https://github.com/bep)
* Skip watcher event files if matched in ignoreFiles [f8446188](https://github.com/gohugoio/hugo/commit/f8446188dbec8378f34f0fea39161a49fcc46083) [@krisbudhram](https://github.com/krisbudhram)
* Update Chroma [d523aa4b](https://github.com/gohugoio/hugo/commit/d523aa4bb03e913f55c2f89544e6112e320c975a) [@bep](https://github.com/bep) [#5392](https://github.com/gohugoio/hugo/issues/5392)
* Add file (line/col) info to ref/relref errors [1d18eb05](https://github.com/gohugoio/hugo/commit/1d18eb0574a57c3e9f468659d076a666a3dd76f2) [@bep](https://github.com/bep) [#5371](https://github.com/gohugoio/hugo/issues/5371)
* Improve log color regexp [d3a98325](https://github.com/gohugoio/hugo/commit/d3a98325c31d7f02f0762e589a4986e55b2a0da2) [@bep](https://github.com/bep)
* Correct minor typo (#5372) [e65268f2](https://github.com/gohugoio/hugo/commit/e65268f2c2dd5ac54681d3266564901d99ed3ea3) [@coliff](https://github.com/coliff)
## Fixes
### Templates
* Fix the docshelper [61f210dd](https://github.com/gohugoio/hugo/commit/61f210dd7abe5de77c27dc6a6995a3ad5e77afa1) [@bep](https://github.com/bep)
* Fix BOM issue in templates [3a786a24](https://github.com/gohugoio/hugo/commit/3a786a248d3eff6e732aa94e87d6e88196e5147a) [@bep](https://github.com/bep) [#4895](https://github.com/gohugoio/hugo/issues/4895)
### Output
* Fix ANSI character output regression on Windows [b8725f51](https://github.com/gohugoio/hugo/commit/b8725f5181f6a2709274a82c1c3fdfd8f2e3e28c) [@LorenzCK](https://github.com/LorenzCK) [#5377](https://github.com/gohugoio/hugo/issues/5377)
### Core
* Fix changing paginators in lazy render [b8b8436f](https://github.com/gohugoio/hugo/commit/b8b8436fcca17c152e94cae2a1acad32efc3946c) [@bep](https://github.com/bep) [#5406](https://github.com/gohugoio/hugo/issues/5406)
* Fix REF_NOT_FOUND logging to include page path [6180c85f](https://github.com/gohugoio/hugo/commit/6180c85fb8f95e01446b74c50cab3f0480305fe4) [@bep](https://github.com/bep) [#5371](https://github.com/gohugoio/hugo/issues/5371)
* Fix broken manual summary handling [b2a676f5](https://github.com/gohugoio/hugo/commit/b2a676f5f09a3eea360887b099b9d5fc25a88492) [@bep](https://github.com/bep) [#5381](https://github.com/gohugoio/hugo/issues/5381)
* Fix deadlock when content building times out [729593c8](https://github.com/gohugoio/hugo/commit/729593c842794eaf7127050953a5c2256d332051) [@bep](https://github.com/bep) [#5375](https://github.com/gohugoio/hugo/issues/5375)
### Other
* Fix spelling [47506d16](https://github.com/gohugoio/hugo/commit/47506d164467eb7ddbcada81b767d8df5f9c8786) [@qeesung](https://github.com/qeesung)
* Fix shortcode directly following a shortcode delimiter [d16a7a33](https://github.com/gohugoio/hugo/commit/d16a7a33ff1f22b9fa357189a901a4f1de4e65e7) [@bep](https://github.com/bep) [#5402](https://github.com/gohugoio/hugo/issues/5402)
* Fix recently broken error template [2bd9d909](https://github.com/gohugoio/hugo/commit/2bd9d9099db267831731ed2d2200eb09305df9fc) [@bep](https://github.com/bep)

View File

@ -346,6 +346,24 @@ This will output the following HTML. Note how the first two `img` shortcodes inh
<img src="/images/three.jpg"> <img src="/images/three.jpg">
``` ```
## Error Handling in Shortcodes
Use the [errorf](/functions/errorf) template func and [.Position](/variables/shortcodes/) variable to get useful error messages in shortcodes:
```bash
{{ with .Get "name" }}
{{ else }}
{{ errorf "missing value for param 'name': %s" .Position }}
{{ end }}
```
When the above fails, you will see an `ERROR` log similar to the below:
```bash
ERROR 2018/11/07 10:05:55 missing value for param name: "/Users/bep/dev/go/gohugoio/hugo/docs/content/en/variables/shortcodes.md:32:1"
```
## More Shortcode Examples ## More Shortcode Examples
More shortcode examples can be found in the [shortcodes directory for spf13.com][spfscs] and the [shortcodes directory for the Hugo docs][docsshortcodes]. More shortcode examples can be found in the [shortcodes directory for spf13.com][spfscs] and the [shortcodes directory for the Hugo docs][docsshortcodes].

View File

@ -26,6 +26,12 @@ toc: false
.Parent .Parent
: provides access to the parent shortcode context in nested shortcodes. This can be very useful for inheritance of common shortcode parameters from the root. : provides access to the parent shortcode context in nested shortcodes. This can be very useful for inheritance of common shortcode parameters from the root.
.Position
: Contains [filename and position](https://godoc.org/github.com/gohugoio/hugo/common/text#Position) for the shortcode in a page. Note that this can be relatively expensive to calculate, and is meant for error reporting. See [Error Handling in Shortcodes](/templates/shortcode-templates/#error-handling-in-shortcodes).
.IsNamedParams .IsNamedParams
: boolean that returns `true` when the shortcode in question uses [named rather than positional parameters][shortcodes] : boolean that returns `true` when the shortcode in question uses [named rather than positional parameters][shortcodes]

View File

@ -81,6 +81,13 @@
"bnf" "bnf"
] ]
}, },
{
"Name": "Ballerina",
"Aliases": [
"bal",
"ballerina"
]
},
{ {
"Name": "Base Makefile", "Name": "Base Makefile",
"Aliases": [ "Aliases": [
@ -208,6 +215,13 @@
"capnp" "capnp"
] ]
}, },
{
"Name": "Cassandra CQL",
"Aliases": [
"cassandra",
"cql"
]
},
{ {
"Name": "Ceylon", "Name": "Ceylon",
"Aliases": [ "Aliases": [
@ -525,6 +539,7 @@
"Aliases": [ "Aliases": [
"cfg", "cfg",
"dosini", "dosini",
"gitconfig",
"inf", "inf",
"ini" "ini"
] ]
@ -576,6 +591,12 @@
"julia" "julia"
] ]
}, },
{
"Name": "Jungle",
"Aliases": [
"jungle"
]
},
{ {
"Name": "Kotlin", "Name": "Kotlin",
"Aliases": [ "Aliases": [
@ -651,6 +672,13 @@
"modula2" "modula2"
] ]
}, },
{
"Name": "MonkeyC",
"Aliases": [
"mc",
"monkeyc"
]
},
{ {
"Name": "MorrowindScript", "Name": "MorrowindScript",
"Aliases": [ "Aliases": [
@ -736,6 +764,20 @@
"octave" "octave"
] ]
}, },
{
"Name": "OpenSCAD",
"Aliases": [
"openscad",
"scad"
]
},
{
"Name": "Org Mode",
"Aliases": [
"org",
"orgmode"
]
},
{ {
"Name": "PHP", "Name": "PHP",
"Aliases": [ "Aliases": [
@ -940,6 +982,13 @@
"sql" "sql"
] ]
}, },
{
"Name": "SYSTEMD",
"Aliases": [
"service",
"systemd"
]
},
{ {
"Name": "Sass", "Name": "Sass",
"Aliases": [ "Aliases": [
@ -1076,6 +1125,13 @@
"thrift" "thrift"
] ]
}, },
{
"Name": "TradingView",
"Aliases": [
"tradingview",
"tv"
]
},
{ {
"Name": "Transact-SQL", "Name": "Transact-SQL",
"Aliases": [ "Aliases": [
@ -1232,90 +1288,148 @@
"types": [ "types": [
{ {
"type": "application/javascript", "type": "application/javascript",
"string": "application/javascript+js", "string": "application/javascript",
"mainType": "application", "mainType": "application",
"subType": "javascript", "subType": "javascript",
"suffix": "js", "delimiter": ".",
"delimiter": "." "suffixes": [
"js"
]
}, },
{ {
"type": "application/json", "type": "application/json",
"string": "application/json+json", "string": "application/json",
"mainType": "application", "mainType": "application",
"subType": "json", "subType": "json",
"suffix": "json", "delimiter": ".",
"delimiter": "." "suffixes": [
"json"
]
}, },
{ {
"type": "application/rss", "type": "application/octet-stream",
"string": "application/octet-stream",
"mainType": "application",
"subType": "octet-stream",
"delimiter": "",
"suffixes": null
},
{
"type": "application/rss+xml",
"string": "application/rss+xml", "string": "application/rss+xml",
"mainType": "application", "mainType": "application",
"subType": "rss", "subType": "rss",
"suffix": "xml", "delimiter": ".",
"delimiter": "." "suffixes": [
"xml"
]
}, },
{ {
"type": "application/xml", "type": "application/xml",
"string": "application/xml+xml", "string": "application/xml",
"mainType": "application", "mainType": "application",
"subType": "xml", "subType": "xml",
"suffix": "xml", "delimiter": ".",
"delimiter": "." "suffixes": [
"xml"
]
},
{
"type": "image/svg+xml",
"string": "image/svg+xml",
"mainType": "image",
"subType": "svg",
"delimiter": ".",
"suffixes": [
"svg"
]
}, },
{ {
"type": "text/calendar", "type": "text/calendar",
"string": "text/calendar+ics", "string": "text/calendar",
"mainType": "text", "mainType": "text",
"subType": "calendar", "subType": "calendar",
"suffix": "ics", "delimiter": ".",
"delimiter": "." "suffixes": [
"ics"
]
}, },
{ {
"type": "text/css", "type": "text/css",
"string": "text/css+css", "string": "text/css",
"mainType": "text", "mainType": "text",
"subType": "css", "subType": "css",
"suffix": "css", "delimiter": ".",
"delimiter": "." "suffixes": [
"css"
]
}, },
{ {
"type": "text/csv", "type": "text/csv",
"string": "text/csv+csv", "string": "text/csv",
"mainType": "text", "mainType": "text",
"subType": "csv", "subType": "csv",
"suffix": "csv", "delimiter": ".",
"delimiter": "." "suffixes": [
"csv"
]
}, },
{ {
"type": "text/html", "type": "text/html",
"string": "text/html+html", "string": "text/html",
"mainType": "text", "mainType": "text",
"subType": "html", "subType": "html",
"suffix": "html", "delimiter": ".",
"delimiter": "." "suffixes": [
"html"
]
}, },
{ {
"type": "text/plain", "type": "text/plain",
"string": "text/plain+txt", "string": "text/plain",
"mainType": "text", "mainType": "text",
"subType": "plain", "subType": "plain",
"suffix": "txt", "delimiter": ".",
"delimiter": "." "suffixes": [
"txt"
]
},
{
"type": "text/x-sass",
"string": "text/x-sass",
"mainType": "text",
"subType": "x-sass",
"delimiter": ".",
"suffixes": [
"sass"
]
},
{
"type": "text/x-scss",
"string": "text/x-scss",
"mainType": "text",
"subType": "x-scss",
"delimiter": ".",
"suffixes": [
"scss"
]
} }
] ]
}, },
"output": { "output": {
"formats": [ "formats": [
{ {
"MediaType": "text/html+html", "MediaType": "text/html",
"name": "AMP", "name": "AMP",
"mediaType": { "mediaType": {
"type": "text/html", "type": "text/html",
"string": "text/html+html", "string": "text/html",
"mainType": "text", "mainType": "text",
"subType": "html", "subType": "html",
"suffix": "html", "delimiter": ".",
"delimiter": "." "suffixes": [
"html"
]
}, },
"path": "amp", "path": "amp",
"baseName": "index", "baseName": "index",
@ -1327,15 +1441,17 @@
"notAlternative": false "notAlternative": false
}, },
{ {
"MediaType": "text/css+css", "MediaType": "text/css",
"name": "CSS", "name": "CSS",
"mediaType": { "mediaType": {
"type": "text/css", "type": "text/css",
"string": "text/css+css", "string": "text/css",
"mainType": "text", "mainType": "text",
"subType": "css", "subType": "css",
"suffix": "css", "delimiter": ".",
"delimiter": "." "suffixes": [
"css"
]
}, },
"path": "", "path": "",
"baseName": "styles", "baseName": "styles",
@ -1347,15 +1463,17 @@
"notAlternative": true "notAlternative": true
}, },
{ {
"MediaType": "text/csv+csv", "MediaType": "text/csv",
"name": "CSV", "name": "CSV",
"mediaType": { "mediaType": {
"type": "text/csv", "type": "text/csv",
"string": "text/csv+csv", "string": "text/csv",
"mainType": "text", "mainType": "text",
"subType": "csv", "subType": "csv",
"suffix": "csv", "delimiter": ".",
"delimiter": "." "suffixes": [
"csv"
]
}, },
"path": "", "path": "",
"baseName": "index", "baseName": "index",
@ -1367,15 +1485,17 @@
"notAlternative": false "notAlternative": false
}, },
{ {
"MediaType": "text/calendar+ics", "MediaType": "text/calendar",
"name": "Calendar", "name": "Calendar",
"mediaType": { "mediaType": {
"type": "text/calendar", "type": "text/calendar",
"string": "text/calendar+ics", "string": "text/calendar",
"mainType": "text", "mainType": "text",
"subType": "calendar", "subType": "calendar",
"suffix": "ics", "delimiter": ".",
"delimiter": "." "suffixes": [
"ics"
]
}, },
"path": "", "path": "",
"baseName": "index", "baseName": "index",
@ -1387,15 +1507,17 @@
"notAlternative": false "notAlternative": false
}, },
{ {
"MediaType": "text/html+html", "MediaType": "text/html",
"name": "HTML", "name": "HTML",
"mediaType": { "mediaType": {
"type": "text/html", "type": "text/html",
"string": "text/html+html", "string": "text/html",
"mainType": "text", "mainType": "text",
"subType": "html", "subType": "html",
"suffix": "html", "delimiter": ".",
"delimiter": "." "suffixes": [
"html"
]
}, },
"path": "", "path": "",
"baseName": "index", "baseName": "index",
@ -1407,15 +1529,17 @@
"notAlternative": false "notAlternative": false
}, },
{ {
"MediaType": "application/json+json", "MediaType": "application/json",
"name": "JSON", "name": "JSON",
"mediaType": { "mediaType": {
"type": "application/json", "type": "application/json",
"string": "application/json+json", "string": "application/json",
"mainType": "application", "mainType": "application",
"subType": "json", "subType": "json",
"suffix": "json", "delimiter": ".",
"delimiter": "." "suffixes": [
"json"
]
}, },
"path": "", "path": "",
"baseName": "index", "baseName": "index",
@ -1427,15 +1551,17 @@
"notAlternative": false "notAlternative": false
}, },
{ {
"MediaType": "text/plain+txt", "MediaType": "text/plain",
"name": "ROBOTS", "name": "ROBOTS",
"mediaType": { "mediaType": {
"type": "text/plain", "type": "text/plain",
"string": "text/plain+txt", "string": "text/plain",
"mainType": "text", "mainType": "text",
"subType": "plain", "subType": "plain",
"suffix": "txt", "delimiter": ".",
"delimiter": "." "suffixes": [
"txt"
]
}, },
"path": "", "path": "",
"baseName": "robots", "baseName": "robots",
@ -1450,12 +1576,14 @@
"MediaType": "application/rss+xml", "MediaType": "application/rss+xml",
"name": "RSS", "name": "RSS",
"mediaType": { "mediaType": {
"type": "application/rss", "type": "application/rss+xml",
"string": "application/rss+xml", "string": "application/rss+xml",
"mainType": "application", "mainType": "application",
"subType": "rss", "subType": "rss",
"suffix": "xml", "delimiter": ".",
"delimiter": "." "suffixes": [
"xml"
]
}, },
"path": "", "path": "",
"baseName": "index", "baseName": "index",
@ -1467,15 +1595,17 @@
"notAlternative": false "notAlternative": false
}, },
{ {
"MediaType": "application/xml+xml", "MediaType": "application/xml",
"name": "Sitemap", "name": "Sitemap",
"mediaType": { "mediaType": {
"type": "application/xml", "type": "application/xml",
"string": "application/xml+xml", "string": "application/xml",
"mainType": "application", "mainType": "application",
"subType": "xml", "subType": "xml",
"suffix": "xml", "delimiter": ".",
"delimiter": "." "suffixes": [
"xml"
]
}, },
"path": "", "path": "",
"baseName": "sitemap", "baseName": "sitemap",
@ -2119,6 +2249,16 @@
], ],
"Examples": [] "Examples": []
}, },
"Append": {
"Description": "Append appends the arguments up to the last one to the slice in the last argument.\nThis construct allows template constructs like this:\n {{ $pages = $pages | append $p2 $p1 }}\nNote that with 2 arguments where both are slices of the same type,\nthe first slice will be appended to the second:\n {{ $pages = $pages | append .Site.RegularPages }}",
"Args": [
"args"
],
"Aliases": [
"append"
],
"Examples": []
},
"Apply": { "Apply": {
"Description": "Apply takes a map, array, or slice and returns a new slice with the function fname applied over it.", "Description": "Apply takes a map, array, or slice and returns a new slice with the function fname applied over it.",
"Args": [ "Args": [
@ -2185,6 +2325,17 @@
], ],
"Examples": [] "Examples": []
}, },
"Group": {
"Description": "Group groups a set of elements by the given key.\nThis is currently only supported for Pages.",
"Args": [
"key",
"items"
],
"Aliases": [
"group"
],
"Examples": []
},
"In": { "In": {
"Description": "In returns whether v is in the set l. l may be an array or slice.", "Description": "In returns whether v is in the set l. l may be an array or slice.",
"Args": [ "Args": [
@ -2262,6 +2413,19 @@
], ],
"Examples": [] "Examples": []
}, },
"NewScratch": {
"Description": "NewScratch creates a new Scratch which can be used to store values in a\nthread safe way.",
"Args": null,
"Aliases": [
"newScratch"
],
"Examples": [
[
"{{ $scratch := newScratch }}{{ $scratch.Add \"b\" 2 }}{{ $scratch.Add \"b\" 2 }}{{ $scratch.Get \"b\" }}",
"4"
]
]
},
"Querify": { "Querify": {
"Description": "Querify encodes the given parameters in URL-encoded form (\"bar=baz\u0026foo=quux\") sorted by key.", "Description": "Querify encodes the given parameters in URL-encoded form (\"bar=baz\u0026foo=quux\") sorted by key.",
"Args": [ "Args": [
@ -2486,7 +2650,7 @@
] ]
}, },
"Jsonify": { "Jsonify": {
"Description": "Jsonify encodes a given object to JSON.", "Description": "Jsonify encodes a given object to JSON, returning pretty printed output.",
"Args": [ "Args": [
"v" "v"
], ],
@ -2496,14 +2660,14 @@
"Examples": [ "Examples": [
[ [
"{{ (slice \"A\" \"B\" \"C\") | jsonify }}", "{{ (slice \"A\" \"B\" \"C\") | jsonify }}",
"[\"A\",\"B\",\"C\"]" "[\n \"A\",\n \"B\",\n \"C\"\n]"
] ]
] ]
} }
}, },
"fmt": { "fmt": {
"Errorf": { "Errorf": {
"Description": "", "Description": "Errorf formats according to a format specifier and returns the string as a\nvalue that satisfies error.",
"Args": [ "Args": [
"format", "format",
"a" "a"
@ -2675,7 +2839,7 @@
] ]
}, },
"Translate": { "Translate": {
"Description": "Translate ...", "Description": "Translate returns a translated string for id.",
"Args": [ "Args": [
"id", "id",
"args" "args"
@ -2838,19 +3002,6 @@
} }
}, },
"os": { "os": {
"Stat": {
"Description": "Stat returns a file infomation under the given path.",
"Args": [
"i"
],
"Aliases": null,
"Examples": [
[
"{{ (os.Stat \"foo.txt\").Name }}",
"foo.txt"
]
]
},
"FileExists": { "FileExists": {
"Description": "FileExists checks whether a file exists under the given path.", "Description": "FileExists checks whether a file exists under the given path.",
"Args": [ "Args": [
@ -2886,7 +3037,7 @@
], ],
"Examples": [ "Examples": [
[ [
"{{ range (readDir \".\") }}{{ .Name }}{{ end }}", "{{ range (readDir \"files\") }}{{ .Name }}{{ end }}",
"README.txt" "README.txt"
] ]
] ]
@ -2901,10 +3052,16 @@
], ],
"Examples": [ "Examples": [
[ [
"{{ readFile \"README.txt\" }}", "{{ readFile \"files/README.txt\" }}",
"Hugo Rocks!" "Hugo Rocks!"
] ]
] ]
},
"Stat": {
"Description": "",
"Args": null,
"Aliases": null,
"Examples": null
} }
}, },
"partials": { "partials": {
@ -3003,6 +3160,74 @@
] ]
} }
}, },
"resources": {
"Concat": {
"Description": "",
"Args": null,
"Aliases": null,
"Examples": null
},
"ExecuteAsTemplate": {
"Description": "",
"Args": null,
"Aliases": null,
"Examples": null
},
"Fingerprint": {
"Description": "Fingerprint transforms the given Resource with a MD5 hash of the content in\nthe RelPermalink and Permalink.",
"Args": [
"args"
],
"Aliases": [
"fingerprint"
],
"Examples": []
},
"FromString": {
"Description": "",
"Args": null,
"Aliases": null,
"Examples": null
},
"Get": {
"Description": "Get locates the filename given in Hugo's filesystems: static, assets and content (in that order)\nand creates a Resource object that can be used for further transformations.",
"Args": [
"filename"
],
"Aliases": null,
"Examples": []
},
"Minify": {
"Description": "Minify minifies the given Resource using the MediaType to pick the correct\nminifier.",
"Args": [
"r"
],
"Aliases": [
"minify"
],
"Examples": []
},
"PostCSS": {
"Description": "PostCSS processes the given Resource with PostCSS",
"Args": [
"args"
],
"Aliases": [
"postCSS"
],
"Examples": []
},
"ToCSS": {
"Description": "ToCSS converts the given Resource to CSS. You can optional provide an Options\nobject or a target path (string) as first argument.",
"Args": [
"args"
],
"Aliases": [
"toCSS"
],
"Examples": []
}
},
"safe": { "safe": {
"CSS": { "CSS": {
"Description": "CSS returns a given string as html/template CSS content.", "Description": "CSS returns a given string as html/template CSS content.",
@ -3165,6 +3390,19 @@
] ]
] ]
}, },
"FirstUpper": {
"Description": "FirstUpper returns a string with the first character as upper case.",
"Args": [
"s"
],
"Aliases": null,
"Examples": [
[
"{{ \"hugo rocks!\" | strings.FirstUpper }}",
"Hugo rocks!"
]
]
},
"HasPrefix": { "HasPrefix": {
"Description": "HasPrefix tests whether the input s begins with prefix.", "Description": "HasPrefix tests whether the input s begins with prefix.",
"Args": [ "Args": [
@ -3443,6 +3681,25 @@
] ]
} }
}, },
"templates": {
"Exists": {
"Description": "Exists returns whether the template with the given name exists.\nNote that this is the Unix-styled relative path including filename suffix,\ne.g. partials/header.html",
"Args": [
"name"
],
"Aliases": null,
"Examples": [
[
"{{ if (templates.Exists \"partials/header.html\") }}Yes!{{ end }}",
"Yes!"
],
[
"{{ if not (templates.Exists \"partials/doesnotexist.html\") }}No!{{ end }}",
"No!"
]
]
}
},
"time": { "time": {
"AsTime": { "AsTime": {
"Description": "AsTime converts the textual representation of the datetime string into\na time.Time interface.", "Description": "AsTime converts the textual representation of the datetime string into\na time.Time interface.",
@ -3680,7 +3937,7 @@
"Description": "Ref returns the absolute URL path to a given content item.", "Description": "Ref returns the absolute URL path to a given content item.",
"Args": [ "Args": [
"in", "in",
"refs" "args"
], ],
"Aliases": [ "Aliases": [
"ref" "ref"
@ -3701,7 +3958,7 @@
"Description": "RelRef returns the relative URL path to a given content item.", "Description": "RelRef returns the relative URL path to a given content item.",
"Args": [ "Args": [
"in", "in",
"refs" "args"
], ],
"Aliases": [ "Aliases": [
"relref" "relref"

View File

@ -4,7 +4,6 @@
{{ end }} {{ end }}
{{ define "main" }} {{ define "main" }}
<section class="w-100 ph4 ph5-ns pv4"> <section class="w-100 ph4 ph5-ns pv4">
{{- partial "home-page-sections/features-icons" . -}} {{- partial "home-page-sections/features-icons" . -}}
</section> </section>