hugo/docs/content/en/getting-started/configuration-markup.md

199 lines
6.5 KiB
Markdown
Raw Normal View History

Squashed 'docs/' changes from 51c4f3184..af4b7ac5b af4b7ac5b Remove mention of Amber and Ace c841e9207 Exif docs corrections (#978) 0f82420b8 Change cache assets default example to 1 year 676dc6e12 Release 0.61.0 a1d9fb18a Merge commit '79c5d7053486f540b6219e693d5590f2c4c3937a' 1b9e675cd releaser: Add release notes to /docs for release of 0.61.0 5b95cbc8a Fixed suffixIsRemoved error in code samples (#975) 59b2c245b Fix Usage section in toc.md to consider Goldmark TOC settings fd3828673 Add link on how to configure TOC w/ Goldmark ea339f2d6 Added external learning resources including Hugo In Action book. fab502d5d Adjust release notes 269a025ef Release 0.60.1 6bff50bea Merge branch 'temp601' e15251c43 releaser: Add release notes to /docs for release of 0.60.1 690b864b9 Update use-modules.md 345ca8c36 Update syntax-highlighting.md be64af9f5 Update syntax-highlighting.md df9dead83 Update syntax-highlighting.md 1c6e6d238 Fix relnotes 0ea6b2012 Update homepagetweets.toml 2c465625d Update index.md 0025bba09 Update index.md 7417f1c05 Update index.md 9eeb8ce57 Release 0.60.0 25a711023 Merge branch 'temp60' 0c4faab0e releaser: Add release notes to /docs for release of 0.60.0 779e5108e Update installing.md 2ef1c386a Minor text improvements in README.md 41ec5a19a Reword sentence for clarity search.md ded74f098 Add Goldmark as the new default markdown handler cb55cdbb0 Update introduction.md fcaad653a Update homepage.md 7427a1fc5 Update configuration.md 8cc2c72ca tpl/collections: Allow dict to create nested structures 4538c092c Merge commit 'efc0b1bb6c6564f54d596467dbc6a18cb206954e' 90f908e7b Support Go time format strings in permalinks git-subtree-dir: docs git-subtree-split: af4b7ac5b403e392a92228e66058331905fff7dc
2019-12-15 04:35:09 -05:00
---
title: Configure Markup
description: How to handle Markdown and other markup related configuration.
date: 2019-11-15
categories: [getting started,fundamentals]
keywords: [configuration,highlighting]
weight: 65
sections_weight: 65
slug: configuration-markup
toc: true
---
## Configure Markup
{{< new-in "0.60.0" >}}
See [Goldmark](#goldmark) for settings related to the default Markdown handler in Hugo.
Below are all markup related configuration in Hugo with their default settings:
{{< code-toggle config="markup" />}}
**See each section below for details.**
### Goldmark
[Goldmark](https://github.com/yuin/goldmark/) is from Hugo 0.60 the default library used for Markdown. It's fast, it's [CommonMark](https://spec.commonmark.org/0.29/) compliant and it's very flexible. Note that the feature set of Goldmark vs Blackfriday isn't the same; you gain a lot but also lose some, but we will work to bridge any gap in the upcoming Hugo versions.
This is the default configuration:
{{< code-toggle config="markup.goldmark" />}}
Some settings explained:
unsafe
: By default, Goldmark does not render raw HTMLs and potentially dangerous links. If you have lots of inline HTML and/or JavaScript, you may need to turn this on.
typographer
: This extension substitutes punctuations with typographic entities like [smartypants](https://daringfireball.net/projects/smartypants/).
Squashed 'docs/' changes from bd0e15bb6..16753a78d 16753a78d remove kaiju from comments.md 25906f6ad Hugo 0.64.0 aacc7a130 releaser: Add release notes to /docs for release of 0.64.0 2243afe90 Explain Ace/Amber support has been removed 293c9496a Document the hugo function 479890f9b Update comments.md ceab41097 Update theme 9a95876c7 Remove note 696543e13 Update usage.md a04bab2b9 Release 0.63.2 ccaed74b5 Merge branch 'temp632' 623b363c5 releaser: Add release notes to /docs for release of 0.63.2 39ce6f50e releaser: Add release notes to /docs for release of 0.63.2 9175ac2ca Another theme fix 88c264251 Rebuild _vendor e739dc3a8 Release 0.63.1 129ecac84 Merge branch 'temp631' bcd7c1154 releaser: Add release notes to /docs for release of 0.63.1 e4f0d9285 releaser: Add release notes to /docs for release of 0.63.1 6a40124d6 Update theme c486747de Params cleanup c408c4334 netlify: Bump to 0.63.0 7e8a48be8 Adjust base template docs a5920e9aa Adjust release notes d4d25c524 Merge branch 'temp63' 16d981721 releaser: Add release notes to /docs for release of 0.63.0 08ab681d1 releaser: Add release notes to /docs for release of 0.63.0 90feaac39 docs, output: Add base template lookup variant to docs.json afe2b4399 docs, output: Add base template lookup variant to docs.json 1f7466a76 docs: Regen docs helper 7ceefb94a docs: Regen docs helper ee14087cd Remove typo from RenderString.md 6daf333d3 Remove the calibreapp action 682f710d7 docs: Updating 'submodule add' command in "Host on GitHub" to use https instead of ssh. ef57b2dae Improve documentation on slug behavior 835ddd9c2 Fix broken link 137a32f90 Fixed typo in content-management/page-resources 936633e25 Fixed spelling error, "wich" -> "which" a559d41e3 Using a Different Version of Hugo in AWS Amplify 2ee83402d Update rss.md f900a2ce0 Add render-image code example and edit wording bd0a0207c Change wording on Page Resources documentation d213b4599 linuxbrew was renamed to homebrew (#1004) dcb0925f8 Update index.md 789416a08 Release 0.62.2 2dc66f13c releaser: Add release notes to /docs for release of 0.62.2 813fbc865 releaser: Add release notes to /docs for release of 0.62.2 ed5b07df3 docs: Document the new autoHeadingIDType setting 02d4747e5 docs: Document the new autoHeadingIDType setting 406a8a9a6 docs: Regenerate docshelper 065319786 docs: Regenerate docshelper 61d540021 Merge commit '26f1458a2df6b55eee3a5de46f5fec23a43a7c7d' 7cac5909b releaser: Add release notes to /docs for release of 0.62.1 6e30e01a2 releaser: Add release notes to /docs for release of 0.62.0 2694dcdd8 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 115dd6782 docs: More on hooks f4460fd54 tpl: Do not return any value in errorf 3587d2998 tpl: Add a warnf template func 7c9b02e30 docs: Regen docshelper a7bfdeb24 Fix incorrect MIME type from image/jpg to image/jpeg 1a6089cfe Preserve HTML Text for link render hooks 4544a998c docs: Footnote c42733258 Add render template hooks for links and images 0d8bec78a Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 3974c326c markup/tableofcontents: Add config option for ordered list 8c2bd1a62 releaser: Add release notes to /docs for release of 0.61.0 f00b2d507 releaser: Add release notes to /docs for release of 0.60.1 9a5109838 releaser: Add release notes to /docs for release of 0.60.0 d2c222f71 Add Goldmark as the new default markdown handler df96f9efa Update homepage.md f17e67b4b tpl/collections: Allow dict to create nested structures 5f923768a Merge commit 'efc0b1bb6c6564f54d596467dbc6a18cb206954e' 8a861bf16 Support Go time format strings in permalinks bbb8c4fea releaser: Add release notes to /docs for release of 0.59.1 9d9070dda releaser: Add release notes to /docs for release of 0.59.0 98716176b Merge commit '5ac0f751aa47e52625662215f66efa99a6abfc2e' 2057ba4c5 Merge commit '5070ba6c9e6c492deade3c30cfe769b9dbf7151d' c98bcff07 Merge commit 'b9bd35d72e14932fb6588ff62b90cddef0a060fc' as 'docs' git-subtree-dir: docs git-subtree-split: 16753a78d85e05c4a2cea94e263dda2e0047d155
2020-02-06 07:02:49 -05:00
autoHeadingIDType ("github") {{< new-in "0.62.2" >}}
: The strategy used for creating auto IDs (anchor names). Available types are `github`, `github-ascii` and `blackfriday`. `github` produces GitHub-compatible IDs, `github-ascii` will drop any non-Ascii characters after accent normalization, and `blackfriday` will make the IDs work as with [Blackfriday](#blackfriday), the default Markdown engine before Hugo 0.60. Note that if Goldmark is your default Markdown engine, this is also the strategy used in the [anchorize](/functions/anchorize/) template func.
Squashed 'docs/' changes from 51c4f3184..af4b7ac5b af4b7ac5b Remove mention of Amber and Ace c841e9207 Exif docs corrections (#978) 0f82420b8 Change cache assets default example to 1 year 676dc6e12 Release 0.61.0 a1d9fb18a Merge commit '79c5d7053486f540b6219e693d5590f2c4c3937a' 1b9e675cd releaser: Add release notes to /docs for release of 0.61.0 5b95cbc8a Fixed suffixIsRemoved error in code samples (#975) 59b2c245b Fix Usage section in toc.md to consider Goldmark TOC settings fd3828673 Add link on how to configure TOC w/ Goldmark ea339f2d6 Added external learning resources including Hugo In Action book. fab502d5d Adjust release notes 269a025ef Release 0.60.1 6bff50bea Merge branch 'temp601' e15251c43 releaser: Add release notes to /docs for release of 0.60.1 690b864b9 Update use-modules.md 345ca8c36 Update syntax-highlighting.md be64af9f5 Update syntax-highlighting.md df9dead83 Update syntax-highlighting.md 1c6e6d238 Fix relnotes 0ea6b2012 Update homepagetweets.toml 2c465625d Update index.md 0025bba09 Update index.md 7417f1c05 Update index.md 9eeb8ce57 Release 0.60.0 25a711023 Merge branch 'temp60' 0c4faab0e releaser: Add release notes to /docs for release of 0.60.0 779e5108e Update installing.md 2ef1c386a Minor text improvements in README.md 41ec5a19a Reword sentence for clarity search.md ded74f098 Add Goldmark as the new default markdown handler cb55cdbb0 Update introduction.md fcaad653a Update homepage.md 7427a1fc5 Update configuration.md 8cc2c72ca tpl/collections: Allow dict to create nested structures 4538c092c Merge commit 'efc0b1bb6c6564f54d596467dbc6a18cb206954e' 90f908e7b Support Go time format strings in permalinks git-subtree-dir: docs git-subtree-split: af4b7ac5b403e392a92228e66058331905fff7dc
2019-12-15 04:35:09 -05:00
### Blackfriday
[Blackfriday](https://github.com/russross/blackfriday) was Hugo's default Markdown rendering engine, now replaced with Goldmark. But you can still use it: Just set `defaultMarkdownHandler` to `blackfriday` in your top level `markup` config.
This is the default config:
{{< code-toggle config="markup.blackFriday" />}}
### Highlight
This is the default `highlight` configuration. Note that some of these settings can be set per code block, see [Syntax Highlighting](/content-management/syntax-highlighting/).
{{< code-toggle config="markup.highlight" />}}
For `style`, see these galleries:
* [Short snippets](https://xyproto.github.io/splash/docs/all.html)
* [Long snippets](https://xyproto.github.io/splash/docs/longer/all.html)
For CSS, see [Generate Syntax Highlighter CSS](/content-management/syntax-highlighting/#generate-syntax-highlighter-css).
### Table Of Contents
{{< code-toggle config="markup.tableOfContents" />}}
These settings only works for the Goldmark renderer:
startLevel
: The heading level, values starting at 1 (`h1`), to start render the table of contents.
endLevel
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
: The heading level, inclusive, to stop render the table of contents.
ordered
: Whether or not to generate an ordered list instead of an unordered list.
## Markdown Render Hooks
{{< new-in "0.62.0" >}}
Note that this is only supported with the [Goldmark](#goldmark) renderer.
Render Hooks allow custom templates to override markdown rendering functionality. You can do this by creating templates with base names `render-{feature}` in `layouts/_default/_markup`.
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
You can also create type/section specific hooks in `layouts/[type/section]/_markup`, e.g.: `layouts/blog/_markup`.{{< new-in "0.71.0" >}}
The features currently supported are:
* `image`
* `link`
* `heading` {{< new-in "0.71.0" >}}
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
You can define [Output-Format-](/templates/output-formats) and [language-](/content-management/multilingual/)specific templates if needed.[^hooktemplate] Your `layouts` folder may look like this:
```bash
layouts
└── _default
└── _markup
├── render-image.html
├── render-image.rss.xml
└── render-link.html
```
Some use cases for the above:
* Resolve link references using `.GetPage`. This would make links portable as you could translate `./my-post.md` (and similar constructs that would work on GitHub) into `/blog/2019/01/01/my-post/` etc.
* Add `target=_blank` to external links.
* Resolve and [process](/content-management/image-processing/) images.
* Add [header links](https://remysharp.com/2014/08/08/automatic-permalinks-for-blog-posts).
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
### Render Hook Templates
The `render-link` and `render-image` templates will receive this context:
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
Page
: The [Page](/variables/page/) being rendered.
Destination
: The URL.
Title
: The title attribute.
Text
: The rendered (HTML) link text.
PlainText
: The plain variant of the above.
The `render-heading` template will receive this context:
Page
: The [Page](/variables/page/) being rendered.
Level
: The header level (1--6)
Anchor
: An auto-generated html id unique to the header within the page
Text
: The rendered (HTML) text.
PlainText
: The plain variant of the above.
#### Link with title Markdown example:
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
```md
[Text](https://www.gohugo.io "Title")
```
Squashed 'docs/' changes from bd0e15bb6..16753a78d 16753a78d remove kaiju from comments.md 25906f6ad Hugo 0.64.0 aacc7a130 releaser: Add release notes to /docs for release of 0.64.0 2243afe90 Explain Ace/Amber support has been removed 293c9496a Document the hugo function 479890f9b Update comments.md ceab41097 Update theme 9a95876c7 Remove note 696543e13 Update usage.md a04bab2b9 Release 0.63.2 ccaed74b5 Merge branch 'temp632' 623b363c5 releaser: Add release notes to /docs for release of 0.63.2 39ce6f50e releaser: Add release notes to /docs for release of 0.63.2 9175ac2ca Another theme fix 88c264251 Rebuild _vendor e739dc3a8 Release 0.63.1 129ecac84 Merge branch 'temp631' bcd7c1154 releaser: Add release notes to /docs for release of 0.63.1 e4f0d9285 releaser: Add release notes to /docs for release of 0.63.1 6a40124d6 Update theme c486747de Params cleanup c408c4334 netlify: Bump to 0.63.0 7e8a48be8 Adjust base template docs a5920e9aa Adjust release notes d4d25c524 Merge branch 'temp63' 16d981721 releaser: Add release notes to /docs for release of 0.63.0 08ab681d1 releaser: Add release notes to /docs for release of 0.63.0 90feaac39 docs, output: Add base template lookup variant to docs.json afe2b4399 docs, output: Add base template lookup variant to docs.json 1f7466a76 docs: Regen docs helper 7ceefb94a docs: Regen docs helper ee14087cd Remove typo from RenderString.md 6daf333d3 Remove the calibreapp action 682f710d7 docs: Updating 'submodule add' command in "Host on GitHub" to use https instead of ssh. ef57b2dae Improve documentation on slug behavior 835ddd9c2 Fix broken link 137a32f90 Fixed typo in content-management/page-resources 936633e25 Fixed spelling error, "wich" -> "which" a559d41e3 Using a Different Version of Hugo in AWS Amplify 2ee83402d Update rss.md f900a2ce0 Add render-image code example and edit wording bd0a0207c Change wording on Page Resources documentation d213b4599 linuxbrew was renamed to homebrew (#1004) dcb0925f8 Update index.md 789416a08 Release 0.62.2 2dc66f13c releaser: Add release notes to /docs for release of 0.62.2 813fbc865 releaser: Add release notes to /docs for release of 0.62.2 ed5b07df3 docs: Document the new autoHeadingIDType setting 02d4747e5 docs: Document the new autoHeadingIDType setting 406a8a9a6 docs: Regenerate docshelper 065319786 docs: Regenerate docshelper 61d540021 Merge commit '26f1458a2df6b55eee3a5de46f5fec23a43a7c7d' 7cac5909b releaser: Add release notes to /docs for release of 0.62.1 6e30e01a2 releaser: Add release notes to /docs for release of 0.62.0 2694dcdd8 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 115dd6782 docs: More on hooks f4460fd54 tpl: Do not return any value in errorf 3587d2998 tpl: Add a warnf template func 7c9b02e30 docs: Regen docshelper a7bfdeb24 Fix incorrect MIME type from image/jpg to image/jpeg 1a6089cfe Preserve HTML Text for link render hooks 4544a998c docs: Footnote c42733258 Add render template hooks for links and images 0d8bec78a Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 3974c326c markup/tableofcontents: Add config option for ordered list 8c2bd1a62 releaser: Add release notes to /docs for release of 0.61.0 f00b2d507 releaser: Add release notes to /docs for release of 0.60.1 9a5109838 releaser: Add release notes to /docs for release of 0.60.0 d2c222f71 Add Goldmark as the new default markdown handler df96f9efa Update homepage.md f17e67b4b tpl/collections: Allow dict to create nested structures 5f923768a Merge commit 'efc0b1bb6c6564f54d596467dbc6a18cb206954e' 8a861bf16 Support Go time format strings in permalinks bbb8c4fea releaser: Add release notes to /docs for release of 0.59.1 9d9070dda releaser: Add release notes to /docs for release of 0.59.0 98716176b Merge commit '5ac0f751aa47e52625662215f66efa99a6abfc2e' 2057ba4c5 Merge commit '5070ba6c9e6c492deade3c30cfe769b9dbf7151d' c98bcff07 Merge commit 'b9bd35d72e14932fb6588ff62b90cddef0a060fc' as 'docs' git-subtree-dir: docs git-subtree-split: 16753a78d85e05c4a2cea94e263dda2e0047d155
2020-02-06 07:02:49 -05:00
Here is a code example for how the render-link.html template could look:
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
{{< code file="layouts/_default/_markup/render-link.html" >}}
<a href="{{ .Destination | safeURL }}"{{ with .Title}} title="{{ . }}"{{ end }}{{ if strings.HasPrefix .Destination "http" }} target="_blank" rel="noopener"{{ end }}>{{ .Text | safeHTML }}</a>
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
{{< /code >}}
Squashed 'docs/' changes from bd0e15bb6..16753a78d 16753a78d remove kaiju from comments.md 25906f6ad Hugo 0.64.0 aacc7a130 releaser: Add release notes to /docs for release of 0.64.0 2243afe90 Explain Ace/Amber support has been removed 293c9496a Document the hugo function 479890f9b Update comments.md ceab41097 Update theme 9a95876c7 Remove note 696543e13 Update usage.md a04bab2b9 Release 0.63.2 ccaed74b5 Merge branch 'temp632' 623b363c5 releaser: Add release notes to /docs for release of 0.63.2 39ce6f50e releaser: Add release notes to /docs for release of 0.63.2 9175ac2ca Another theme fix 88c264251 Rebuild _vendor e739dc3a8 Release 0.63.1 129ecac84 Merge branch 'temp631' bcd7c1154 releaser: Add release notes to /docs for release of 0.63.1 e4f0d9285 releaser: Add release notes to /docs for release of 0.63.1 6a40124d6 Update theme c486747de Params cleanup c408c4334 netlify: Bump to 0.63.0 7e8a48be8 Adjust base template docs a5920e9aa Adjust release notes d4d25c524 Merge branch 'temp63' 16d981721 releaser: Add release notes to /docs for release of 0.63.0 08ab681d1 releaser: Add release notes to /docs for release of 0.63.0 90feaac39 docs, output: Add base template lookup variant to docs.json afe2b4399 docs, output: Add base template lookup variant to docs.json 1f7466a76 docs: Regen docs helper 7ceefb94a docs: Regen docs helper ee14087cd Remove typo from RenderString.md 6daf333d3 Remove the calibreapp action 682f710d7 docs: Updating 'submodule add' command in "Host on GitHub" to use https instead of ssh. ef57b2dae Improve documentation on slug behavior 835ddd9c2 Fix broken link 137a32f90 Fixed typo in content-management/page-resources 936633e25 Fixed spelling error, "wich" -> "which" a559d41e3 Using a Different Version of Hugo in AWS Amplify 2ee83402d Update rss.md f900a2ce0 Add render-image code example and edit wording bd0a0207c Change wording on Page Resources documentation d213b4599 linuxbrew was renamed to homebrew (#1004) dcb0925f8 Update index.md 789416a08 Release 0.62.2 2dc66f13c releaser: Add release notes to /docs for release of 0.62.2 813fbc865 releaser: Add release notes to /docs for release of 0.62.2 ed5b07df3 docs: Document the new autoHeadingIDType setting 02d4747e5 docs: Document the new autoHeadingIDType setting 406a8a9a6 docs: Regenerate docshelper 065319786 docs: Regenerate docshelper 61d540021 Merge commit '26f1458a2df6b55eee3a5de46f5fec23a43a7c7d' 7cac5909b releaser: Add release notes to /docs for release of 0.62.1 6e30e01a2 releaser: Add release notes to /docs for release of 0.62.0 2694dcdd8 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 115dd6782 docs: More on hooks f4460fd54 tpl: Do not return any value in errorf 3587d2998 tpl: Add a warnf template func 7c9b02e30 docs: Regen docshelper a7bfdeb24 Fix incorrect MIME type from image/jpg to image/jpeg 1a6089cfe Preserve HTML Text for link render hooks 4544a998c docs: Footnote c42733258 Add render template hooks for links and images 0d8bec78a Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 3974c326c markup/tableofcontents: Add config option for ordered list 8c2bd1a62 releaser: Add release notes to /docs for release of 0.61.0 f00b2d507 releaser: Add release notes to /docs for release of 0.60.1 9a5109838 releaser: Add release notes to /docs for release of 0.60.0 d2c222f71 Add Goldmark as the new default markdown handler df96f9efa Update homepage.md f17e67b4b tpl/collections: Allow dict to create nested structures 5f923768a Merge commit 'efc0b1bb6c6564f54d596467dbc6a18cb206954e' 8a861bf16 Support Go time format strings in permalinks bbb8c4fea releaser: Add release notes to /docs for release of 0.59.1 9d9070dda releaser: Add release notes to /docs for release of 0.59.0 98716176b Merge commit '5ac0f751aa47e52625662215f66efa99a6abfc2e' 2057ba4c5 Merge commit '5070ba6c9e6c492deade3c30cfe769b9dbf7151d' c98bcff07 Merge commit 'b9bd35d72e14932fb6588ff62b90cddef0a060fc' as 'docs' git-subtree-dir: docs git-subtree-split: 16753a78d85e05c4a2cea94e263dda2e0047d155
2020-02-06 07:02:49 -05:00
#### Image Markdown example:
```md
![Text](https://d33wubrfki0l68.cloudfront.net/c38c7334cc3f23585738e40334284fddcaf03d5e/2e17c/images/hugo-logo-wide.svg "Title")
```
Here is a code example for how the render-image.html template could look:
{{< code file="layouts/_default/_markup/render-image.html" >}}
<p class="md__image">
<img src="{{ .Destination | safeURL }}" alt="{{ .Text }}" {{ with .Title}} title="{{ . }}"{{ end }} />
</p>
{{< /code >}}
#### Heading link example
Given this template file
{{< code file="layouts/_default/_markup/render-heading.html" >}}
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ .Text | safeHTML }} <a href="#{{ .Anchor | safeURL }}"></a></h{{ .Level }}>
{{< /code >}}
And this markdown
```md
### Section A
```
The rendered html will be
Squashed 'docs/' changes from 54f0e8776..bd0e15bb6 bd0e15bb6 Optimised images with calibre/image-actions 59830ea44 Remove comments from quickstart code samples 348821b5d Remove image-actions 1cbbd26a9 Update index.md bcf3de764 Update index.md fcf17e6ef Release 0.62.1 0956bde21 Merge branch 'temp621' 28d604756 releaser: Add release notes to /docs for release of 0.62.1 c895f12e7 Fix statement about version installed with apt-get (#854) e96928e38 Updated quickstart to split theme download and theme config add into separate blocks (#967) e099c1ad6 changed ".Title" to ".URL" (#972) bea71280d Fix small typing error (#1001) 9c28c422e Correct hyperlink for 'markdownify' function cf3844a06 Corrected small conjugation mistake (#996) 8b9c1d4f2 Added remarks about additional parameters in ref/relref (#995) ca06c9a56 Fix illegal character in render-link.html example 7a85c789b Update RenderString.md 69df3b17e Update configuration-markup.md 43e9222a2 Revert "Add shortcodes to note comparing with `markdownify`" 2bd5bc2d7 Add shortcodes to note comparing with `markdownify` ddfee60b7 Update configuration-markup.md f87c35fe2 docs: Remove extra double quotation 5ca5cc15f Update index.md 6e457f5ec Update configuration-markup.md 12df3c0fc Update configuration-markup.md 91977fd96 Update configuration-markup.md 377b8954a Update configuration-markup.md 99d691b5e Update hosting-on-render.md ccf855b22 Update index.md a945acc42 Update index.md 7d4f308d6 Fix Netlify config f4caa07f5 Release 0.62.0 79d18276f releaser: Add release notes to /docs for release of 0.62.0 9db1a08d1 Merge commit '8a4005cf2b0ef34265ff8051a6b76226685fc226' 79e556223 docs: More on hooks 5088c54df tpl: Do not return any value in errorf 98c8c8638 tpl: Add a warnf template func 4a9d76cea docs: Regen docshelper 626e53b55 Fix incorrect MIME type from image/jpg to image/jpeg f92f77c5d Preserve HTML Text for link render hooks 6db9c52b1 docs: Footnote 16801db3b Add render template hooks for links and images 0facb823c Merge commit '2e711a28c71e8667258e5ab824f9b9a71c261b0a' 79bf8ed4c markup/tableofcontents: Add config option for ordered list git-subtree-dir: docs git-subtree-split: bd0e15bb6063f7ad4f0c47eb33c8c0c23c962d13
2020-01-05 05:13:09 -05:00
```html
<h3 id="section-a">Section A <a href="#section-a"></a></h3>
```
[^hooktemplate]: It's currently only possible to have one set of render hook templates, e.g. not per `Type` or `Section`. We may consider that in a future version.