From bfa74537929f409fca841540b971125b7678963a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Sat, 23 Aug 2025 12:36:13 +0200 Subject: [PATCH] Squashed 'docs/' changes from 60dd993a6..71f739460 71f739460 content: Reformat procedures to use description lists instead of H3 elements 420a78802 content: Remove 21YunBox hosting guide abeea342f content: Add hosting guide for Vercel 3aaca6c0a content: Add hosting guide for Render d77b06aa6 content: Fix formatting 82885415f content: Change build.sh file perms in Cloudflare hosting docs 0569c68ca content: Fix typo 8f14be5da content: Remove duplicate list items e76f17815 misc: Fix typo in configuration for the Markdown linter 32e450b7c misc: Fix typo in configuration for the Markdown linter 81bd0056a mics: Update configuration for the Markdown linter 480ae9014 content: Improve file names in the PageInner description b17999021 content: Adjust Markdown to pass linter tests 1d9d56897 misc: Implement Markdown linter 91fc34c58 content: Miscellaneous edits b7c60ae0b content: Add admonition for outdated learning resources 51b6df588 misc: Activate stale action 84a897f5f misc: Implement stale action 167ea9713 content: Update GitHub Pages workflow example 3672d9116 misc: Use actions/checkout@v5 in workflows 2f2b4c968 misc: Update spellcheck configs 55a8ff7ae content: Fix typo 36e3d7b7b Adjust sponsors 51014e6b9 content: Fix link 37cfc093f content: Add Cloudflare Worker hosting instructions 09862ffad content: Update hosting considerations related to GitInfo 477f3e7c0 misc: Update cspell config 7a7bb4874 content: Miscellaneous edits 48486d5ac content: Remove Cloudflare Pages documentation 382f8052d content: Remove KeyCDN documentation 8ecbc985c content: Update hosting workflow files 57fd362bf content: Clarify applicability of the slug front matter field 0dcfff9c7 content: Update directory-structure.md 58e3609a0 content: Fix typo 22fb43695 content: Fix search/replace errors fba8342a8 content: Fix missing link refs 97e035006 Update netlify.toml 6ab5ae6df content: Improve GitLab Pages compression performance 172bfbc4b content: Differentiate content view templates from other templates 978770fc8 content: Clarify handling of goldmark extensions conflict cb74aa4c7 content: Improve Codeberg Pages hosting instructions 794477792 content: Add custom domain instructions to Codeberg Pages setup 235fac27d content: Improve description of code block render hook options map 35a507d31 content: Improve WP2Hugo description 8191f4dcf content: Improve WP2Hugo description 25cca30fd content: Fix type e955652ae content: Improve base template description 922aa91bd content: Improve description of partial lookup logic 072536ef6 content: Update template type documentation 5bf153531 Update netlify.toml cdd20a433 content: Indicate language sort order for relevant page methods fc9a868c9 content: Add Sitepins to list of commercial CMS platforms b6077449c content: Update version references b71388cac content: Fix typo c27dfdef3 content: Move link reference d008ea6ac content: Fix typo 040f14a3c content: Fix typo 1ac119d26 content: Fix typo a5a4fa907 content: More updates for v0.148.0 b7247a8ea content: Remove command chaining from GitHub Actions workflow 6ecb96bcd content: Updates for v0.148.0 aea9e4c29 netlify: Update Hugo version 4e71546d1 Add Ancestors (plural) method to GitInfo, rename Ancestor field to Parent 68620a6c2 source: Expose Ancestor in GitInfo git-subtree-dir: docs git-subtree-split: 71f739460f43e3e1226d3b778ccd1c20c4ca9af3 --- .codespellrc | 4 +- .cspell.json | 15 +- .github/stale.yml | 22 -- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/markdownlint.yml | 15 + .github/workflows/spellcheck.yml | 12 +- .github/workflows/stale.yml | 32 ++ .github/workflows/super-linter.yml | 41 --- .markdownlint-cli2.yaml | 91 +++++ .markdownlint.yaml | 27 -- .markdownlintignore | 6 - content/en/_common/functions/js/options.md | 15 +- content/en/_common/gomodules-info.md | 1 + .../installation/03-prebuilt-binaries.md | 6 - .../methods/taxonomy/get-a-taxonomy-object.md | 2 +- content/en/_common/permalink-tokens.md | 2 - content/en/_common/render-hooks/pageinner.md | 10 +- content/en/_common/scratch-pad-scope.md | 2 +- .../en/_common/syntax-highlighting-options.md | 1 + content/en/about/features.md | 2 +- content/en/configuration/all.md | 1 - content/en/configuration/build.md | 2 + content/en/configuration/cascade.md | 2 +- content/en/configuration/front-matter.md | 37 +- content/en/configuration/markup.md | 152 ++++---- content/en/configuration/menus.md | 2 + content/en/configuration/module.md | 12 +- content/en/configuration/output-formats.md | 95 +++-- content/en/configuration/related-content.md | 2 +- content/en/configuration/security.md | 4 +- content/en/configuration/segments.md | 2 +- content/en/configuration/server.md | 2 +- content/en/configuration/taxonomies.md | 7 +- content/en/configuration/ugly-urls.md | 1 + content/en/content-management/comments.md | 5 - .../en/content-management/content-adapters.md | 187 +++++----- content/en/content-management/formats.md | 1 - content/en/content-management/front-matter.md | 87 +++-- content/en/content-management/mathematics.md | 171 +++++---- content/en/content-management/menus.md | 2 + content/en/content-management/multilingual.md | 12 +- .../content-management/organization/index.md | 2 +- content/en/content-management/page-bundles.md | 6 +- .../en/content-management/page-resources.md | 64 ++-- content/en/content-management/sections.md | 4 +- content/en/content-management/shortcodes.md | 10 +- content/en/content-management/taxonomies.md | 12 +- content/en/content-management/urls.md | 3 +- content/en/contribute/development.md | 130 ++++--- content/en/contribute/documentation.md | 134 +++---- content/en/functions/css/PostCSS.md | 59 ++- content/en/functions/css/Sass.md | 80 +---- content/en/functions/css/TailwindCSS.md | 124 +++---- content/en/functions/data/GetCSV.md | 7 +- content/en/functions/data/GetJSON.md | 9 +- content/en/functions/encoding/Jsonify.md | 4 +- content/en/functions/global/page.md | 10 +- content/en/functions/go-template/block.md | 1 + content/en/functions/go-template/define.md | 13 - content/en/functions/go-template/range.md | 5 +- content/en/functions/go-template/return.md | 4 +- content/en/functions/go-template/template.md | 6 +- content/en/functions/go-template/try.md | 1 + content/en/functions/go-template/with.md | 5 +- content/en/functions/hugo/Generator.md | 2 +- content/en/functions/hugo/Store.md | 2 +- content/en/functions/hugo/Version.md | 2 +- content/en/functions/js/Babel.md | 29 +- content/en/functions/js/Batch.md | 7 +- content/en/functions/js/Build.md | 1 + content/en/functions/openapi3/Unmarshal.md | 2 +- content/en/functions/partials/Include.md | 12 +- .../en/functions/partials/IncludeCached.md | 4 +- content/en/functions/resources/FromString.md | 6 +- content/en/functions/resources/GetRemote.md | 39 +- content/en/functions/resources/PostProcess.md | 92 ++--- content/en/functions/templates/Current.md | 4 +- content/en/functions/templates/Defer.md | 2 +- content/en/functions/time/ParseDuration.md | 2 +- .../en/functions/transform/PortableText.md | 2 + content/en/functions/transform/ToMath.md | 122 +++---- .../en/getting-started/directory-structure.md | 5 +- .../external-learning-resources/index.md | 3 + .../en/host-and-deploy/host-on-21yunbox.md | 52 --- .../host-on-aws-amplify/index.md | 219 ++++++------ .../host-on-cloudflare-pages.md | 11 - .../host-on-cloudflare/cloudflare-01.png | Bin 0 -> 16057 bytes .../host-on-cloudflare/cloudflare-02.png | Bin 0 -> 17647 bytes .../host-on-cloudflare/cloudflare-03.png | Bin 0 -> 7262 bytes .../host-on-cloudflare/cloudflare-04.png | Bin 0 -> 8258 bytes .../host-on-cloudflare/cloudflare-05.png | Bin 0 -> 27869 bytes .../host-on-cloudflare/cloudflare-06.png | Bin 0 -> 7310 bytes .../host-on-cloudflare/cloudflare-07.png | Bin 0 -> 18600 bytes .../host-on-cloudflare/cloudflare-08.png | Bin 0 -> 7730 bytes .../host-on-cloudflare/index.md | 166 +++++++++ .../host-and-deploy/host-on-codeberg-pages.md | 57 ++- .../en/host-and-deploy/host-on-firebase.md | 20 +- .../{gh-pages-1.png => gh-pages-01.png} | Bin .../{gh-pages-2.png => gh-pages-02.png} | Bin .../{gh-pages-3.png => gh-pages-03.png} | Bin .../{gh-pages-4.png => gh-pages-04.png} | Bin .../{gh-pages-5.png => gh-pages-05.png} | Bin .../host-on-github-pages/index.md | 335 ++++++++---------- .../host-and-deploy/host-on-gitlab-pages.md | 85 +++-- .../host-and-deploy/host-on-keycdn/index.md | 86 ----- .../host-on-keycdn/keycdn-pull-zone.png | Bin 114748 -> 0 bytes .../host-on-keycdn/secret-api-key.png | Bin 118836 -> 0 bytes .../host-on-keycdn/secret-zone-id.png | Bin 113753 -> 0 bytes .../host-and-deploy/host-on-netlify/index.md | 148 ++++---- content/en/host-and-deploy/host-on-render.md | 78 ---- .../host-and-deploy/host-on-render/index.md | 170 +++++++++ .../host-on-render/render-01.png | Bin 0 -> 6828 bytes .../host-on-render/render-02.png | Bin 0 -> 6810 bytes .../host-on-render/render-03.png | Bin 0 -> 16902 bytes .../host-on-render/render-04.png | Bin 0 -> 5850 bytes .../host-on-render/render-05.png | Bin 0 -> 31955 bytes .../host-on-render/render-06.png | Bin 0 -> 5415 bytes .../host-on-render/render-07.png | Bin 0 -> 23683 bytes .../host-on-render/render-08.png | Bin 0 -> 5987 bytes .../host-on-render/render-09.png | Bin 0 -> 8057 bytes .../host-on-render/render-10.png | Bin 0 -> 7484 bytes .../host-and-deploy/host-on-vercel/index.md | 165 +++++++++ .../host-on-vercel/vercel-01.png | Bin 0 -> 3601 bytes .../host-on-vercel/vercel-02.png | Bin 0 -> 7228 bytes .../host-on-vercel/vercel-03.png | Bin 0 -> 16364 bytes .../host-on-vercel/vercel-04.png | Bin 0 -> 4583 bytes .../host-on-vercel/vercel-05.png | Bin 0 -> 5822 bytes .../host-on-vercel/vercel-06.png | Bin 0 -> 30267 bytes .../host-on-vercel/vercel-07.png | Bin 0 -> 8068 bytes .../host-on-vercel/vercel-08.png | Bin 0 -> 16094 bytes .../host-on-vercel/vercel-09.png | Bin 0 -> 11250 bytes .../host-on-vercel/vercel-10.png | Bin 0 -> 9097 bytes content/en/hugo-pipes/introduction.md | 2 +- content/en/installation/bsd.md | 2 +- content/en/installation/linux.md | 2 +- content/en/installation/macos.md | 4 +- content/en/installation/windows.md | 4 +- content/en/methods/page/AllTranslations.md | 2 +- content/en/methods/page/Data.md | 4 +- content/en/methods/page/Date.md | 1 - content/en/methods/page/GitInfo.md | 68 +++- content/en/methods/page/Page.md | 8 +- content/en/methods/page/Paginate.md | 10 +- content/en/methods/page/Paginator.md | 10 +- content/en/methods/page/Path.md | 8 +- content/en/methods/page/Render.md | 4 +- content/en/methods/page/RenderShortcodes.md | 2 +- content/en/methods/page/Store.md | 2 +- content/en/methods/page/Translations.md | 2 +- content/en/methods/resource/Content.md | 2 +- content/en/methods/resource/Data.md | 2 - content/en/methods/resource/Name.md | 1 + content/en/methods/shortcode/IsNamedParams.md | 2 +- content/en/methods/shortcode/Ordinal.md | 2 +- content/en/methods/site/GetPage.md | 10 +- content/en/methods/site/MainSections.md | 4 +- content/en/methods/site/Menus.md | 2 +- content/en/methods/site/Store.md | 2 +- content/en/methods/site/Taxonomies.md | 5 + content/en/methods/time/Round.md | 2 +- content/en/methods/time/Truncate.md | 2 +- .../glossary/raw-string-literal.md | 2 +- .../syntax-highlighting-styles.md | 2 +- content/en/render-hooks/_index.md | 2 +- content/en/render-hooks/blockquotes.md | 4 +- content/en/render-hooks/code-blocks.md | 6 +- content/en/render-hooks/headings.md | 4 +- content/en/render-hooks/images.md | 15 +- content/en/render-hooks/links.md | 13 +- content/en/render-hooks/passthrough.md | 4 +- content/en/render-hooks/tables.md | 4 +- content/en/shortcodes/qr.md | 2 +- content/en/shortcodes/ref.md | 11 +- content/en/shortcodes/relref.md | 11 +- content/en/showcase/_template/index.md | 2 +- content/en/showcase/ampio-help/bio.md | 4 +- content/en/showcase/ampio-help/index.md | 8 +- .../en/showcase/hartwell-insurance/index.md | 2 +- content/en/showcase/pharmaseal/index.md | 4 +- content/en/templates/introduction.md | 10 +- content/en/templates/menu.md | 2 +- .../templates/new-templatesystem-overview.md | 20 +- content/en/templates/pagination.md | 5 +- content/en/templates/robots.md | 3 +- content/en/templates/shortcode.md | 7 +- content/en/templates/sitemap.md | 12 +- content/en/templates/types.md | 114 +++--- content/en/tools/editors.md | 8 +- content/en/tools/front-ends.md | 3 + content/en/tools/migrations.md | 2 +- content/en/troubleshooting/faq.md | 8 +- content/en/troubleshooting/performance.md | 4 +- data/docs.yaml | 9 + data/page_filters.yaml | 2 +- data/sponsors.toml | 7 - netlify.toml | 2 +- 196 files changed, 2257 insertions(+), 1949 deletions(-) delete mode 100644 .github/stale.yml create mode 100644 .github/workflows/markdownlint.yml create mode 100644 .github/workflows/stale.yml delete mode 100644 .github/workflows/super-linter.yml create mode 100644 .markdownlint-cli2.yaml delete mode 100644 .markdownlint.yaml delete mode 100644 .markdownlintignore delete mode 100644 content/en/host-and-deploy/host-on-21yunbox.md delete mode 100644 content/en/host-and-deploy/host-on-cloudflare-pages.md create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-01.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-02.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-03.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-04.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-05.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-06.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-07.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/cloudflare-08.png create mode 100644 content/en/host-and-deploy/host-on-cloudflare/index.md rename content/en/host-and-deploy/host-on-github-pages/{gh-pages-1.png => gh-pages-01.png} (100%) rename content/en/host-and-deploy/host-on-github-pages/{gh-pages-2.png => gh-pages-02.png} (100%) rename content/en/host-and-deploy/host-on-github-pages/{gh-pages-3.png => gh-pages-03.png} (100%) rename content/en/host-and-deploy/host-on-github-pages/{gh-pages-4.png => gh-pages-04.png} (100%) rename content/en/host-and-deploy/host-on-github-pages/{gh-pages-5.png => gh-pages-05.png} (100%) delete mode 100644 content/en/host-and-deploy/host-on-keycdn/index.md delete mode 100644 content/en/host-and-deploy/host-on-keycdn/keycdn-pull-zone.png delete mode 100644 content/en/host-and-deploy/host-on-keycdn/secret-api-key.png delete mode 100644 content/en/host-and-deploy/host-on-keycdn/secret-zone-id.png delete mode 100644 content/en/host-and-deploy/host-on-render.md create mode 100644 content/en/host-and-deploy/host-on-render/index.md create mode 100644 content/en/host-and-deploy/host-on-render/render-01.png create mode 100644 content/en/host-and-deploy/host-on-render/render-02.png create mode 100644 content/en/host-and-deploy/host-on-render/render-03.png create mode 100644 content/en/host-and-deploy/host-on-render/render-04.png create mode 100644 content/en/host-and-deploy/host-on-render/render-05.png create mode 100644 content/en/host-and-deploy/host-on-render/render-06.png create mode 100644 content/en/host-and-deploy/host-on-render/render-07.png create mode 100644 content/en/host-and-deploy/host-on-render/render-08.png create mode 100644 content/en/host-and-deploy/host-on-render/render-09.png create mode 100644 content/en/host-and-deploy/host-on-render/render-10.png create mode 100644 content/en/host-and-deploy/host-on-vercel/index.md create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-01.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-02.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-03.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-04.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-05.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-06.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-07.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-08.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-09.png create mode 100644 content/en/host-and-deploy/host-on-vercel/vercel-10.png diff --git a/.codespellrc b/.codespellrc index 564fc77c0..f322b0123 100644 --- a/.codespellrc +++ b/.codespellrc @@ -4,10 +4,10 @@ [codespell] # Comma separated list of dirs to be skipped. -skip = _vendor,.cspell.json,chroma.css,chroma_dark.css +skip = *.ai,chroma.css,chroma_dark.css,.cspell.json # Comma separated list of words to be ignored. Words must be lowercased. -ignore-words-list = abl,edn,te,ue,trys,januar,womens,crossreferences +ignore-words-list = abl,edn,januar,te,trys,ue,womens # Check file names as well. check-filenames = true diff --git a/.cspell.json b/.cspell.json index 16f9bd9f2..28dba57be 100644 --- a/.cspell.json +++ b/.cspell.json @@ -1,8 +1,15 @@ { "version": "0.2", "allowCompoundWords": true, - "files": [ - "**/*.md" + "overrides": [ + { + "filename": "**/*", + "enabled": false + }, + { + "filename": "**/*.md", + "enabled": true + } ], "flagWords": [ "alot", @@ -64,6 +71,7 @@ "templating", "transpile", "unmarshal", + "unmarshaled", "unmarshaling", "unmarshals", "# ----------------------------------------------------------------------", @@ -100,6 +108,8 @@ "descripción", "dokumentation", "erklärungen", + "español", + "français", "libros", "mercredi", "miesiąc", @@ -147,6 +157,7 @@ "dpkg", "doas", "eopkg", + "forgejo", "gitee", "goldmark", "katex", diff --git a/.github/stale.yml b/.github/stale.yml deleted file mode 100644 index 1e72eb329..000000000 --- a/.github/stale.yml +++ /dev/null @@ -1,22 +0,0 @@ -# Number of days of inactivity before an issue becomes stale -daysUntilStale: 120 -# Number of days of inactivity before a stale issue is closed -daysUntilClose: 30 -# Issues with these labels will never be considered stale -exemptLabels: - - Keep - - Security - - UndocumentedFeature -# Label to use when marking an issue as stale -staleLabel: Stale -# Comment to post when marking an issue as stale. Set to `false` to disable -markComment: > - This issue has been automatically marked as stale because it has not had - recent activity. The resources of the Hugo team are limited, and so we are asking for your help. - - If you still think this is important, please tell us why. - - This issue will automatically be closed in the near future if no further activity occurs. Thank you for all your contributions. - -# Comment to post when closing a stale issue. Set to `false` to disable -closeComment: false diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 86441b845..6f7038c9e 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -15,7 +15,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Initialize CodeQL uses: github/codeql-action/init@v3 diff --git a/.github/workflows/markdownlint.yml b/.github/workflows/markdownlint.yml new file mode 100644 index 000000000..0e2ac88fb --- /dev/null +++ b/.github/workflows/markdownlint.yml @@ -0,0 +1,15 @@ +name: Lint markdown +on: + workflow_dispatch: + pull_request: +jobs: + lint: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v5 + - name: Run Markdown linter + uses: DavidAnson/markdownlint-cli2-action@v20 + with: + globs: # set to null to override default of *.{md,markdown} + continue-on-error: false diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index e01ab1764..d9036f18a 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -12,16 +12,14 @@ jobs: spellcheck: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: streetsidesoftware/cspell-action@v5 + - uses: actions/checkout@v5 + - uses: streetsidesoftware/cspell-action@v7 with: - check_dot_files: false - files: content/**/*.md incremental_files_only: true - inline: warning - strict: false + strict: true + # cspell uses the .cspell.json configuration file - uses: codespell-project/actions-codespell@v2 with: check_filenames: true check_hidden: true - # by default, codespell uses configuration from the .codespellrc + # codespell uses the .codespellrc file diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 000000000..c537f1642 --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,32 @@ +name: Close stale issues and pull requests +on: + workflow_dispatch: + schedule: + - cron: "30 1 * * *" +permissions: + contents: read +jobs: + stale: + permissions: + contents: read + issues: write + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v9 + with: + days-before-stale: 90 # default is 60 + days-before-close: 14 # default is 7 + exempt-all-assignees: true + exempt-draft-pr: true + exempt-issue-labels: Keep, InProgress, NeedsTriage + exempt-pr-labels: Keep + operations-per-run: 100 + stale-issue-message: > + This issue has been marked as stale because there hasn't been any + recent activity. It will be closed soon if there are no further + updates. + stale-pr-message: > + This pull request has been marked as stale because there hasn't + been any recent activity. It will be closed soon if there are no + further updates. diff --git a/.github/workflows/super-linter.yml b/.github/workflows/super-linter.yml deleted file mode 100644 index d8e408ee2..000000000 --- a/.github/workflows/super-linter.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: Super Linter - -on: - workflow_dispatch: - -permissions: - contents: read # to fetch code (actions/checkout) - -jobs: - build: - permissions: - contents: read # to fetch code (actions/checkout) - statuses: write # to mark status of each linter run (github/super-linter/slim) - - name: Lint Code Base - runs-on: ubuntu-latest - if: ${{ github.actor != 'dependabot[bot]' }} - - steps: - - name: Checkout Code - uses: actions/checkout@v4 - - - name: Lint Code Base - uses: super-linter/super-linter/slim@v6 - env: - DEFAULT_BRANCH: master - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - IGNORE_GITIGNORED_FILES: true - LINTER_RULES_PATH: / - LOG_LEVEL: NOTICE - MARKDOWN_CONFIG_FILE: .markdownlint.yaml - SUPPRESS_POSSUM: true - VALIDATE_CSS: false - VALIDATE_EDITORCONFIG: false - VALIDATE_GITLEAKS: false - VALIDATE_HTML: false - VALIDATE_JAVASCRIPT_STANDARD: false - VALIDATE_JSCPD: false - VALIDATE_NATURAL_LANGUAGE: false - VALIDATE_SHELL_SHFMT: false - VALIDATE_XML: false diff --git a/.markdownlint-cli2.yaml b/.markdownlint-cli2.yaml new file mode 100644 index 000000000..1ededafd0 --- /dev/null +++ b/.markdownlint-cli2.yaml @@ -0,0 +1,91 @@ +# Glob patterns to include +globs: + - "content/**/*.md" + +# Glob patterns to exclude +ignores: + - "content/**/commands/**" + - "content/en/about/license.md" + - "content/LICENSE.md" + +# Markdownlint rules and configuration +# https://github.com/DavidAnson/markdownlint?tab=readme-ov-file#rules--aliases +config: + MD001: true + # MD002 deprecated + MD003: + style: atx + MD004: + style: dash + MD005: true + # MD006 deprecated + MD007: false # if enabled, throws errors when definition descriptions contain list items + # MD008 deprecated + MD009: true + MD010: true + MD011: true + MD012: true + MD013: false + MD014: true + # MD015 deprecated + # MD016 deprecated + # MD017 deprecated + MD018: true + MD019: true + MD020: true + MD021: true + MD022: true + MD023: true + MD024: true + MD025: true + MD026: true + MD027: true + MD028: false + MD029: + style: one + MD030: true + MD031: true + MD032: true + MD033: true + MD034: false + MD035: + style: --- + MD036: true + MD037: true + MD038: true + MD039: true + MD040: true + MD041: false + MD042: true + MD043: false + MD044: false + MD045: true + MD046: false + MD047: true + MD048: + style: backtick + MD049: + style: underscore + MD050: + style: asterisk + MD051: false + MD052: true + MD053: true + MD054: + autolink: true + collapsed: true + full: true + inline: true + shortcut: true + url_inline: true + MD055: + style: consistent + MD056: true + # MD057 deprecated + MD058: true + MD059: + prohibited_texts: + - click here + - here + - link + - more diff --git a/.markdownlint.yaml b/.markdownlint.yaml deleted file mode 100644 index dbb5b2ee8..000000000 --- a/.markdownlint.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md - -MD001: false -MD002: false -MD003: false -MD004: false -MD007: false -MD012: - maximum: 2 -MD013: false -MD014: false -MD022: false -MD024: false -MD031: false -MD032: false -MD033: false -MD034: false -MD036: false -MD037: false -MD038: false -MD041: false -MD046: false -MD049: false -MD050: false -MD051: false -MD053: false -MD055: false diff --git a/.markdownlintignore b/.markdownlintignore deleted file mode 100644 index 4ac45b395..000000000 --- a/.markdownlintignore +++ /dev/null @@ -1,6 +0,0 @@ -**/commands/** -**/functions/** -**/news/** -**/showcase/** -**/zh/** -**/license.md diff --git a/content/en/_common/functions/js/options.md b/content/en/_common/functions/js/options.md index 475429d05..0c82fcae5 100644 --- a/content/en/_common/functions/js/options.md +++ b/content/en/_common/functions/js/options.md @@ -8,6 +8,7 @@ params ```go-html-template {{ $js := resources.Get "js/main.js" | js.Build (dict "params" (dict "api" "https://example.org/api")) }} ``` + And then in your JS file: ```js @@ -21,10 +22,10 @@ minify loaders : {{< new-in 0.140.0 />}} -: (`map`) Configuring a loader for a given file type lets you load that file type with an `import` statement or a `require` call. For example, configuring the `.png` file extension to use the data URL loader means importing a `.png` file gives you a data URL containing the contents of that image. Loaders available are `none`, `base64`, `binary`, `copy`, `css`, `dataurl`, `default`, `empty`, `file`, `global-css`, `js`, `json`, `jsx`, `local-css`, `text`, `ts`, `tsx`. See https://esbuild.github.io/api/#loader. +: (`map`) Configuring a loader for a given file type lets you load that file type with an `import` statement or a `require` call. For example, configuring the `.png` file extension to use the data URL loader means importing a `.png` file gives you a data URL containing the contents of that image. Loaders available are `none`, `base64`, `binary`, `copy`, `css`, `dataurl`, `default`, `empty`, `file`, `global-css`, `js`, `json`, `jsx`, `local-css`, `text`, `ts`, `tsx`. See . inject -: (`slice`) This option allows you to automatically replace a global variable with an import from another file. The path names must be relative to `assets`. See https://esbuild.github.io/api/#inject. +: (`slice`) This option allows you to automatically replace a global variable with an import from another file. The path names must be relative to `assets`. See . shims : (`map`) This option allows swapping out a component with another. A common use case is to load dependencies like React from a CDN (with _shims_) when in production, but running with the full bundled `node_modules` dependency during development: @@ -58,10 +59,10 @@ target platform : {{< new-in 0.140.0 />}} -: (`string`) One of `browser`, `node`, `neutral`. Default is `browser`. See https://esbuild.github.io/api/#platform. +: (`string`) One of `browser`, `node`, `neutral`. Default is `browser`. See . externals -: (`slice`) External dependencies. Use this to trim dependencies you know will never be executed. See https://esbuild.github.io/api/#external. +: (`slice`) External dependencies. Use this to trim dependencies you know will never be executed. See . defines : (`map`) This option allows you to define a set of string replacements to be performed when building. It must be a map where each key will be replaced by its value. @@ -73,7 +74,7 @@ defines drop : {{< new-in 0.144.0 />}} : (`string`) Edit your source code before building to drop certain constructs: One of `debugger` or `console`. -: See https://esbuild.github.io/api/#drop +: See sourceMap : (`string`) Whether to generate `inline`, `linked`, or `external` source maps from esbuild. Linked and external source maps will be written to the target with the output file name + ".map". When `linked` a `sourceMappingURL` will also be written to the output file. By default, source maps are not created. Note that the `linked` option was added in Hugo 0.140.0. @@ -84,11 +85,11 @@ sourcesContent JSX : {{< new-in 0.124.0 />}} -: (`string`) How to handle/transform JSX syntax. One of: `transform`, `preserve`, `automatic`. Default is `transform`. Notably, the `automatic` transform was introduced in React 17+ and will cause the necessary JSX helper functions to be imported automatically. See https://esbuild.github.io/api/#jsx. +: (`string`) How to handle/transform JSX syntax. One of: `transform`, `preserve`, `automatic`. Default is `transform`. Notably, the `automatic` transform was introduced in React 17+ and will cause the necessary JSX helper functions to be imported automatically. See . JSXImportSource : {{< new-in 0.124.0 />}} -: (`string`) Which library to use to automatically import its JSX helper functions from. This only works if `JSX` is set to `automatic`. The specified library needs to be installed through npm and expose certain exports. See https://esbuild.github.io/api/#jsx-import-source. +: (`string`) Which library to use to automatically import its JSX helper functions from. This only works if `JSX` is set to `automatic`. The specified library needs to be installed through npm and expose certain exports. See . The combination of `JSX` and `JSXImportSource` is helpful if you want to use a non-React JSX library like Preact, e.g.: diff --git a/content/en/_common/gomodules-info.md b/content/en/_common/gomodules-info.md index 5d88a6f9d..1eefff545 100644 --- a/content/en/_common/gomodules-info.md +++ b/content/en/_common/gomodules-info.md @@ -6,6 +6,7 @@ _comment: Do not remove front matter. > You need [Go] version 1.18 or later and [Git] to use Hugo Modules. For older sites hosted on Netlify, please ensure the `GO_VERSION` environment variable is set to `1.18` or higher. > > Go Modules resources: +> > - [go.dev/wiki/Modules](https://go.dev/wiki/Modules) > - [blog.golang.org/using-go-modules](https://go.dev/blog/using-go-modules) diff --git a/content/en/_common/installation/03-prebuilt-binaries.md b/content/en/_common/installation/03-prebuilt-binaries.md index 34411cddd..c72a68bee 100644 --- a/content/en/_common/installation/03-prebuilt-binaries.md +++ b/content/en/_common/installation/03-prebuilt-binaries.md @@ -15,9 +15,3 @@ Prebuilt binaries are available for a variety of operating systems and architect Please consult your operating system documentation if you need help setting file permissions or modifying your PATH environment variable. If you do not see a prebuilt binary for the desired edition, operating system, and architecture, install Hugo using one of the methods described below. - -[commit information]: /methods/page/gitinfo/ -[Git]: https://git-scm.com/ -[Go]: https://go.dev/ -[Hugo Modules]: /hugo-modules/ -[latest release]: https://github.com/gohugoio/hugo/releases/latest diff --git a/content/en/_common/methods/taxonomy/get-a-taxonomy-object.md b/content/en/_common/methods/taxonomy/get-a-taxonomy-object.md index a6c46b8b7..c90224338 100644 --- a/content/en/_common/methods/taxonomy/get-a-taxonomy-object.md +++ b/content/en/_common/methods/taxonomy/get-a-taxonomy-object.md @@ -32,7 +32,7 @@ To capture the "genres" `Taxonomy` object from within any template, use the [`Ta {{ $taxonomyObject := .Site.Taxonomies.genres }} ``` -To capture the "genres" `Taxonomy` object when rendering its page with a taxonomy template, use the [`Terms`] method on the page's [`Data`] object: +To capture the "genres" `Taxonomy` object when rendering its page with a _taxonomy_ template, use the [`Terms`] method on the page's [`Data`] object: ```go-html-template {file="layouts/taxonomy.html"} {{ $taxonomyObject := .Data.Terms }} diff --git a/content/en/_common/permalink-tokens.md b/content/en/_common/permalink-tokens.md index 4aec68fb8..f2c16e100 100644 --- a/content/en/_common/permalink-tokens.md +++ b/content/en/_common/permalink-tokens.md @@ -67,5 +67,3 @@ For time-related values, you can also use the layout string components defined i permalinks: posts: /:06/:1/:2/:title/ {{< /code-toggle >}} - -[content base name]: /methods/page/file/#contentbasename diff --git a/content/en/_common/render-hooks/pageinner.md b/content/en/_common/render-hooks/pageinner.md index e5c0afb79..3efbc9ce3 100644 --- a/content/en/_common/render-hooks/pageinner.md +++ b/content/en/_common/render-hooks/pageinner.md @@ -22,14 +22,14 @@ The primary use case for `PageInner` is to resolve links and [page resources](g) Then call the shortcode in your Markdown: -```text {file="content/posts/p1.md"} -{{%/* include "/posts/p2" */%}} +```text {file="content/posts/post-1.md"} +{{%/* include "/posts/post-2" */%}} ``` -Any render hook triggered while rendering `/posts/p2` will get: +Any render hook triggered while rendering `/posts/post-2` will get: -- `/posts/p1` when calling `Page` -- `/posts/p2` when calling `PageInner` +- `/posts/post-1` when calling `Page` +- `/posts/post-2` when calling `PageInner` `PageInner` falls back to the value of `Page` if not relevant, and always returns a value. diff --git a/content/en/_common/scratch-pad-scope.md b/content/en/_common/scratch-pad-scope.md index b659497d8..789b943e6 100644 --- a/content/en/_common/scratch-pad-scope.md +++ b/content/en/_common/scratch-pad-scope.md @@ -9,7 +9,7 @@ The method or function used to create a scratch pad determines its scope. For ex Scope|Method or function :--|:-- page|[`PAGE.Store`] -site|[`SITE.Store`] +site|[`SITE.Store`] global|[`hugo.Store`] local|[`collections.NewScratch`] shortcode|[`SHORTCODE.Store`] diff --git a/content/en/_common/syntax-highlighting-options.md b/content/en/_common/syntax-highlighting-options.md index 36144e090..11348f661 100644 --- a/content/en/_common/syntax-highlighting-options.md +++ b/content/en/_common/syntax-highlighting-options.md @@ -28,6 +28,7 @@ lineNoStart lineNos : (`any`) Controls line number display. Default is `false`. + - `true`: Enable line numbers, controlled by `lineNumbersInTable`. - `false`: Disable line numbers. - `inline`: Enable inline line numbers (sets `lineNumbersInTable` to `false`). diff --git a/content/en/about/features.md b/content/en/about/features.md index ff1a6b8eb..d9fd36f61 100644 --- a/content/en/about/features.md +++ b/content/en/about/features.md @@ -92,7 +92,7 @@ weight: 20 ## Performance [Caching] -: Reduce build time and cost by rendering a partial template once then cache the result, either globally or within a given context. For example, cache the result of an asset pipeline to prevent reprocessing on every rendered page. +: Reduce build time and cost by rendering a _partial_ template once then cache the result, either globally or within a given context. For example, cache the result of an asset pipeline to prevent reprocessing on every rendered page. [Segmentation] : Reduce build time and cost by partitioning your sites into segments. For example, render the home page and the "news section" every hour, and render the entire site once a week. diff --git a/content/en/configuration/all.md b/content/en/configuration/all.md index c64638499..c733e0a99 100644 --- a/content/en/configuration/all.md +++ b/content/en/configuration/all.md @@ -339,7 +339,6 @@ Some configuration settings, such as menus and custom parameters, can be defined [`MainSections`]: /methods/site/mainsections/ [`segments`]: /configuration/segments/ [`strings.Title`]: /functions/strings/title/ -[`strings.Title`]: /functions/strings/title [`Summary`]: /methods/page/summary/ [`time.AsTime`]: /functions/time/astime/ [`time.Format`]: /functions/time/format/ diff --git a/content/en/configuration/build.md b/content/en/configuration/build.md index 116294f05..1354f0860 100644 --- a/content/en/configuration/build.md +++ b/content/en/configuration/build.md @@ -27,6 +27,7 @@ useResourceCacheWhen The `build.cachebusters` configuration option was added to support development using Tailwind 3.x's JIT compiler where a `build` configuration may look like this: + {{< code-toggle file=hugo >}} [build] [build.buildStats] @@ -44,6 +45,7 @@ The `build.cachebusters` configuration option was added to support development u source = "assets/.*\\.(.*)$" target = "$1" {{< /code-toggle >}} + When `buildStats` is enabled, Hugo writes a `hugo_stats.json` file on each build with HTML classes etc. that's used in the rendered output. Changes to this file will trigger a rebuild of the `styles.css` file. You also need to add `hugo_stats.json` to Hugo's server watcher. See [Hugo Starter Tailwind Basic](https://github.com/bep/hugo-starter-tailwind-basic) for a running example. diff --git a/content/en/configuration/cascade.md b/content/en/configuration/cascade.md index d91996301..85b221df2 100644 --- a/content/en/configuration/cascade.md +++ b/content/en/configuration/cascade.md @@ -44,7 +44,7 @@ environment : (`string`) A [glob](g) pattern matching the build [environment](g). For example: `{staging,production}`. kind -: (`string`) A [glob](g) pattern matching the [page kind](g). For example: ` {taxonomy,term}`. +: (`string`) A [glob](g) pattern matching the [page kind](g). For example: `{taxonomy,term}`. lang : (`string`) A [glob](g) pattern matching the [page language]. For example: `{en,de}`. diff --git a/content/en/configuration/front-matter.md b/content/en/configuration/front-matter.md index 9f51b8a5a..a97648b61 100644 --- a/content/en/configuration/front-matter.md +++ b/content/en/configuration/front-matter.md @@ -60,25 +60,32 @@ The default front matter configuration includes these aliases. ## Tokens -Hugo provides several [tokens](g) to assist with front matter configuration. +Hugo provides the following [tokens](g) to help you configure your front matter: -Token|Description -:--|:-- -`:default`|The default ordered sequence of date fields. -`:fileModTime`|The file's last modification timestamp. -`:filename`|The date from the file name, if present. -`:git`|The Git author date for the file's last revision. +`:default` +: The default ordered sequence of date fields. -When Hugo extracts a date from a file name, it uses the rest of the file name to generate the page's [`slug`], but only if a slug isn't already specified in the page's front matter. For example, given the name `2025-02-01-article.md`, Hugo will set the `date` to `2025-02-01` and the `slug` to `article`. +`:fileModTime` +: The file's last modification timestamp. -[`slug`]: /content-management/front-matter/#slug +`:filename` +: Extracts the date from the file name, provided the file name begins with a date in one of the following formats: -To enable access to the Git author date, set [`enableGitInfo`] to `true`, or use\ -the `--enableGitInfo` flag when building your site. + - `YYYY-MM-DD` + - `YYYY-MM-DD-HH-MM-SS` {{< new-in 0.148.0 />}} -[`enableGitInfo`]: /configuration/all/#enablegitinfo + Within the `YYYY-MM-DD-HH-MM-SS` format, the date and time values may be separated by any character including a space (e.g., `2025-02-01T14-30-00`). -Consider this example: + Hugo resolves the extracted date to the [`timeZone`] defined in your site configuration, falling back to the system time zone. After extracting the date, Hugo uses the remaining part of the file name to generate the page's [`slug`], but only if you haven't already specified a slug in the page's front matter. + + For example, if you name your file `2025-02-01-article.md`, Hugo will set the date to `2025-02-01` and the slug to `article`. + +`:git` +: The Git author date for the file's last revision. To enable access to the Git author date, set [`enableGitInfo`] to `true`, or use the `--enableGitInfo` flag when building your site. + +## Example + +Consider this site configuration: {{< code-toggle file=hugo >}} [frontmatter] @@ -89,3 +96,7 @@ lastmod = ['lastmod', ':fileModTime'] To determine `date`, Hugo tries to extract the date from the file name, falling back to the default ordered sequence of date fields. To determine `lastmod`, Hugo looks for a `lastmod` field in front matter, falling back to the file's last modification timestamp. + +[`enableGitInfo`]: /configuration/all/#enablegitinfo +[`slug`]: /content-management/front-matter/#slug +[`timeZone`]: /configuration/all/#timezone diff --git a/content/en/configuration/markup.md b/content/en/configuration/markup.md index 4a2efb5e8..bf5aac374 100644 --- a/content/en/configuration/markup.md +++ b/content/en/configuration/markup.md @@ -47,10 +47,10 @@ Extension|Documentation|Enabled :--|:--|:-: `cjk`|[Goldmark Extensions: CJK]|:heavy_check_mark: `definitionList`|[PHP Markdown Extra: Definition lists]|:heavy_check_mark: -`extras`|[Hugo Goldmark Extensions: Extras]|| +`extras`|[Hugo Goldmark Extensions: Extras]|  `footnote`|[PHP Markdown Extra: Footnotes]|:heavy_check_mark: `linkify`|[GitHub Flavored Markdown: Autolinks]|:heavy_check_mark: -`passthrough`|[Hugo Goldmark Extensions: Passthrough]|| +`passthrough`|[Hugo Goldmark Extensions: Passthrough]|  `strikethrough`|[GitHub Flavored Markdown: Strikethrough]|:heavy_check_mark: `table`|[GitHub Flavored Markdown: Tables]|:heavy_check_mark: `taskList`|[GitHub Flavored Markdown: Task list items]|:heavy_check_mark: @@ -70,12 +70,19 @@ Mark text|`==baz==`|`baz` Subscript|`H~2~O`|`H2O` Superscript|`1^st^`|`1st` -To avoid a conflict when enabling the "subscript" feature of the Extras extension, if you want to render subscript and strikethrough text concurrently you must: +To avoid a conflict[^1], if you enable the "subscript" feature of the Extras extension, you must disable the Strikethrough extension: -1. Disable the Strikethrough extension -1. Enable the "deleted text" feature of the Extras extension +[^1]: See [details](https://github.com/gohugoio/hugo-goldmark-extensions/commit/4d4fcd022fe45a9b51483df001c9e5f4e632d5a9). -For example: +{{< code-toggle file=hugo >}} +[markup.goldmark.extensions] +strikethrough = false + +[markup.goldmark.extensions.extras.subscript] +enable = true +{{< /code-toggle >}} + +If you still need to show deleted text after disabling the Strikethrough extension, enable the "deleted text" feature of the Extras extension: {{< code-toggle file=hugo >}} [markup.goldmark.extensions] @@ -83,11 +90,10 @@ strikethrough = false [markup.goldmark.extensions.extras.delete] enable = true - -[markup.goldmark.extensions.extras.subscript] -enable = true {{< /code-toggle >}} +With this configuration, to format text as deleted, wrap it with double-tildes. + #### Passthrough {{< new-in 0.122.0 />}} @@ -111,7 +117,7 @@ Markdown|Replaced by|Description `”`|`”`|right double quote `’`|`’`|right single quote -### Settings explained +### Goldmark settings explained Most of the Goldmark settings above are self-explanatory, but some require explanation. @@ -133,13 +139,13 @@ parser.autoHeadingID : (`bool`) Whether to automatically add `id` attributes to headings (i.e., `h1`, `h2`, `h3`, `h4`, `h5`, and `h6` elements). parser.autoIDType -: (`string`) The strategy used to automatically generate `id` attributes, one of `github`, `github-ascii` or `blackfriday`. +: (`string`) The strategy used to automatically generate `id` attributes, one of `github`, `github-ascii` or `blackfriday`. Default is `github`. - - `github` produces GitHub-compatible `id` attributes - - `github-ascii` drops any non-ASCII characters after accent normalization - - `blackfriday` produces `id` attributes compatible with the Blackfriday Markdown renderer + - `github`: Generate GitHub-compatible `id` attributes + - `github-ascii`: Drop any non-ASCII characters after accent normalization + - `blackfriday`: Generate `id` attributes compatible with the Blackfriday Markdown renderer - This is also the strategy used by the [anchorize](/functions/urls/anchorize) template function. Default is `github`. + This is also the strategy used by the [anchorize] template function. parser.attribute.block : (`bool`) Whether to enable [Markdown attributes] for block elements. Default is `false`. @@ -147,19 +153,33 @@ parser.attribute.block parser.attribute.title : (`bool`) Whether to enable [Markdown attributes] for headings. Default is `true`. + renderHooks.image.enableDefault : {{< new-in 0.123.0 />}} -: (`bool`) Whether to enable the [embedded image render hook]. Default is `false`. +: Deprecated in v0.148.0. Use `renderHooks.image.useEmbedded` instead. - > [!note] - > The embedded image render hook is automatically enabled for multilingual single-host sites if [duplication of shared page resources] is disabled. This is the default configuration for multilingual single-host sites. +renderHooks.image.useEmbedded +: {{< new-in 0.148.0 />}} +: (`string`) When to use the [embedded image render hook]. One of `auto`, `never`, `always`, or `fallback`. Default is `auto`. + - `auto`: Automatically use the embedded image render hook for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom image render hooks are defined by your project, modules, or themes, these will be used instead. + - `never`: Never use the embedded image render hook. If custom image render hooks are defined by your project, modules, or themes, these will be used instead. + - `always`: Always use the embedded image render hook, even if custom image render hooks are provided by your project, modules, or themes. In this case, the embedded hook takes precedence. + - `fallback`: Use the embedded image render hook only if custom image render hooks are not provided by your project, modules, or themes. If custom image render hooks exist, these will be used instead. + + renderHooks.link.enableDefault : {{< new-in 0.123.0 />}} -: (`bool`) Whether to enable the [embedded link render hook]. Default is `false`. +: Deprecated in v0.148.0. Use `renderHooks.link.useEmbedded` instead. - > [!note] - > The embedded link render hook is automatically enabled for multilingual single-host sites if [duplication of shared page resources] is disabled. This is the default configuration for multilingual single-host sites. +renderHooks.link.useEmbedded +: {{< new-in 0.148.0 />}} +: (`string`) When to use the [embedded link render hook]. One of `auto`, `never`, `always`, or `fallback`. Default is `auto`. + + - `auto`: Automatically use the embedded link render hook for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom link render hooks are defined by your project, modules, or themes, these will be used instead. + - `never`: Never use the embedded link render hook. If custom link render hooks are defined by your project, modules, or themes, these will be used instead. + - `always`: Always use the embedded link render hook, even if custom link render hooks are provided by your project, modules, or themes. In this case, the embedded hook takes precedence. + - `fallback`: Use the embedded link render hook only if custom link render hooks are not provided by your project, modules, or themes. If custom link render hooks exist, these will be used instead. renderer.hardWraps : (`bool`) Whether to replace newline characters within a paragraph with `br` elements. Default is `false`. @@ -173,7 +193,7 @@ This is the default configuration for the AsciiDoc renderer: {{< code-toggle config=markup.asciidocExt />}} -### Settings explained +### AsciiDoc settings explained attributes : (`map`) A map of key-value pairs, each a document attribute. See Asciidoctor's [attributes]. @@ -226,49 +246,47 @@ workingFolderCurrent Follow the steps below to enable syntax highlighting. -#### Step 1 +Step 1 +: Set the `source-highlighter` attribute in your site configuration. For example: -Set the `source-highlighter` attribute in your site configuration. For example: + {{< code-toggle file=hugo >}} + [markup.asciidocExt.attributes] + source-highlighter = 'rouge' + {{< /code-toggle >}} -{{< code-toggle file=hugo >}} -[markup.asciidocExt.attributes] -source-highlighter = 'rouge' -{{< /code-toggle >}} +Step 2 +: Generate the highlighter CSS. For example: -#### Step 2 + ```text + rougify style monokai.sublime > assets/css/syntax.css + ``` -Generate the highlighter CSS. For example: +Step 3 +: In your base template add a link to the CSS file: -```text -rougify style monokai.sublime > assets/css/syntax.css -``` + ```go-html-template {file="layouts/baseof.html"} + + ... + {{ with resources.Get "css/syntax.css" }} + + {{ end }} + ... + + ``` -#### Step 3 +Step 4 +: Add the code to be highlighted to your markup: -In your base template add a link to the CSS file: + ```text + [#hello,ruby] + ---- + require 'sinatra' -```go-html-template {file="layouts/baseof.html"} - - ... - {{ with resources.Get "css/syntax.css" }} - - {{ end }} - ... - -``` - -Then add the code to be highlighted to your markup: - -```text -[#hello,ruby] ----- -require 'sinatra' - -get '/hi' do - "Hello World!" -end ----- -``` + get '/hi' do + "Hello World!" + end + ---- + ``` ### Troubleshooting @@ -303,24 +321,24 @@ ordered [`Fragments.Identifiers`]: /methods/page/fragments/#identifiers [`TableOfContents`]: /methods/page/tableofcontents/ +[anchorize]: /functions/urls/anchorize +[AsciiDoc]: https://asciidoc.org/ [asciidoctor-diagram]: https://asciidoctor.org/docs/asciidoctor-diagram/ [attributes]: https://asciidoctor.org/docs/asciidoc-syntax-quick-reference/#attributes-and-substitutions [CommonMark]: https://spec.commonmark.org/current/ [deleted text]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/del [duplication of shared page resources]: /configuration/markup/#duplicateresourcefiles -[duplication of shared page resources]: /configuration/markup/#duplicateresourcefiles -[embedded image render hook]: /render-hooks/images/#default -[embedded image render hook]: /render-hooks/images/#default -[embedded link render hook]: /render-hooks/links/#default -[embedded link render hook]: /render-hooks/links/#default -[GitHub Flavored Markdown]: https://github.github.com/gfm/ +[Emacs Org Mode]: https://orgmode.org/ +[embedded image render hook]: /render-hooks/images/#embedded +[embedded link render hook]: /render-hooks/links/#embedded [GitHub Flavored Markdown: Autolinks]: https://github.github.com/gfm/#autolinks-extension- [GitHub Flavored Markdown: Strikethrough]: https://github.github.com/gfm/#strikethrough-extension- [GitHub Flavored Markdown: Tables]: https://github.github.com/gfm/#tables-extension- [GitHub Flavored Markdown: Task list items]: https://github.github.com/gfm/#task-list-items-extension- -[Goldmark]: https://github.com/yuin/goldmark/ +[GitHub Flavored Markdown]: https://github.github.com/gfm/ [Goldmark Extensions: CJK]: https://github.com/yuin/goldmark?tab=readme-ov-file#cjk-extension [Goldmark Extensions: Typographer]: https://github.com/yuin/goldmark?tab=readme-ov-file#typographer-extension +[Goldmark]: https://github.com/yuin/goldmark/ [Hugo Goldmark Extensions: Extras]: https://github.com/gohugoio/hugo-goldmark-extensions?tab=readme-ov-file#extras-extension [Hugo Goldmark Extensions: Passthrough]: https://github.com/gohugoio/hugo-goldmark-extensions?tab=readme-ov-file#passthrough-extension [image render hook]: /render-hooks/images/ @@ -330,12 +348,10 @@ ordered [Markdown attributes]: /content-management/markdown-attributes/ [mathematics in Markdown]: content-management/mathematics/ [multilingual page resources]: /content-management/page-resources/#multilingual +[Pandoc]: https://pandoc.org/ [PHP Markdown Extra: Definition lists]: https://michelf.ca/projects/php-markdown/extra/#def-list [PHP Markdown Extra: Footnotes]: https://michelf.ca/projects/php-markdown/extra/#footnotes +[reStructuredText]: https://docutils.sourceforge.io/rst.html [security policy]: /configuration/security/ [subscript]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sub [superscript]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sup -[AsciiDoc]: https://asciidoc.org/ -[Emacs Org Mode]: https://orgmode.org/ -[Pandoc]: https://pandoc.org/ -[reStructuredText]: https://docutils.sourceforge.io/rst.html diff --git a/content/en/configuration/menus.md b/content/en/configuration/menus.md index 759f53ff3..6b27e966b 100644 --- a/content/en/configuration/menus.md +++ b/content/en/configuration/menus.md @@ -96,6 +96,7 @@ url This nested menu demonstrates some of the available properties: + {{< code-toggle file=hugo >}} [[menus.main]] name = 'Products' @@ -127,6 +128,7 @@ weight = 30 [menus.main.params] rel = 'external' {{< /code-toggle >}} + [`Menus`]: /methods/site/menus/ [Automatically]: /content-management/menus/#define-automatically diff --git a/content/en/configuration/module.md b/content/en/configuration/module.md index d736b7c6f..4a7267bd6 100644 --- a/content/en/configuration/module.md +++ b/content/en/configuration/module.md @@ -11,6 +11,7 @@ aliases: [/hugo-modules/configuration/] This is the default configuration: + {{< code-toggle file=hugo >}} [module] noProxy = 'none' @@ -20,6 +21,7 @@ proxy = 'direct' vendorClosest = false workspace = 'off' {{< /code-toggle >}} + auth : {{< new-in 0.144.0 />}} @@ -75,12 +77,10 @@ extended : (`bool`) Whether the extended edition of Hugo is required, satisfied by installing either the extended or extended/deploy edition. max -: (`string`) The maximum Hugo version supported, for example `0.143.0`. +: (`string`) The maximum Hugo version supported, for example `0.148.0`. min -: (`string`) The minimum Hugo version supported, for example `0.123.0`. - -[`themesDir`]: /configuration/all/#themesdir +: (`string`) The minimum Hugo version supported, for example `0.102.0`. ## Imports @@ -112,8 +112,6 @@ noVendor path : (`string`) The module path, either a valid Go module path (e.g., `github.com/gohugoio/myShortcodes`) or the directory name if stored in the [`themesDir`]. -[`themesDir`]: /configuration/all#themesDir - {{% include "/_common/gomodules-info.md" %}} ## Mounts @@ -177,3 +175,5 @@ excludeFiles source="assets" target="assets" {{< /code-toggle >}} + +[`themesDir`]: /configuration/all/#themesdir diff --git a/content/en/configuration/output-formats.md b/content/en/configuration/output-formats.md index f3dbceec5..7e80d30fb 100644 --- a/content/en/configuration/output-formats.md +++ b/content/en/configuration/output-formats.md @@ -44,25 +44,25 @@ isHTML : (`bool`) Whether to classify the output format as HTML. Hugo uses this value to determine when to create alias redirects and when to inject the LiveReload script. Default is `false`. isPlainText -: (`bool`) Whether to parse templates for this output format with Go's [text/template] package instead of the [html/template] package. Default is `false`. +: (`bool`) Whether to parse templates for this output format with Go's [text/template][] package instead of the [html/template][] package. Default is `false`. mediaType -: (`string`) The [media type](g) of the published file. This must match one of the [configured media types]. +: (`string`) The [media type](g) of the published file. This must match one of the [configured media types][]. notAlternative -: (`bool`) Whether to exclude this output format from the values returned by the [`AlternativeOutputFormats`] method on a `Page` object. Default is `false`. +: (`bool`) Whether to exclude this output format from the values returned by the [`AlternativeOutputFormats`][] method on a `Page` object. Default is `false`. noUgly -: (`bool`) Whether to disable ugly URLs for this output format when [`uglyURLs`] are enabled in your site configuration. Default is `false`. +: (`bool`) Whether to disable ugly URLs for this output format when [`uglyURLs`][] are enabled in your site configuration. Default is `false`. path -: (`string`) The published file's directory path, relative to the root of the publish directory. If not specified, the file will be published using its content path. +: (`string`) The first segment of the publication path for this output format. This path segment is relative to the root of your [`publishDir`][]. If omitted, Hugo will use the file's original content path for publishing. permalinkable -: (`bool`) Whether to return the rendering output format rather than main output format when invoking the [`Permalink`] and [`RelPermalink`] methods on a `Page` object. See [details](#link-to-output-formats). Enabled by default for the `html` and `amp` output formats. Default is `false`. +: (`bool`) Whether to return the rendering output format rather than main output format when invoking the [`Permalink`][] and [`RelPermalink`][] methods on a `Page` object. See [details](#link-to-output-formats). Enabled by default for the `html` and `amp` output formats. Default is `false`. protocol -: (`string`) The protocol (scheme) of the URL for this output format. For example, `https://` or `webcal://`. Default is the scheme of the [`baseURL`] parameter in your site configuration, typically `https://`. +: (`string`) The protocol (scheme) of the URL for this output format. For example, `https://` or `webcal://`. Default is the scheme of the [`baseURL`][] parameter in your site configuration, typically `https://`. rel : (`string`) If provided, you can assign this value to `rel` attributes in `link` elements when iterating over output formats in your templates. Default is `alternate`. @@ -93,56 +93,52 @@ The example above shows that when you modify a default content format, you only You can create new output formats as needed. For example, you may wish to create an output format to support Atom feeds. -### Step 1 +Step 1 +: Output formats require a specified media type. Because Atom feeds use `application/atom+xml`, which is not one of the [default media types][], you must create it first. -Output formats require a specified media type. Because Atom feeds use `application/atom+xml`, which is not one of the [default media types], you must create it first. + {{< code-toggle file=hugo >}} + [mediaTypes.'application/atom+xml'] + suffixes = ['atom'] + {{< /code-toggle >}} -{{< code-toggle file=hugo >}} -[mediaTypes.'application/atom+xml'] -suffixes = ['atom'] -{{< /code-toggle >}} + See [configure media types][] for more information. -See [configure media types] for more information. +Step 2 +: Create a new output format: -### Step 2 + {{< code-toggle file=hugo >}} + [outputFormats.atom] + mediaType = 'application/atom+xml' + noUgly = true + {{< /code-toggle >}} -Create a new output format: + Note that we use the default settings for all other output format properties. -{{< code-toggle file=hugo >}} -[outputFormats.atom] -mediaType = 'application/atom+xml' -noUgly = true -{{< /code-toggle >}} +Step 3 +: Specify the page [kinds](g) for which to render this output format: -Note that we use the default settings for all other output format properties. + {{< code-toggle file=hugo >}} + [outputs] + home = ['html', 'rss', 'atom'] + section = ['html', 'rss', 'atom'] + taxonomy = ['html', 'rss', 'atom'] + term = ['html', 'rss', 'atom'] + {{< /code-toggle >}} -### Step 3 + See [configure outputs][] for more information. -Specify the page [kinds](g) for which to render this output format: +Step 4 +: Create a template to render the output format. Since Atom feeds are lists, you need to create a list template. Consult the [template lookup order] to find the correct template path: -{{< code-toggle file=hugo >}} -[outputs] -home = ['html', 'rss', 'atom'] -section = ['html', 'rss', 'atom'] -taxonomy = ['html', 'rss', 'atom'] -term = ['html', 'rss', 'atom'] -{{< /code-toggle >}} + ```text + layouts/list.atom.atom + ``` -See [configure outputs] for more information. - -### Step 4 - -Create a template to render the output format. Since Atom feeds are lists, you need to create a list template. Consult the [template lookup order] to find the correct template path: - -```text -layouts/list.atom.atom -``` - -We leave writing the template code as an exercise for you. Aim for a result similar to the [embedded RSS template]. + We leave writing the template code as an exercise for you. Aim for a result similar to the [embedded RSS template][]. ## List output formats -To access output formats, each `Page` object provides two methods: [`OutputFormats`] (for all formats, including the current one) and [`AlternativeOutputFormats`]. Use `AlternativeOutputFormats` to create a link `rel` list within your site's `head` element, as shown below: +To access output formats, each `Page` object provides two methods: [`OutputFormats`][] (for all formats, including the current one) and [`AlternativeOutputFormats`][]. Use `AlternativeOutputFormats` to create a link `rel` list within your site's `head` element, as shown below: ```go-html-template {{ range .AlternativeOutputFormats }} @@ -152,7 +148,7 @@ To access output formats, each `Page` object provides two methods: [`OutputForma ## Link to output formats -By default, a `Page` object's [`Permalink`] and [`RelPermalink`] methods return the URL of the [primary output format](g), typically `html`. This behavior remains consistent regardless of the template used. +By default, a `Page` object's [`Permalink`][] and [`RelPermalink`][] methods return the URL of the [primary output format](g), typically `html`. This behavior remains consistent regardless of the template used. For example, in `page.json.json`, you'll see: @@ -163,7 +159,7 @@ For example, in `page.json.json`, you'll see: {{ end }} ``` -To make these methods return the URL of the _current_ template's output format, you must set the [`permalinkable`] setting to `true` for that format. +To make these methods return the URL of the _current_ template's output format, you must set the [`permalinkable`][] setting to `true` for that format. With `permalinkable` set to true for `json` in the same `page.json.json` template: @@ -176,7 +172,7 @@ With `permalinkable` set to true for `json` in the same `page.json.json` templat ## Template lookup order -Each output format requires a template conforming to the [template lookup order]. +Each output format requires a template conforming to the [template lookup order][]. For the highest specificity in the template lookup order, include the page kind, output format, and suffix in the file name: @@ -193,17 +189,18 @@ Output format|Template path `rss`|`layouts/section.rss.xml` [`AlternativeOutputFormats`]: /methods/page/alternativeoutputformats/ +[`baseURL`]: /configuration/all/#baseurl [`OutputFormats`]: /methods/page/outputformats/ [`Permalink`]: /methods/page/permalink/ -[`RelPermalink`]: /methods/page/relpermalink/ -[`baseURL`]: /configuration/all/#baseurl [`permalinkable`]: #permalinkable +[`publishDir`]: /configuration/all/#publishdir +[`RelPermalink`]: /methods/page/relpermalink/ [`uglyURLs`]: /configuration/ugly-urls/ [configure media types]: /configuration/media-types/ [configure outputs]: /configuration/outputs/ [configured media types]: /configuration/media-types/ [default media types]: /configuration/media-types/ -[embedded RSS template]: {{% eturl rss %}} +[embedded RSS template]: <{{% eturl rss %}}> [html/template]: https://pkg.go.dev/html/template [template lookup order]: /templates/lookup-order/ [text/template]: https://pkg.go.dev/text/template diff --git a/content/en/configuration/related-content.md b/content/en/configuration/related-content.md index 7f2aa9831..421a1ea77 100644 --- a/content/en/configuration/related-content.md +++ b/content/en/configuration/related-content.md @@ -95,7 +95,7 @@ weight = 1 We've configured the `authors` index with a weight of `2` and the `genres` index with a weight of `1`. This means Hugo prioritizes shared `authors` as twice as significant as shared `genres`. -Then render a list of 5 related reviews with a partial template like this: +Then render a list of 5 related reviews with a _partial_ template like this: ```go-html-template {file="layouts/_partials/related.html" copy=true} {{ with site.RegularPages.Related . | first 5 }} diff --git a/content/en/configuration/security.md b/content/en/configuration/security.md index f950dd233..f9eb91bd9 100644 --- a/content/en/configuration/security.md +++ b/content/en/configuration/security.md @@ -6,7 +6,7 @@ categories: [] keywords: [] --- -Hugo's built-in security policy, which restricts access to `os/exec`, remote communication, and similar operations, is configured via allow lists. By default, access is restricted. If a build attempts to use a feature not included in the allow list, it will fail, providing a detailed message. +Hugo's built-in security policy, which restricts access to `os/exec`, remote communication, and similar operations, is configured via allowlists. By default, access is restricted. If a build attempts to use a feature not included in the allowlist, it will fail, providing a detailed message. This is the default security configuration: @@ -34,7 +34,7 @@ http.urls : (`[]string`) A slice of [regular expressions](g) matching the URLs that the `resources.GetRemote` function is allowed to access. > [!note] -> Setting an allow list to the string `none` will completely disable the associated feature. +> Setting an allowlist to the string `none` will completely disable the associated feature. You can also override the site configuration with environment variables. For example, to block `resources.GetRemote` from accessing any URL: diff --git a/content/en/configuration/segments.md b/content/en/configuration/segments.md index 0c4098770..b87c870c4 100644 --- a/content/en/configuration/segments.md +++ b/content/en/configuration/segments.md @@ -31,7 +31,7 @@ Each segment is defined by include and exclude filters: Available fields for filtering: kind -: (`string`) A [glob](g) pattern matching the [page kind](g). For example: ` {taxonomy,term}`. +: (`string`) A [glob](g) pattern matching the [page kind](g). For example: `{taxonomy,term}`. lang : (`string`) A [glob](g) pattern matching the [page language]. For example: `{en,de}`. diff --git a/content/en/configuration/server.md b/content/en/configuration/server.md index 92f0f0cfa..f77e7f47f 100644 --- a/content/en/configuration/server.md +++ b/content/en/configuration/server.md @@ -47,7 +47,7 @@ to ## Headers -Include headers in every server response to facilitate testing, particularly for features like Content Security Policies. +Include headers in every server response to facilitate testing, particularly for features like [Content Security Policies]. [Content Security Policies]: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP diff --git a/content/en/configuration/taxonomies.md b/content/en/configuration/taxonomies.md index 3cf6497bc..fed1d4c5e 100644 --- a/content/en/configuration/taxonomies.md +++ b/content/en/configuration/taxonomies.md @@ -17,8 +17,8 @@ When creating a taxonomy: Then use the value as the key in front matter: + {{< code-toggle file=content/example.md fm=true >}} ---- title: Example categories: - vegetarian @@ -27,7 +27,7 @@ tags: - appetizer - main course {{< /code-toggle >}} - + If you do not expect to assign more than one [term](g) from a given taxonomy to a content page, you may use the singular form for both key and value: {{< code-toggle file=hugo >}} @@ -37,12 +37,13 @@ taxonomies: Then in front matter: + {{< code-toggle file=content/example.md fm=true >}} ---- title: Example author: - Robert Smith {{< /code-toggle >}} + The example above illustrates that even with a single term, the value is still provided as an array. diff --git a/content/en/configuration/ugly-urls.md b/content/en/configuration/ugly-urls.md index ec1dd8a49..17b110a9f 100644 --- a/content/en/configuration/ugly-urls.md +++ b/content/en/configuration/ugly-urls.md @@ -13,6 +13,7 @@ https://example.org/section/article.html ``` In its default configuration, Hugo generates [pretty URLs](g). For example: + ```text https://example.org/section/article/ ``` diff --git a/content/en/content-management/comments.md b/content/en/content-management/comments.md index f0e4a9ae1..b843ddb99 100644 --- a/content/en/content-management/comments.md +++ b/content/en/content-management/comments.md @@ -64,9 +64,4 @@ Open-source commenting systems: [configuration]: /configuration/ [disquspartial]: /templates/embedded/#disqus [disqussetup]: https://disqus.com/profile/signup/ -[forum]: https://discourse.gohugo.io [front matter]: /content-management/front-matter/ -[kaijuissue]: https://github.com/spf13/kaiju/issues/new -[issotutorial]: https://stiobhart.net/2017-02-24-isso-comments/ -[partials]: /templates/partial/ -[MongoDB]: https://www.mongodb.com/ diff --git a/content/en/content-management/content-adapters.md b/content/en/content-management/content-adapters.md index e22962531..9eae86266 100644 --- a/content/en/content-management/content-adapters.md +++ b/content/en/content-management/content-adapters.md @@ -161,112 +161,109 @@ Key|Description|Required Create pages from remote data, where each page represents a book review. -### Step 1 +Step 1 +: Create the content structure. -Create the content structure. + ```text + content/ + └── books/ + ├── _content.gotmpl <-- content adapter + └── _index.md + ``` -```text -content/ -└── books/ - ├── _content.gotmpl <-- content adapter - └── _index.md -``` +Step 2 +: Inspect the remote data to determine how to map key-value pairs to front matter fields.\ + -### Step 2 -Inspect the remote data to determine how to map key-value pairs to front matter fields.\ - +Step 3 +: Create the content adapter. -### Step 3 - -Create the content adapter. - -```go-html-template {file="content/books/_content.gotmpl" copy=true} -{{/* Get remote data. */}} -{{ $data := dict }} -{{ $url := "https://gohugo.io/shared/examples/data/books.json" }} -{{ with try (resources.GetRemote $url) }} - {{ with .Err }} - {{ errorf "Unable to get remote resource %s: %s" $url . }} - {{ else with .Value }} - {{ $data = . | transform.Unmarshal }} - {{ else }} - {{ errorf "Unable to get remote resource %s" $url }} - {{ end }} -{{ end }} - -{{/* Add pages and page resources. */}} -{{ range $data }} - - {{/* Add page. */}} - {{ $content := dict "mediaType" "text/markdown" "value" .summary }} - {{ $dates := dict "date" (time.AsTime .date) }} - {{ $params := dict "author" .author "isbn" .isbn "rating" .rating "tags" .tags }} - {{ $page := dict - "content" $content - "dates" $dates - "kind" "page" - "params" $params - "path" .title - "title" .title - }} - {{ $.AddPage $page }} - - {{/* Add page resource. */}} - {{ $item := . }} - {{ with $url := $item.cover }} - {{ with try (resources.GetRemote $url) }} - {{ with .Err }} - {{ errorf "Unable to get remote resource %s: %s" $url . }} - {{ else with .Value }} - {{ $content := dict "mediaType" .MediaType.Type "value" .Content }} - {{ $params := dict "alt" $item.title }} - {{ $resource := dict - "content" $content - "params" $params - "path" (printf "%s/cover.%s" $item.title .MediaType.SubType) - }} - {{ $.AddResource $resource }} - {{ else }} - {{ errorf "Unable to get remote resource %s" $url }} - {{ end }} + ```go-html-template {file="content/books/_content.gotmpl" copy=true} + {{/* Get remote data. */}} + {{ $data := dict }} + {{ $url := "https://gohugo.io/shared/examples/data/books.json" }} + {{ with try (resources.GetRemote $url) }} + {{ with .Err }} + {{ errorf "Unable to get remote resource %s: %s" $url . }} + {{ else with .Value }} + {{ $data = . | transform.Unmarshal }} + {{ else }} + {{ errorf "Unable to get remote resource %s" $url }} {{ end }} {{ end }} -{{ end }} -``` + {{/* Add pages and page resources. */}} + {{ range $data }} -### Step 4 + {{/* Add page. */}} + {{ $content := dict "mediaType" "text/markdown" "value" .summary }} + {{ $dates := dict "date" (time.AsTime .date) }} + {{ $params := dict "author" .author "isbn" .isbn "rating" .rating "tags" .tags }} + {{ $page := dict + "content" $content + "dates" $dates + "kind" "page" + "params" $params + "path" .title + "title" .title + }} + {{ $.AddPage $page }} -Create a page template to render each book review. - -```go-html-template {file="layouts/books/page.html" copy=true} -{{ define "main" }} -

{{ .Title }}

- - {{ with .Resources.GetMatch "cover.*" }} - {{ .Params.alt }} - {{ end }} - -

Author: {{ .Params.author }}

- -

- ISBN: {{ .Params.isbn }}
- Rating: {{ .Params.rating }}
- Review date: {{ .Date | time.Format ":date_long" }} -

- - {{ with .GetTerms "tags" }} -

Tags:

-
    - {{ range . }} -
  • {{ .LinkTitle }}
  • + {{/* Add page resource. */}} + {{ $item := . }} + {{ with $url := $item.cover }} + {{ with try (resources.GetRemote $url) }} + {{ with .Err }} + {{ errorf "Unable to get remote resource %s: %s" $url . }} + {{ else with .Value }} + {{ $content := dict "mediaType" .MediaType.Type "value" .Content }} + {{ $params := dict "alt" $item.title }} + {{ $resource := dict + "content" $content + "params" $params + "path" (printf "%s/cover.%s" $item.title .MediaType.SubType) + }} + {{ $.AddResource $resource }} + {{ else }} + {{ errorf "Unable to get remote resource %s" $url }} + {{ end }} {{ end }} -
- {{ end }} + {{ end }} - {{ .Content }} -{{ end }} -``` + {{ end }} + ``` + +Step 4 +: Create a _page_ template to render each book review. + + ```go-html-template {file="layouts/books/page.html" copy=true} + {{ define "main" }} +

{{ .Title }}

+ + {{ with .Resources.GetMatch "cover.*" }} + {{ .Params.alt }} + {{ end }} + +

Author: {{ .Params.author }}

+ +

+ ISBN: {{ .Params.isbn }}
+ Rating: {{ .Params.rating }}
+ Review date: {{ .Date | time.Format ":date_long" }} +

+ + {{ with .GetTerms "tags" }} +

Tags:

+ + {{ end }} + + {{ .Content }} + {{ end }} + ``` ## Multilingual sites diff --git a/content/en/content-management/formats.md b/content/en/content-management/formats.md index c82329ab2..65fb3d04d 100644 --- a/content/en/content-management/formats.md +++ b/content/en/content-management/formats.md @@ -92,7 +92,6 @@ hugo --logLevel info ``` [AsciiDoc]: https://asciidoc.org/ -[configure the AsciiDoc renderer]: /configuration/markup/#asciidoc [configure asciidoc]: /configuration/markup/#asciidoc ### Pandoc diff --git a/content/en/content-management/front-matter.md b/content/en/content-management/front-matter.md index d99475f4c..2da6a2613 100644 --- a/content/en/content-management/front-matter.md +++ b/content/en/content-management/front-matter.md @@ -18,10 +18,6 @@ The front matter at the top of each content file is metadata that: Provide front matter using a serialization format, one of [JSON], [TOML], or [YAML]. Hugo determines the front matter format by examining the delimiters that separate the front matter from the page content. -[json]: https://www.json.org/ -[toml]: https://toml.io/ -[yaml]: https://yaml.org/ - See examples of front matter delimiters by toggling between the serialization formats below. {{< code-toggle file=content/example.md fm=true >}} @@ -115,7 +111,7 @@ sitemap : (`map`) A map of sitemap options. See the [sitemap templates] page for details. Access these values from a template using the [`Sitemap`] method on a `Page` object. slug -: (`string`) Overrides the last segment of the URL path. Not applicable to section pages. See the [URL management] page for details. Access this value from a template using the [`Slug`] method on a `Page` object. +: (`string`) Overrides the last segment of the URL path. Not applicable to `home`, `section`, `taxonomy`, or `term` pages. See the [URL management] page for details. Access this value from a template using the [`Slug`] method on a `Page` object. summary : (`string`) Conceptually different than the page `description`, the summary either summarizes the content or serves as a teaser to encourage readers to visit the page. Access this value from a template using the [`Summary`] method on a `Page` object. @@ -138,42 +134,6 @@ url weight : (`int`) The page [weight](g), used to order the page within a [page collection](g). Access this value from a template using the [`Weight`] method on a `Page` object. -[URL management]: /content-management/urls/#slug -[`Summary`]: /methods/page/summary/ -[`aliases`]: /methods/page/aliases/ -[`date`]: /methods/page/date/ -[`description`]: /methods/page/description/ -[`draft`]: /methods/page/draft/ -[`expirydate`]: /methods/page/expirydate/ -[`fuzzywordcount`]: /methods/page/wordcount/ -[`keywords`]: /methods/page/keywords/ -[`lastmod`]: /methods/page/date/ -[`layout`]: /methods/page/layout/ -[`linktitle`]: /methods/page/linktitle/ -[`publishdate`]: /methods/page/publishdate/ -[`readingtime`]: /methods/page/readingtime/ -[`sitemap`]: /methods/page/sitemap/ -[`slug`]: /methods/page/slug/ -[`summary`]: /methods/page/summary/ -[`title`]: /methods/page/title/ -[`translationkey`]: /methods/page/translationkey/ -[`type`]: /methods/page/type/ -[`weight`]: /methods/page/weight/ -[`wordcount`]: /methods/page/wordcount/ -[aliases]: /content-management/urls/#aliases -[build options]: /content-management/build-options/ -[cascade]: #cascade-1 -[configure outputs]: /configuration/outputs/#outputs-per-page -[content formats]: /content-management/formats/#classification -[leaf bundles]: /content-management/page-bundles/#leaf-bundles -[menus]: /content-management/menus/#define-in-front-matter -[output formats]: /configuration/output-formats/ -[page parameters]: #parameters -[page resources]: /content-management/page-resources/#metadata -[sitemap templates]: /templates/sitemap/ -[target a specific template]: /templates/lookup-order/#target-a-template -[template lookup order]: /templates/lookup-order/ - ## Parameters {{< new-in 0.123.0 />}} @@ -191,9 +151,6 @@ author = 'John Smith' Access these values from a template using the [`Params`] or [`Param`] method on a `Page` object. -[`param`]: /methods/page/param/ -[`params`]: /methods/page/params/ - Hugo provides [embedded templates] to optionally insert meta data within the `head` element of your rendered pages. These embedded templates expect the following front matter parameters: Parameter|Data type|Used by these embedded templates @@ -248,7 +205,6 @@ Access taxonomy terms from a template using the [`Params`] or [`GetTerms`] metho {{ end }} ``` -[`Params`]: /methods/page/params/ [`GetTerms`]: /methods/page/getterms/ ## Cascade @@ -289,7 +245,7 @@ environment : (`string`) A [glob](g) pattern matching the build [environment](g). For example: `{staging,production}`. kind -: (`string`) A [glob](g) pattern matching the [page kind](g). For example: ` {taxonomy,term}`. +: (`string`) A [glob](g) pattern matching the [page kind](g). For example: `{taxonomy,term}`. path : (`string`) A [glob](g) pattern matching the page's [logical path](g). For example: `{/books,/books/**}`. @@ -356,7 +312,46 @@ To override the default time zone, set the [`timeZone`](/configuration/all/#time 1. The time zone specified in your site configuration 1. The `Etc/UTC` time zone +[`aliases`]: /methods/page/aliases/ +[`date`]: /methods/page/date/ +[`description`]: /methods/page/description/ +[`draft`]: /methods/page/draft/ +[`expirydate`]: /methods/page/expirydate/ +[`fuzzywordcount`]: /methods/page/wordcount/ +[`keywords`]: /methods/page/keywords/ +[`lastmod`]: /methods/page/date/ +[`layout`]: /methods/page/layout/ +[`linktitle`]: /methods/page/linktitle/ [`opengraph.html`]: {{% eturl opengraph %}} +[`Param`]: /methods/page/param/ +[`Params`]: /methods/page/params/ +[`publishdate`]: /methods/page/publishdate/ +[`readingtime`]: /methods/page/readingtime/ [`schema.html`]: {{% eturl schema %}} +[`sitemap`]: /methods/page/sitemap/ +[`slug`]: /methods/page/slug/ +[`Summary`]: /methods/page/summary/ +[`title`]: /methods/page/title/ +[`translationkey`]: /methods/page/translationkey/ [`twitter_cards.html`]: {{% eturl twitter_cards %}} +[`type`]: /methods/page/type/ +[`weight`]: /methods/page/weight/ +[`wordcount`]: /methods/page/wordcount/ +[aliases]: /content-management/urls/#aliases +[build options]: /content-management/build-options/ +[cascade]: #cascade-1 +[configure outputs]: /configuration/outputs/#outputs-per-page +[content formats]: /content-management/formats/#classification [embedded templates]: /templates/embedded/ +[json]: https://www.json.org/ +[leaf bundles]: /content-management/page-bundles/#leaf-bundles +[menus]: /content-management/menus/#define-in-front-matter +[output formats]: /configuration/output-formats/ +[page parameters]: #parameters +[page resources]: /content-management/page-resources/#metadata +[sitemap templates]: /templates/sitemap/ +[target a specific template]: /templates/lookup-order/#target-a-template +[template lookup order]: /templates/lookup-order/ +[toml]: https://toml.io/ +[URL management]: /content-management/urls/#slug +[yaml]: https://yaml.org/ diff --git a/content/en/content-management/mathematics.md b/content/en/content-management/mathematics.md index dc47cbde4..aaa8c2394 100644 --- a/content/en/content-management/mathematics.md +++ b/content/en/content-management/mathematics.md @@ -45,117 +45,114 @@ Whether an equation or expression appears inline, or as a block, depends on the Follow these instructions to include mathematical equations and expressions in your Markdown using LaTeX markup. -### Step 1 +Step 1 +: Enable and configure the Goldmark [passthrough extension] in your site configuration. The passthrough extension preserves raw Markdown within delimited snippets of text, including the delimiters themselves. -Enable and configure the Goldmark [passthrough extension] in your site configuration. The passthrough extension preserves raw Markdown within delimited snippets of text, including the delimiters themselves. + {{< code-toggle file=hugo copy=true >}} + [markup.goldmark.extensions.passthrough] + enable = true -{{< code-toggle file=hugo copy=true >}} -[markup.goldmark.extensions.passthrough] -enable = true + [markup.goldmark.extensions.passthrough.delimiters] + block = [['\[', '\]'], ['$$', '$$']] + inline = [['\(', '\)']] -[markup.goldmark.extensions.passthrough.delimiters] -block = [['\[', '\]'], ['$$', '$$']] -inline = [['\(', '\)']] + [params] + math = true + {{< /code-toggle >}} -[params] -math = true -{{< /code-toggle >}} + The configuration above enables mathematical rendering on every page unless you set the `math` parameter to `false` in front matter. To enable mathematical rendering as needed, set the `math` parameter to `false` in your site configuration, and set the `math` parameter to `true` in front matter. Use this parameter in your base template as shown in [Step 3](#step-3). -The configuration above enables mathematical rendering on every page unless you set the `math` parameter to `false` in front matter. To enable mathematical rendering as needed, set the `math` parameter to `false` in your site configuration, and set the `math` parameter to `true` in front matter. Use this parameter in your base template as shown in [Step 3]. + > [!note] + > The configuration above precludes the use of the `$...$` delimiter pair for inline equations. Although you can add this delimiter pair to the configuration and JavaScript, you must double-escape the `$` symbol when used outside of math contexts to avoid unintended formatting. + > + > See the [inline delimiters](#inline-delimiters) section for details. -> [!note] -> The configuration above precludes the use of the `$...$` delimiter pair for inline equations. Although you can add this delimiter pair to the configuration and JavaScript, you must double-escape the `$` symbol when used outside of math contexts to avoid unintended formatting. -> -> See the [inline delimiters](#inline-delimiters) section for details. + To disable passthrough of inline snippets, omit the `inline` key from the configuration: -To disable passthrough of inline snippets, omit the `inline` key from the configuration: + {{< code-toggle file=hugo >}} + [markup.goldmark.extensions.passthrough.delimiters] + block = [['\[', '\]'], ['$$', '$$']] + {{< /code-toggle >}} -{{< code-toggle file=hugo >}} -[markup.goldmark.extensions.passthrough.delimiters] -block = [['\[', '\]'], ['$$', '$$']] -{{< /code-toggle >}} + You can define your own opening and closing delimiters, provided they match the delimiters that you set in [Step 2]. -You can define your own opening and closing delimiters, provided they match the delimiters that you set in [Step 2]. + {{< code-toggle file=hugo >}} + [markup.goldmark.extensions.passthrough.delimiters] + block = [['@@', '@@']] + inline = [['@', '@']] + {{< /code-toggle >}} -{{< code-toggle file=hugo >}} -[markup.goldmark.extensions.passthrough.delimiters] -block = [['@@', '@@']] -inline = [['@', '@']] -{{< /code-toggle >}} +Step 2 +: Create a _partial_ template to load MathJax or KaTeX. The example below loads MathJax, or you can use KaTeX as described in the [engines](#engines) section. -### Step 2 + ```go-html-template {file="layouts/_partials/math.html" copy=true} + + + ``` -Create a partial template to load MathJax or KaTeX. The example below loads MathJax, or you can use KaTeX as described in the [engines](#engines) section. + The delimiters above must match the delimiters in your site configuration. -```go-html-template {file="layouts/_partials/math.html" copy=true} - - -``` +Step 3 +: Conditionally call the _partial_ template from the base template. -The delimiters above must match the delimiters in your site configuration. + ```go-html-template {file="layouts/baseof.html"} + + ... + {{ if .Param "math" }} + {{ partialCached "math.html" . }} + {{ end }} + ... + + ``` -### Step 3 + The example above loads the _partial_ template if you have set the `math` parameter in front matter to `true`. If you have not set the `math` parameter in front matter, the conditional statement falls back to the `math` parameter in your site configuration. -Conditionally call the partial template from the base template. +Step 4 +: If you set the `math` parameter to `false` in your site configuration, you must set the `math` parameter to `true` in front matter. For example: -```go-html-template {file="layouts/baseof.html"} - - ... - {{ if .Param "math" }} - {{ partialCached "math.html" . }} - {{ end }} - ... - -``` + {{< code-toggle file=content/math-examples.md fm=true >}} + title = 'Math examples' + date = 2024-01-24T18:09:49-08:00 + [params] + math = true + {{< /code-toggle >}} -The example above loads the partial template if you have set the `math` parameter in front matter to `true`. If you have not set the `math` parameter in front matter, the conditional statement falls back to the `math` parameter in your site configuration. +Step 5 +: Include mathematical equations and expressions in Markdown using LaTeX markup. -### Step 4 + ```text {file="content/math-examples.md" copy=true} + This is an inline \(a^*=x-b^*\) equation. -Include mathematical equations and expressions in Markdown using LaTeX markup. + These are block equations: -```text {file="content/math-examples.md" copy=true} -This is an inline \(a^*=x-b^*\) equation. + \[a^*=x-b^*\] -These are block equations: + \[ a^*=x-b^* \] -\[a^*=x-b^*\] + \[ + a^*=x-b^* + \] -\[ a^*=x-b^* \] + These are also block equations: -\[ -a^*=x-b^* -\] + $$a^*=x-b^*$$ -These are also block equations: + $$ a^*=x-b^* $$ -$$a^*=x-b^*$$ - -$$ a^*=x-b^* $$ - -$$ -a^*=x-b^* -$$ -``` - -If you set the `math` parameter to `false` in your site configuration, you must set the `math` parameter to `true` in front matter. For example: - -{{< code-toggle file=content/math-examples.md fm=true >}} -title = 'Math examples' -date = 2024-01-24T18:09:49-08:00 -[params] -math = true -{{< /code-toggle >}} + $$ + a^*=x-b^* + $$ + ``` ## Inline delimiters @@ -179,7 +176,7 @@ MathJax and KaTeX are open-source JavaScript display engines. Both engines are f > >See the [inline delimiters](#inline-delimiters) section for details. -To use KaTeX instead of MathJax, replace the partial template from [Step 2] with this: +To use KaTeX instead of MathJax, replace the _partial_ template from [Step 2] with this: ```go-html-template {file="layouts/_partials/math.html" copy=true} {{< code-toggle file=content/products/software.md fm=true >}} title = 'Software' [menus.main] @@ -77,6 +78,7 @@ pre = '' [menus.main.params] class = 'center' {{< /code-toggle >}} + Access the entry with `site.Menus.main` in your templates. See [menu templates] for details. diff --git a/content/en/content-management/multilingual.md b/content/en/content-management/multilingual.md index a22f0b50e..5a5cd2307 100644 --- a/content/en/content-management/multilingual.md +++ b/content/en/content-management/multilingual.md @@ -25,9 +25,9 @@ Considering the following example: The first file is assigned the English language and is linked to the second. The second file is assigned the French language and is linked to the first. -Their language is __assigned__ according to the language code added as a __suffix to the file name__. +Their language is assigned according to the language code added as a suffix to the file name. -By having the same **path and base file name**, the content pieces are __linked__ together as translated pages. +By having the same path and base file name, the content pieces are linked together as translated pages. > [!note] > If a file has no language code, it will be assigned the default language. @@ -58,9 +58,9 @@ Considering the following example in conjunction with the configuration above: The first file is assigned the English language and is linked to the second. The second file is assigned the French language and is linked to the first. -Their language is __assigned__ according to the `content` directory they are __placed__ in. +Their language is assigned according to the `content` directory they are placed in. -By having the same **path and basename** (relative to their language `content` directory), the content pieces are __linked__ together as translated pages. +By having the same path and basename (relative to their language `content` directory), the content pieces are linked together as translated pages. ### Bypassing default linking @@ -76,7 +76,7 @@ Considering the following example: translationKey: "about" {{< /code-toggle >}} -By setting the `translationKey` front matter parameter to `about` in all three pages, they will be __linked__ as translated pages. +By setting the `translationKey` front matter parameter to `about` in all three pages, they will be linked as translated pages. ### Localizing permalinks @@ -127,7 +127,7 @@ To create a list of links to translated content, use a template similar to the f {{ end }} ``` -The above can be put in a partial template then included in any template. It will not print anything if there are no translations for a given page. +The above can be put in a _partial_ template then included in any template. It will not print anything if there are no translations for a given page. The above also uses the [`i18n` function][i18func] described in the next section. diff --git a/content/en/content-management/organization/index.md b/content/en/content-management/organization/index.md index 4a8fcb6fc..4c6b94e3e 100644 --- a/content/en/content-management/organization/index.md +++ b/content/en/content-management/organization/index.md @@ -128,7 +128,7 @@ The following concepts provide more insight into the relationship between your p ### `section` -A default content type is determined by the section in which a content item is stored. `section` is determined by the location within the project's `content` directory. `section` *cannot* be specified or overridden in front matter. +A default content type is determined by the section in which a content item is stored. `section` is determined by the location within the project's `content` directory. `section` cannot be specified or overridden in front matter. ### `slug` diff --git a/content/en/content-management/page-bundles.md b/content/en/content-management/page-bundles.md index f6a5cf771..a5bf9a3af 100644 --- a/content/en/content-management/page-bundles.md +++ b/content/en/content-management/page-bundles.md @@ -38,10 +38,10 @@ Page bundle characteristics vary by bundle type. | | Leaf bundle | Branch bundle | |---------------------|---------------------------------------------------------|---------------------------------------------------------| -| Index file | `index.md` | `_index.md` | -| Example | `content/about/index.md` | `content/posts/_index.md ` | +| Index file | `index.md` | `_index.md` | +| Example | `content/about/index.md` | `content/posts/_index.md` | | [Page kinds](g) | `page` | `home`, `section`, `taxonomy`, or `term` | -| Template types | [single] | [home], [section], [taxonomy], or [term] | +| Template types | [single] | [home], [section], [taxonomy], or [term] | | Descendant pages | None | Zero or more | | Resource location | Adjacent to the index file or in a nested subdirectory | Same as a leaf bundles, but excludes descendant bundles | | [Resource types](g) | `page`, `image`, `video`, etc. | all but `page` | diff --git a/content/en/content-management/page-resources.md b/content/en/content-management/page-resources.md index 204ca5301..e8991de6f 100644 --- a/content/en/content-management/page-resources.md +++ b/content/en/content-management/page-resources.md @@ -35,10 +35,10 @@ content Use any of these methods on a `Page` object to capture page resources: - - [`Resources.ByType`] - - [`Resources.Get`] - - [`Resources.GetMatch`] - - [`Resources.Match`] +- [`Resources.ByType`] +- [`Resources.Get`] +- [`Resources.GetMatch`] +- [`Resources.Match`] Once you have captured a resource, use any of the applicable [`Resource`] methods to return a value or perform an action. @@ -125,30 +125,32 @@ params ### Resources metadata example + {{< code-toggle file=content/example.md fm=true >}} title: Application -date : 2018-01-25 -resources : -- src : "images/sunset.jpg" - name : "header" -- src : "documents/photo_specs.pdf" - title : "Photo Specifications" - params: - icon : "photo" -- src : "documents/guide.pdf" - title : "Instruction Guide" -- src : "documents/checklist.pdf" - title : "Document Checklist" -- src : "documents/payment.docx" - title : "Proof of Payment" -- src : "**.pdf" - name : "pdf-file-:counter" - params : - icon : "pdf" -- src : "**.docx" - params : - icon : "word" +date: 2018-01-25 +resources: + - src: images/sunset.jpg + name: header + - src: documents/photo_specs.pdf + title: Photo Specifications + params: + icon: photo + - src: documents/guide.pdf + title: Instruction Guide + - src: documents/checklist.pdf + title: Document Checklist + - src: documents/payment.docx + title: Proof of Payment + - src: "**.pdf" + name: pdf-file-:counter + params: + icon: pdf + - src: "**.docx" + params: + icon: word {{}} + From the example above: @@ -271,12 +273,12 @@ public/ This approach reduces build times, storage requirements, bandwidth consumption, and deployment times, ultimately reducing cost. -> [!note] +> [!important] > To resolve Markdown link and image destinations to the correct location, you must use link and image render hooks that capture the page resource with the [`Resources.Get`] method, and then invoke its [`RelPermalink`] method. > -> By default, with multilingual single-host sites, Hugo enables its [embedded link render hook] and [embedded image render hook] to resolve Markdown link and image destinations. +> In its default configuration, Hugo automatically uses the [embedded link render hook] and the [embedded image render hook] for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom link or image render hooks are defined by your project, modules, or themes, these will be used instead. > -> You may override the embedded render hooks as needed, provided they capture the resource as described above. +> You can also configure Hugo to `always` use the embedded link or image render hook, use it only as a `fallback`, or `never` use it. See [details](/configuration/markup/#renderhookslinkuseembedded). Although duplicating shared page resources is inefficient, you can enable this feature in your site configuration if desired: @@ -288,10 +290,10 @@ duplicateResourceFiles = true [`RelPermalink`]: /methods/resource/relpermalink/ [`Resource`]: /methods/resource [`Resources.ByType`]: /methods/page/resources#bytype -[`Resources.Get`]: /methods/page/resources#get [`Resources.Get`]: /methods/page/resources/#get [`Resources.GetMatch`]: /methods/page/resources#getmatch [`Resources.Match`]: /methods/page/resources#match [content formats]: /content-management/formats/ -[embedded image render hook]: /render-hooks/images/#default -[embedded link render hook]: /render-hooks/links/#default +[duplication of shared page resources]: /configuration/markup/#duplicateresourcefiles +[embedded image render hook]: /render-hooks/images/#embedded +[embedded link render hook]: /render-hooks/links/#embedded diff --git a/content/en/content-management/sections.md b/content/en/content-management/sections.md index d21aca71b..3dfad5bd4 100644 --- a/content/en/content-management/sections.md +++ b/content/en/content-management/sections.md @@ -53,7 +53,7 @@ The example above has two top-level sections: articles and products. None of the Sections and non-sections behave differently. -||Sections|Non-sections + |Sections|Non-sections :--|:-:|:-: Directory names become URL segments|:heavy_check_mark:|:heavy_check_mark: Have logical ancestors and descendants|:heavy_check_mark:|:x: @@ -63,7 +63,7 @@ With the file structure from the [example above](#overview): 1. The list page for the articles section includes all articles, regardless of directory structure; none of the subdirectories are sections. 1. The articles/2022 and articles/2023 directories do not have list pages; they are not sections. -1. The list page for the products section, by default, includes product-1 and product-2, but not their descendant pages. To include descendant pages, use the `RegularPagesRecursive` method instead of the `Pages` method in the section template. +1. The list page for the products section, by default, includes product-1 and product-2, but not their descendant pages. To include descendant pages, use the `RegularPagesRecursive` method instead of the `Pages` method in the _section_ template. 1. All directories in the products section have list pages; each directory is a section. ## Template selection diff --git a/content/en/content-management/shortcodes.md b/content/en/content-management/shortcodes.md index 2c3f1e29f..07ad22568 100644 --- a/content/en/content-management/shortcodes.md +++ b/content/en/content-management/shortcodes.md @@ -20,7 +20,7 @@ Hugo's embedded shortcodes are pre-defined templates within the application. Ref ## Custom -Create custom shortcodes to simplify and standardize content creation. For example, the following shortcode template generates an audio player using a [global resource](g): +Create custom shortcodes to simplify and standardize content creation. For example, the following _shortcode_ template generates an audio player using a [global resource](g): ```go-html-template {file="layouts/_shortcodes/audio.html"} {{ with resources.Get (.Get "src") }} @@ -38,11 +38,11 @@ Learn more about creating shortcodes in the [shortcode templates] section. ## Inline -An inline shortcode is a shortcode template defined within content. +An inline shortcode is a _shortcode_ template defined within content. Hugo's security model is based on the premise that template and configuration authors are trusted, but content authors are not. This model enables generation of HTML output safe against code injection. -To conform with this security model, creating shortcode templates within content is disabled by default. If you trust your content authors, you can enable this functionality in your site's configuration: +To conform with this security model, creating _shortcode_ templates within content is disabled by default. If you trust your content authors, you can enable this functionality in your site's configuration: {{< code-toggle file=hugo >}} [security] @@ -69,7 +69,7 @@ In the example above, the inline shortcode is executed twice: once upon definiti

Today is Thursday, January 30, 2025

``` -Inline shortcodes process their inner content within the same context as regular shortcode templates, allowing you to use any available [shortcode method]. +Inline shortcodes process their inner content within the same context as regular _shortcode_ templates, allowing you to use any available [shortcode method]. > [!note] > You cannot [nest](#nesting) inline shortcodes. @@ -179,7 +179,7 @@ Hugo processes the shortcode before the page content is rendered by the Markdown With standard notation, Hugo processes the shortcode separately, merging the output into the page content after Markdown rendering. This means, for instance, that Markdown headings inside a standard-notation shortcode will be excluded when invoking the `TableOfContents` method on the `Page` object. -By way of example, with this shortcode template: +By way of example, with this _shortcode_ template: ```go-html-template {file="layouts/_shortcodes/foo.html"} {{ .Inner }} diff --git a/content/en/content-management/taxonomies.md b/content/en/content-management/taxonomies.md index 6caf70b0c..12d96170e 100644 --- a/content/en/content-management/taxonomies.md +++ b/content/en/content-management/taxonomies.md @@ -32,7 +32,7 @@ Let's assume you are making a website about movies. You may want to include the - Year - Awards -Then, in each of the movies, you would specify terms for each of these taxonomies (i.e., in the [front matter] of each of your movie content files). From these terms, Hugo would automatically create pages for each Actor, Director, Studio, Genre, Year, and Award, with each listing all of the Movies that matched that specific Actor, Director, Studio, Genre, Year, and Award. +Then, in each of the movies, you would specify terms for each of these taxonomies (i.e., in the front matter of each of your movie content files). From these terms, Hugo would automatically create pages for each Actor, Director, Studio, Genre, Year, and Award, with each listing all of the Movies that matched that specific Actor, Director, Studio, Genre, Year, and Award. ### Movie taxonomy organization @@ -71,10 +71,10 @@ Moonrise Kingdom <- Value ### Default destinations -When taxonomies are used---and [taxonomy templates] are provided---Hugo will automatically create both a page listing all the taxonomy's terms and individual pages with lists of content associated with each term. For example, a `categories` taxonomy declared in your configuration and used in your content front matter will create the following pages: +When taxonomies are used Hugo will automatically create both a page listing all the taxonomy's terms and individual pages with lists of content associated with each term. For example, a `categories` taxonomy declared in your configuration and used in your content front matter will create the following pages: - A single page at `example.com/categories/` that lists all the terms within the taxonomy -- [Individual taxonomy list pages][taxonomy templates] (e.g., `/categories/development/`) for each of the terms that shows a listing of all pages marked as part of that taxonomy within any content file's [front matter] +- Individual taxonomy list pages (e.g., `/categories/development/`) for each of the terms that shows a listing of all pages marked as part of that taxonomy within any content file's front matter ## Configuration @@ -92,7 +92,7 @@ categories = ['Category A','Category B'] ## Order taxonomies -A content file can assign weight for each of its associate taxonomies. Taxonomic weight can be used for sorting or ordering content in [taxonomy templates] and is declared in a content file's [front matter]. The convention for declaring taxonomic weight is `taxonomyname_weight`. +A content file can assign weight for each of its associate taxonomies. Taxonomic weight can be used for sorting or ordering content in taxonomy templates and is declared in a content file's front matter. The convention for declaring taxonomic weight is `taxonomyname_weight`. The following show a piece of content that has a weight of 22, which can be used for ordering purposes when rendering the pages assigned to the "a", "b" and "c" values of the `tags` taxonomy. It has also been assigned the weight of 44 when rendering the "d" category page. @@ -139,7 +139,7 @@ title = "John Smith" affiliation = "University of Chicago" {{< /code-toggle >}} -Then create a taxonomy template specific to the "authors" taxonomy: +Then create a _taxonomy_ template specific to the "authors" taxonomy: ```go-html-template {file="layouts/authors/taxonomy.html"} {{ define "main" }} @@ -159,7 +159,7 @@ Then create a taxonomy template specific to the "authors" taxonomy: In the example above we list each author including their affiliation and portrait. -Or create a term template specific to the "authors" taxonomy: +Or create a _term_ template specific to the "authors" taxonomy: ```go-html-template {file="layouts/authors/term.html"} {{ define "main" }} diff --git a/content/en/content-management/urls.md b/content/en/content-management/urls.md index a39afa6ef..2513614ee 100644 --- a/content/en/content-management/urls.md +++ b/content/en/content-management/urls.md @@ -20,7 +20,7 @@ You can change the structure and appearance of URLs with front matter values and ### `slug` -Set the `slug` in front matter to override the last segment of the path. The `slug` value does not affect section pages. +Set the `slug` in front matter to override the last segment of the path. This front matter field is not applicable to `home`, `section`, `taxonomy`, or `term` pages. {{< code-toggle file=content/posts/post-1.md fm=true >}} title = 'My First Post' @@ -39,6 +39,7 @@ Set the `url` in front matter to override the entire path. Use this with either > [!note] > Hugo does not sanitize the `url` front matter field, allowing you to generate: +> > - File paths that contain characters reserved by the operating system. For example, file paths on Windows may not contain any of these [reserved characters]. Hugo throws an error if a file path includes a character reserved by the current operating system. > - URLs that contain disallowed characters. For example, the less than sign (`<`) is not allowed in a URL. diff --git a/content/en/contribute/development.md b/content/en/contribute/development.md index e2cfee4ff..5930fbf52 100644 --- a/content/en/contribute/development.md +++ b/content/en/contribute/development.md @@ -46,99 +46,89 @@ To build the extended or extended/deploy edition from source you must: Use this workflow to create and submit pull requests. -### Step 1 +Step 1 +: Fork the [project repository]. -Fork the [project repository]. +Step 2 +: Clone your fork. -### Step 2 +Step 3 +: Create a new branch with a descriptive name that includes the corresponding issue number. -Clone your fork. + For a new feature: -### Step 3 + ```sh + git checkout -b feat/implement-some-feature-99999 + ``` -Create a new branch with a descriptive name that includes the corresponding issue number. + For a bug fix: -For a new feature: + ```sh + git checkout -b fix/fix-some-bug-99999 + ``` -```sh -git checkout -b feat/implement-some-feature-99999 -``` +Step 4 +: Make changes. -For a bug fix: +Step 5 +: Compile and install. -```sh -git checkout -b fix/fix-some-bug-99999 -``` + To compile and install the standard edition: -### Step 4 + ```text + go install + ``` -Make changes. + To compile and install the extended edition: -### Step 5 + ```text + CGO_ENABLED=1 go install -tags extended + ``` -Compile and install. + To compile and install the extended/deploy edition: -To compile and install the standard edition: + ```text + CGO_ENABLED=1 go install -tags extended,withdeploy + ``` -```text -go install -``` +Step 6 +: Test your changes: -To compile and install the extended edition: + ```text + go test ./... + ``` -```text -CGO_ENABLED=1 go install -tags extended -``` +Step 7 +: Commit your changes with a descriptive commit message: -To compile and install the extended/deploy edition: + - Provide a summary on the first line, typically 50 characters or less, followed by a blank line. + - Begin the summary with one of content, theme, config, all, or misc, followed by a colon, a space, and a brief description of the change beginning with a capital letter + - Use imperative present tense + - See the [commit message guidelines] for requirements + - Optionally, provide a detailed description where each line is 72 characters or less, followed by a blank line. + - Add one or more "Fixes" or "Closes" keywords, each on its own line, referencing the [issues] addressed by this change. -```text -CGO_ENABLED=1 go install -tags extended,withdeploy -``` + For example: -### Step 6 + ```sh + git commit -m "tpl/strings: Create wrap function -Test your changes: + The strings.Wrap function wraps a string into one or more lines, + splitting the string after the given number of characters, but not + splitting in the middle of a word. -```text -go test ./... -``` + Fixes #99998 + Closes #99999" + ``` -### Step 7 +Step 8 +: Push the new branch to your fork of the documentation repository. -Commit your changes with a descriptive commit message: +Step 9 +: Visit the [project repository] and create a pull request (PR). -- Provide a summary on the first line, typically 50 characters or less, followed by a blank line. - - Begin the summary with one of content, theme, config, all, or misc, followed by a colon, a space, and a brief description of the change beginning with a capital letter - - Use imperative present tense - - See the [commit message guidelines] for requirements -- Optionally, provide a detailed description where each line is 72 characters or less, followed by a blank line. -- Add one or more "Fixes" or "Closes" keywords, each on its own line, referencing the [issues] addressed by this change. - -For example: - -```sh -git commit -m "tpl/strings: Create wrap function - -The strings.Wrap function wraps a string into one or more lines, -splitting the string after the given number of characters, but not -splitting in the middle of a word. - -Fixes #99998 -Closes #99999" -``` - -### Step 8 - -Push the new branch to your fork of the documentation repository. - -### Step 9 - -Visit the [project repository] and create a pull request (PR). - -### Step 10 - -A project maintainer will review your PR and may request changes. You may delete your branch after the maintainer merges your PR. +Step 10 +: A project maintainer will review your PR and may request changes. You may delete your branch after the maintainer merges your PR. ## Building from source @@ -153,7 +143,7 @@ CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest To build and install a specific release: ```sh -CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@v0.147.1 +CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@v0.148.0 ``` To build and install at the latest commit on the master branch: @@ -165,7 +155,7 @@ CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@master To build and install at a specific commit: ```sh -CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@0851c17 +CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@c0d9beb ``` [bugs]: https://github.com/gohugoio/hugo/issues?q=is%3Aopen+is%3Aissue+label%3ABug diff --git a/content/en/contribute/documentation.md b/content/en/contribute/documentation.md index c72ddd03f..2ce2db169 100644 --- a/content/en/contribute/documentation.md +++ b/content/en/contribute/documentation.md @@ -70,6 +70,22 @@ Link to the [glossary] as needed and use terms consistently. Pay particular atte - "Markdown" (capitalized) - "open-source" (hyphenated adjective) +### Template types + +When you refer to a template type, italicize it: + +```text +When creating a _taxonomy_ template, do this... +``` + +However, if the template type is also a link, do not italicize it to avoid distracting formatting: + +```text +When creating a [taxonomy] template, do this... +``` + +Do not italicize the template type in a title, heading, or front matter description. + ### Titles and headings - Use sentence-style capitalization. @@ -154,25 +170,25 @@ If quotation marks are required, prefer single quotes to double quotes when poss Field|Description|Required :--|:--|:-- -`title`|The page title|:heavy_check_mark:| -`linkTitle`|A short version of the page title|| -`description`|A complete sentence describing the page|:heavy_check_mark:| -`categories`|An array of terms in the categories taxonomy|:heavy_check_mark: [^1]| -`keywords`|An array of keywords used to identify related content|:heavy_check_mark: [^1]| -`publishDate`|Applicable to news items: the publication date|| -`params.alt_title`|An alternate title: used in the "see also" panel if provided|| -`params.functions_and_methods.aliases`|Applicable to function and method pages: an array of alias names|| -`params.functions_and_methods.returnType`|Applicable to function and method pages: the data type returned|| -`params.functions_and_methods.signatures`|Applicable to function and method pages: an array of signatures|| -`params.hide_in_this_section`|Whether to hide the "in this section" panel|| -`params.minversion`|Applicable to the quick start page: the minimum Hugo version required|| -`params.permalink`|Reserved for use by the news content adapter|| -`params.reference (used in glossary term)`|Applicable to glossary entries: a URL for additional information|| -`params.searchable`|Whether to add the content of this page to the search index. The default value is cascaded down from the site configuration; `true` if the page kind is `page`, and `false` if the page kind is one of `home`, `section`, `taxonomy`, or `term`. Add this field to override the default value.|| -`params.show_publish_date`|Whether to show the `publishDate` when rendering the page|| -`weight`|The page weight|| -`aliases`|Previous URLs used to access this page|| -`expirydate`|The expiration date|| +`title`|The page title|:heavy_check_mark: +`linkTitle`|A short version of the page title|  +`description`|A complete sentence describing the page|:heavy_check_mark: +`categories`|An array of terms in the categories taxonomy|:heavy_check_mark: [^1] +`keywords`|An array of keywords used to identify related content|:heavy_check_mark: [^1] +`publishDate`|Applicable to news items: the publication date|  +`params.alt_title`|An alternate title: used in the "see also" panel if provided|  +`params.functions_and_methods.aliases`|Applicable to function and method pages: an array of alias names|  +`params.functions_and_methods.returnType`|Applicable to function and method pages: the data type returned|  +`params.functions_and_methods.signatures`|Applicable to function and method pages: an array of signatures|  +`params.hide_in_this_section`|Whether to hide the "in this section" panel|  +`params.minversion`|Applicable to the quick start page: the minimum Hugo version required|  +`params.permalink`|Reserved for use by the news content adapter|  +`params.reference (used in glossary term)`|Applicable to glossary entries: a URL for additional information|  +`params.searchable`|Whether to add the content of this page to the search index. The default value is cascaded down from the site configuration; `true` if the page kind is `page`, and `false` if the page kind is one of `home`, `section`, `taxonomy`, or `term`. Add this field to override the default value.|  +`params.show_publish_date`|Whether to show the `publishDate` when rendering the page|  +`weight`|The page weight|  +`aliases`|Previous URLs used to access this page|  +`expirydate`|The expiration date|  [^1]: The field is required, but its data is not. @@ -329,8 +345,6 @@ Limiting the number of callout types helps us to use them consistently. > [!important] > Key information users need to know to achieve their goal. - - ## Shortcodes These shortcodes are commonly used throughout the documentation. Other shortcodes are available for specialized use. @@ -457,67 +471,57 @@ Set the `expiryDate` to two years from the date of deprecation, and add a brief Use this workflow to create and submit pull requests. -### Step 1 +Step 1 +: Fork the [documentation repository]. -Fork the [documentation repository]. +Step 2 +: Clone your fork. -### Step 2 +Step 3 +: Create a new branch with a descriptive name that includes the corresponding issue number, if any: -Clone your fork. + ```sh + git checkout -b restructure-foo-page-99999 + ``` -### Step 3 +Step 4 +: Make changes. -Create a new branch with a descriptive name that includes the corresponding issue number, if any: +Step 5 +: Build the site locally to preview your changes. -```sh -git checkout -b restructure-foo-page-99999 -``` +Step 6 +: Commit your changes with a descriptive commit message: -### Step 4 + - Provide a summary on the first line, typically 50 characters or less, followed by a blank line. + - Begin the summary with one of `content`, `theme`, `config`, `all`, or `misc`, followed by a colon, a space, and a brief description of the change beginning with a capital letter + - Use imperative present tense + - Optionally, provide a detailed description where each line is 72 characters or less, followed by a blank line. + - Optionally, add one or more "Fixes" or "Closes" keywords, each on its own line, referencing the [issues] addressed by this change. -Make changes. + For example: -### Step 5 + ```text + git commit -m "content: Restructure the taxonomy page -Build the site locally to preview your changes. + This restructures the taxonomy page by splitting topics into logical + sections, each with one or more examples. -### Step 6 + Fixes #9999 + Closes #9998" + ``` -Commit your changes with a descriptive commit message: +Step 7 +: Push the new branch to your fork of the documentation repository. -- Provide a summary on the first line, typically 50 characters or less, followed by a blank line. - - Begin the summary with one of `content`, `theme`, `config`, `all`, or `misc`, followed by a colon, a space, and a brief description of the change beginning with a capital letter - - Use imperative present tense -- Optionally, provide a detailed description where each line is 72 characters or less, followed by a blank line. -- Optionally, add one or more "Fixes" or "Closes" keywords, each on its own line, referencing the [issues] addressed by this change. +Step 8 +: Visit the [documentation repository] and create a pull request (PR). -For example: - -```text -git commit -m "content: Restructure the taxonomy page - -This restructures the taxonomy page by splitting topics into logical -sections, each with one or more examples. - -Fixes #9999 -Closes #9998" -``` - -### Step 7 - -Push the new branch to your fork of the documentation repository. - -### Step 8 - -Visit the [documentation repository] and create a pull request (PR). - -### Step 9 - -A project maintainer will review your PR and may request changes. You may delete your branch after the maintainer merges your PR. +Step 9 +: A project maintainer will review your PR and may request changes. You may delete your branch after the maintainer merges your PR. [ATX]: https://spec.commonmark.org/current/#atx-headings [basic english]: https://simple.wikipedia.org/wiki/Basic_English -[basic english]: https://simple.wikipedia.org/wiki/Basic_English [developer documentation style guide]: https://developers.google.com/style [documentation repository]: https://github.com/gohugoio/hugoDocs/ [fenced code blocks]: https://spec.commonmark.org/current/#fenced-code-blocks diff --git a/content/en/functions/css/PostCSS.md b/content/en/functions/css/PostCSS.md index 9cc698248..4dce705be 100644 --- a/content/en/functions/css/PostCSS.md +++ b/content/en/functions/css/PostCSS.md @@ -22,46 +22,41 @@ params: Follow the steps below to transform CSS using any of the available [PostCSS plugins]. -### Step 1 +Step 1 +: Install [Node.js]. -Install [Node.js]. +Step 2 +: Install the required Node.js packages in the root of your project. For example, to add vendor prefixes to your CSS rules: -### Step 2 + ```sh + npm i -D postcss postcss-cli autoprefixer + ``` -Install the required Node.js packages in the root of your project. For example, to add vendor prefixes to your CSS rules: +Step 3 +: Create a PostCSS configuration file in the root of your project. -```sh -npm i -D postcss postcss-cli autoprefixer -``` + ```js {file="postcss.config.js"} + module.exports = { + plugins: [ + require('autoprefixer') + ] + }; + ``` -### Step 3 + > [!note] + > If you are a Windows user, and the path to your project contains a space, you must place the PostCSS configuration within the package.json file. See [this example] and issue [#7333]. -Create a PostCSS configuration file in the root of your project. +Step 4 +: Place your CSS file within the `assets/css` directory. -```js {file="postcss.config.js"} -module.exports = { - plugins: [ - require('autoprefixer') - ] -}; -``` +Step 5 +: Process the resource with PostCSS: -> [!note] -> If you are a Windows user, and the path to your project contains a space, you must place the PostCSS configuration within the package.json file. See [this example] and issue [#7333]. - -### Step 4 - -Place your CSS file within the `assets/css` directory. - -### Step 5 - -Process the resource with PostCSS: - -```go-html-template -{{ with resources.Get "css/main.css" | postCSS }} - -{{ end }} -``` + ```go-html-template + {{ with resources.Get "css/main.css" | postCSS }} + + {{ end }} + ``` ## Options diff --git a/content/en/functions/css/Sass.md b/content/en/functions/css/Sass.md index ae628a15f..4bce2fd06 100644 --- a/content/en/functions/css/Sass.md +++ b/content/en/functions/css/Sass.md @@ -122,83 +122,31 @@ Run `hugo env` to list the active transpilers. ### Installing in a production environment -For [CI/CD](g) deployments (e.g., GitHub Pages, GitLab Pages, Netlify, etc.) you must edit the workflow to install Dart Sass before Hugo builds the site[^2]. Some providers allow you to use one of the package managers above, or you can download and extract one of the prebuilt binaries. +To use Dart Sass with Hugo on a CI/CD platform like GitHub Pages, GitLab Pages, or Netlify, you typically must modify your build workflow to install Dart Sass before the Hugo site build begins. This is because these platforms don't have Dart Sass pre-installed, and Hugo needs it to process your Sass files. -[^2]: You do not have to do this if (a) you have not modified the assets cache location, and (b) you have not set `useResourceCacheWhen` to `never` in your [site configuration], and (c) you add and commit your `resources` directory to your repository. +There's one key exception where you can skip this step: you have committed your `resources` directory to your repository. This is only possible if: -#### GitHub Pages +- You have not changed Hugo's default asset cache location. +- You have not set [`useResourceCacheWhen`] to never in your sites configuration. -To install Dart Sass for your builds on GitHub Pages, add this step to the GitHub Pages workflow file: +By committing the `resources` directory, you're providing the pre-built CSS files directly to your CI/CD service, so it doesn't need to run the Sass compilation itself. -```yaml -- name: Install Dart Sass - run: sudo snap install dart-sass -``` +For examples of how to install Dart Sass in a production environment, see the following workflow files: -#### GitLab Pages - -To install Dart Sass for your builds on GitLab Pages, the `.gitlab-ci.yml` file should look something like this: - -```yaml -variables: - HUGO_VERSION: 0.147.9 - DART_SASS_VERSION: 1.89.2 - GIT_DEPTH: 0 - GIT_STRATEGY: clone - GIT_SUBMODULE_STRATEGY: recursive - TZ: America/Los_Angeles -image: - name: golang:1.20-buster -pages: - script: - # Install Dart Sass - - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - cp -r dart-sass/* /usr/local/bin - - rm -rf dart-sass* - # Install Hugo - - curl -LJO https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - apt install -y ./hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - rm hugo_extended_${HUGO_VERSION}_linux-amd64.deb - # Build - - hugo --gc --minify - artifacts: - paths: - - public - rules: - - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH -``` - -#### Netlify - -To install Dart Sass for your builds on Netlify, the `netlify.toml` file should look something like this: - -```toml -[build.environment] -HUGO_VERSION = "0.147.9" -DART_SASS_VERSION = "1.89.2" -NODE_VERSION = "22" -TZ = "America/Los_Angeles" - -[build] -publish = "public" -command = """\ - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - rm dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - export PATH=/opt/build/repo/dart-sass:$PATH && \ - hugo --gc --minify \ - """ -``` +- [GitHub Pages] +- [GitLab Pages] +- [Netlify] +[`publishDir`]: /configuration/all/#publishdir +[`useResourceCacheWhen`]: /configuration/build/#useresourcecachewhen [brew.sh]: https://brew.sh/ [chocolatey.org]: https://community.chocolatey.org/packages/sass [dart sass]: https://sass-lang.com/dart-sass +[GitHub Pages]: /host-and-deploy/host-on-github-pages/#step-7 +[GitLab Pages]: /host-and-deploy/host-on-gitlab-pages/#configure-gitlab-cicd [libsass]: https://sass-lang.com/libsass +[Netlify]: /host-and-deploy/host-on-netlify/#configuration-file [prebuilt binaries]: https://github.com/sass/dart-sass/releases/latest [scoop.sh]: https://scoop.sh/#/apps?q=sass -[site configuration]: /configuration/build/ [snap package]: /installation/linux/#snap [snapcraft.io]: https://snapcraft.io/dart-sass -[starter workflow]: https://github.com/actions/starter-workflows/blob/main/pages/hugo.yml -[`publishDir`]: /configuration/all/#publishdir diff --git a/content/en/functions/css/TailwindCSS.md b/content/en/functions/css/TailwindCSS.md index 9d40ad0aa..e8514679b 100644 --- a/content/en/functions/css/TailwindCSS.md +++ b/content/en/functions/css/TailwindCSS.md @@ -25,86 +25,80 @@ Use the `css.TailwindCSS` function to process your Tailwind CSS files. This func ## Setup -### Step 1 +Step 1 +: Install the Tailwind CSS CLI v4.0 or later: -Install the Tailwind CSS CLI v4.0 or later: + ```sh {copy=true} + npm install --save-dev tailwindcss @tailwindcss/cli + ``` -```sh {copy=true} -npm install --save-dev tailwindcss @tailwindcss/cli -``` + The Tailwind CSS CLI is also available as a [standalone executable]. You must install it outside of your project directory and ensure its path is included in your system's `PATH` environment variable. -The Tailwind CSS CLI is also available as a [standalone executable]. You must install it outside of your project directory and ensure its path is included in your system's `PATH` environment variable. + [standalone executable]: https://github.com/tailwindlabs/tailwindcss/releases/latest +Step 2 +: Add this to your site configuration: -[standalone executable]: https://github.com/tailwindlabs/tailwindcss/releases/latest + {{< code-toggle file=hugo copy=true >}} + [build] + [build.buildStats] + enable = true + [[build.cachebusters]] + source = 'assets/notwatching/hugo_stats\.json' + target = 'css' + [[build.cachebusters]] + source = '(postcss|tailwind)\.config\.js' + target = 'css' + [module] + [[module.mounts]] + source = 'assets' + target = 'assets' + [[module.mounts]] + disableWatch = true + source = 'hugo_stats.json' + target = 'assets/notwatching/hugo_stats.json' + {{< /code-toggle >}} -### Step 2 +Step 3 +: Create a CSS entry file: -Add this to your site configuration: + ```css {file="assets/css/main.css" copy=true} + @import "tailwindcss"; + @source "hugo_stats.json"; + ``` -{{< code-toggle file=hugo copy=true >}} -[build] - [build.buildStats] - enable = true - [[build.cachebusters]] - source = 'assets/notwatching/hugo_stats\.json' - target = 'css' - [[build.cachebusters]] - source = '(postcss|tailwind)\.config\.js' - target = 'css' -[module] - [[module.mounts]] - source = 'assets' - target = 'assets' - [[module.mounts]] - disableWatch = true - source = 'hugo_stats.json' - target = 'assets/notwatching/hugo_stats.json' -{{< /code-toggle >}} + Tailwind CSS respects `.gitignore` files. This means that if `hugo_stats.json` is listed in your `.gitignore` file, Tailwind CSS will ignore it. To make `hugo_stats.json` available to Tailwind CSS you must explicitly source it as shown in the example above. -### Step 3 +Step 4 +: Create a _partial_ template to process the CSS with the Tailwind CSS CLI: -Create a CSS entry file: - -```css {file="assets/css/main.css" copy=true} -@import "tailwindcss"; -@source "hugo_stats.json"; -``` - -Tailwind CSS respects `.gitignore` files. This means that if `hugo_stats.json` is listed in your `.gitignore` file, Tailwind CSS will ignore it. To make `hugo_stats.json` available to Tailwind CSS you must explicitly source it as shown in the example above. - -### Step 4 - -Create a partial template to process the CSS with the Tailwind CSS CLI: - -```go-html-template {file="layouts/_partials/css.html" copy=true} -{{ with resources.Get "css/main.css" }} - {{ $opts := dict "minify" (not hugo.IsDevelopment) }} - {{ with . | css.TailwindCSS $opts }} - {{ if hugo.IsDevelopment }} - - {{ else }} - {{ with . | fingerprint }} - + ```go-html-template {file="layouts/_partials/css.html" copy=true} + {{ with resources.Get "css/main.css" }} + {{ $opts := dict "minify" (not hugo.IsDevelopment) }} + {{ with . | css.TailwindCSS $opts }} + {{ if hugo.IsDevelopment }} + + {{ else }} + {{ with . | fingerprint }} + + {{ end }} {{ end }} {{ end }} {{ end }} -{{ end }} -``` + ``` -### Step 5 +Step 5 +: Call the _partial_ template from your base template, deferring template execution until after all sites and output formats have been rendered: -Call the partial template from your base template, deferring template execution until after all sites and output formats have been rendered: - -```go-html-template {file="layouts/baseof.html" copy=true} - - ... - {{ with (templates.Defer (dict "key" "global")) }} - {{ partial "css.html" . }} - {{ end }} - ... - -``` + ```go-html-template {file="layouts/baseof.html" copy=true} + + ... + {{ with (templates.Defer (dict "key" "global")) }} + {{ partial "css.html" . }} + {{ end }} + ... + + ``` ## Options diff --git a/content/en/functions/data/GetCSV.md b/content/en/functions/data/GetCSV.md index 39c71b06c..8d3f8a7d9 100644 --- a/content/en/functions/data/GetCSV.md +++ b/content/en/functions/data/GetCSV.md @@ -97,7 +97,7 @@ my-project/ ## Page resource alternative -Consider using the [`Resources.Get`] method with [`transform.Unmarshal`] when accessing a page resource. +Consider using the [`Resources.Get`][/methods/page/resources/] method with [`transform.Unmarshal`] when accessing a page resource. ```text my-project/ @@ -138,7 +138,8 @@ Consider using the [`resources.GetRemote`] function with [`transform.Unmarshal`] {{ end }} ``` -[`Resources.Get`]: /methods/page/resources/ [`resources.GetRemote`]: /functions/resources/getremote/ -[`resources.Get`]: /functions/resources/get/ + + [`transform.Unmarshal`]: /functions/transform/unmarshal/ + diff --git a/content/en/functions/data/GetJSON.md b/content/en/functions/data/GetJSON.md index 9cdea9287..d3aafe94d 100644 --- a/content/en/functions/data/GetJSON.md +++ b/content/en/functions/data/GetJSON.md @@ -80,7 +80,7 @@ Add multiple headers using a slice: ## Global resource alternative -Consider using the [`resources.Get`] function with [`transform.Unmarshal`] when accessing a global resource. +Consider using the [`resources.Get`](/functions/resources/get/) function with [`transform.Unmarshal`] when accessing a global resource. ```text my-project/ @@ -101,7 +101,7 @@ my-project/ ## Page resource alternative -Consider using the [`Resources.Get`] method with [`transform.Unmarshal`] when accessing a page resource. +Consider using the [`Resources.Get`][/methods/page/resources/] method with [`transform.Unmarshal`] when accessing a page resource. ```text my-project/ @@ -140,7 +140,8 @@ Consider using the [`resources.GetRemote`] function with [`transform.Unmarshal`] {{ end }} ``` -[`Resources.Get`]: /methods/page/resources/ [`resources.GetRemote`]: /functions/resources/getremote/ -[`resources.Get`]: /functions/resources/get/ + + [`transform.Unmarshal`]: /functions/transform/unmarshal/ + diff --git a/content/en/functions/encoding/Jsonify.md b/content/en/functions/encoding/Jsonify.md index 1d60dd68d..5bbbf1446 100644 --- a/content/en/functions/encoding/Jsonify.md +++ b/content/en/functions/encoding/Jsonify.md @@ -13,8 +13,8 @@ aliases: [/functions/jsonify] To customize the printing of the JSON, pass an options map as the first argument. Supported options are "prefix" and "indent". Each JSON element in -the output will begin on a new line beginning with *prefix* followed by one or -more copies of *indent* according to the indentation nesting. +the output will begin on a new line beginning with _prefix_ followed by one or +more copies of _indent_ according to the indentation nesting. ```go-html-template {{ dict "title" .Title "content" .Plain | jsonify }} diff --git a/content/en/functions/global/page.md b/content/en/functions/global/page.md index 40f6aba8f..a7672d947 100644 --- a/content/en/functions/global/page.md +++ b/content/en/functions/global/page.md @@ -53,9 +53,9 @@ content/ └── _index.md <-- title is "My Home Page" ``` -And this code in the home template: +And this code in the _home_ template: -```go-html-template +```go-html-template {file="layouts/home.html"} {{ range site.Sections }} {{ range .Pages }} {{ page.Title }} @@ -71,7 +71,7 @@ My Home Page My Home Page ``` -In the example above, the global `page` function accesses the `Page` object passed into the home template; it does not access the `Page` object of the iterated pages. +In the example above, the global `page` function accesses the `Page` object passed into the _home_ template; it does not access the `Page` object of the iterated pages. ### Be aware of caching @@ -83,9 +83,9 @@ Do not use the global `page` function in: Hugo caches rendered shortcodes. If you use the global `page` function within a shortcode, and the page content is rendered in two or more templates, the cached shortcode may be incorrect. -Consider this section template: +Consider this _section_ template: -```go-html-template +```go-html-template {file="layouts/section.html"} {{ range .Pages }}

{{ .LinkTitle }}

{{ .Summary }} diff --git a/content/en/functions/go-template/block.md b/content/en/functions/go-template/block.md index 383a3d72e..d603a1f89 100644 --- a/content/en/functions/go-template/block.md +++ b/content/en/functions/go-template/block.md @@ -21,6 +21,7 @@ and then executing it in place: ```go-html-template {{ template "name" pipeline }} ``` + The typical use is to define a set of root templates that are then customized by redefining the block templates within. ```go-html-template {file="layouts/baseof.html"} diff --git a/content/en/functions/go-template/define.md b/content/en/functions/go-template/define.md index 40d495bd9..e4939057f 100644 --- a/content/en/functions/go-template/define.md +++ b/content/en/functions/go-template/define.md @@ -43,21 +43,8 @@ Use with the [`template`] function: {{ end }} ``` -> [!warning] -> Only [template comments] are allowed outside of the `define` and `end` statements. Avoid placing any other text, including HTML comments, outside of these boundaries. Doing so will cause rendering issues, potentially resulting in a blank page. See the example below. - -```go-html-template {file="layouts/do-not-do-this.html"} -
This div element broke your template.
-{{ define "main" }} -

{{ .Title }}

- {{ .Content }} -{{ end }} - -``` - {{% include "/_common/functions/go-template/text-template.md" %}} [`block`]: /functions/go-template/block/ [`template`]: /functions/go-template/block/ [`partial`]: /functions/partials/include/ -[template comments]: /templates/introduction/#comments diff --git a/content/en/functions/go-template/range.md b/content/en/functions/go-template/range.md index 50f714140..3c50068f1 100644 --- a/content/en/functions/go-template/range.md +++ b/content/en/functions/go-template/range.md @@ -38,7 +38,9 @@ Within a range block: ## Understanding context -At the top of a page template, the [context](g) (the dot) is a `Page` object. Within the `range` block, the context is bound to each successive element. +See the [context] section in the introduction to templating. + +For example, at the top of a _page_ template, the [context](g) (the dot) is a `Page` object. Within the `range` block, the context is bound to each successive element. With this contrived example: @@ -217,3 +219,4 @@ Ranging over a non-positive integer executes the block zero times. [`break`]: /functions/go-template/break/ [`continue`]: /functions/go-template/continue/ [`else`]: /functions/go-template/else/ +[context]: /templates/introduction/#context diff --git a/content/en/functions/go-template/return.md b/content/en/functions/go-template/return.md index 911c0925c..e96908565 100644 --- a/content/en/functions/go-template/return.md +++ b/content/en/functions/go-template/return.md @@ -10,7 +10,7 @@ params: signatures: ['return [VALUE]'] --- -The `return` statement is a non-standard extension to Go's [text/template package]. Used within partial templates, the `return` statement terminates template execution and returns the given value, if any. +The `return` statement is a non-standard extension to Go's [text/template package]. Used within _partial_ templates, the `return` statement terminates template execution and returns the given value, if any. The returned value may be of any data type including, but not limited to, [`bool`](g), [`float`](g), [`int`](g), [`map`](g), [`resource`](g), [`slice`](g), or [`string`](g). @@ -21,7 +21,7 @@ A `return` statement without a value returns an empty string of type `template.H ## Example -By way of example, let's create a partial template that _renders_ HTML, describing whether the given number is odd or even: +By way of example, let's create a _partial_ template that _renders_ HTML, describing whether the given number is odd or even: ```go-html-template {file="layouts/_partials/odd-or-even.html"} {{ if math.ModBool . 2 }} diff --git a/content/en/functions/go-template/template.md b/content/en/functions/go-template/template.md index 903f1490a..671f95e15 100644 --- a/content/en/functions/go-template/template.md +++ b/content/en/functions/go-template/template.md @@ -20,7 +20,7 @@ Use the `template` function to execute a defined template: {{ end }} ``` -The example above can be rewritten using an inline partial template: +The example above can be rewritten using an inline _partial_ template: ```go-html-template {{ partial "inline/foo.html" (dict "answer" 42) }} @@ -33,8 +33,8 @@ The example above can be rewritten using an inline partial template: The key distinctions between the preceding two examples are: 1. Inline partials are globally scoped. That means that an inline partial defined in _one_ template may be called from _any_ template. -2. Leveraging the [`partialCached`] function when calling an inline partial allows for performance optimization through result caching. -3. An inline partial can [`return`] a value of any data type instead of rendering a string. +1. Leveraging the [`partialCached`] function when calling an inline partial allows for performance optimization through result caching. +1. An inline partial can [`return`] a value of any data type instead of rendering a string. {{% include "/_common/functions/go-template/text-template.md" %}} diff --git a/content/en/functions/go-template/try.md b/content/en/functions/go-template/try.md index 6aef4da36..143810654 100644 --- a/content/en/functions/go-template/try.md +++ b/content/en/functions/go-template/try.md @@ -101,6 +101,7 @@ Instead of failing the build, we can catch the error and emit a warning: {{ end }} {{ end }} ``` + In the above, note that the [context](g) within the last conditional block is the `TryValue` object returned by the `try` statement. At this point neither the `Err` nor `Value` methods returned anything, so the current context is not useful. Use the `$` to access the [template context] if needed. > [!note] diff --git a/content/en/functions/go-template/with.md b/content/en/functions/go-template/with.md index c25ce3fba..7354f1608 100644 --- a/content/en/functions/go-template/with.md +++ b/content/en/functions/go-template/with.md @@ -57,7 +57,9 @@ Initialize a variable, scoped to the current block: ## Understanding context -At the top of a page template, the [context](g) (the dot) is a `Page` object. Inside of the `with` block, the context is bound to the value passed to the `with` statement. +See the [context] section in the introduction to templating. + +For example, at the top of a _page_ template, the [context](g) (the dot) is a `Page` object. Inside of the `with` block, the context is bound to the value passed to the `with` statement. With this contrived example: @@ -90,3 +92,4 @@ This template will render the page title as desired: {{% include "/_common/functions/go-template/text-template.md" %}} [`else`]: /functions/go-template/else/ +[context]: /templates/introduction/#context diff --git a/content/en/functions/hugo/Generator.md b/content/en/functions/hugo/Generator.md index c044a210c..176d8e6bf 100644 --- a/content/en/functions/hugo/Generator.md +++ b/content/en/functions/hugo/Generator.md @@ -11,5 +11,5 @@ params: --- ```go-html-template -{{ hugo.Generator }} → +{{ hugo.Generator }} → ``` diff --git a/content/en/functions/hugo/Store.md b/content/en/functions/hugo/Store.md index 08c684146..c0d5c5933 100644 --- a/content/en/functions/hugo/Store.md +++ b/content/en/functions/hugo/Store.md @@ -100,7 +100,7 @@ Removes the given key. ## Determinate values -The `Store` method is often used to set scratch pad values within a shortcode, a partial template called by a shortcode, or by a Markdown render hook. In all three cases, the scratch pad values are indeterminate until Hugo renders the page content. +The `Store` method is often used to set scratch pad values within a _shortcode_ template, a _partial_ template called by a _shortcode_ template, or by a _render hook_ template. In all three cases, the scratch pad values are indeterminate until Hugo renders the page content. If you need to access a scratch pad value from a parent template, and the parent template has not yet rendered the page content, you can trigger content rendering by assigning the returned value to a [noop](g) variable: diff --git a/content/en/functions/hugo/Version.md b/content/en/functions/hugo/Version.md index a23bd75cd..33827737a 100644 --- a/content/en/functions/hugo/Version.md +++ b/content/en/functions/hugo/Version.md @@ -11,5 +11,5 @@ params: --- ```go-html-template -{{ hugo.Version }} → 0.147.9 +{{ hugo.Version }} → 0.148.0 ``` diff --git a/content/en/functions/js/Babel.md b/content/en/functions/js/Babel.md index d0007aaa0..488c80503 100644 --- a/content/en/functions/js/Babel.md +++ b/content/en/functions/js/Babel.md @@ -31,26 +31,23 @@ params: ## Setup -### Step 1 +Step 1 +: Install [Node.js](https://nodejs.org/en/download) -Install [Node.js](https://nodejs.org/en/download) +Step 2 +: Install the required Node.js packages in the root of your project. -### Step 2 + ```sh + npm install --save-dev @babel/core @babel/cli + ``` -Install the required Node.js packages in the root of your project. +Step 3 +: Add the babel executable to Hugo's `security.exec.allow` list in your site configuration: -```sh -npm install --save-dev @babel/core @babel/cli -``` - -### Step 3 - -Add the babel executable to Hugo's `security.exec.allow` list in your site configuration: - -{{< code-toggle file=hugo >}} -[security.exec] - allow = ['^(dart-)?sass(-embedded)?$', '^go$', '^npx$', '^postcss$', '^babel$'] -{{< /code-toggle >}} + {{< code-toggle file=hugo >}} + [security.exec] + allow = ['^(dart-)?sass(-embedded)?$', '^go$', '^npx$', '^postcss$', '^babel$'] + {{< /code-toggle >}} ## Configuration diff --git a/content/en/functions/js/Batch.md b/content/en/functions/js/Batch.md index a2c8bb893..360f98656 100644 --- a/content/en/functions/js/Batch.md +++ b/content/en/functions/js/Batch.md @@ -158,7 +158,7 @@ import * as params from "@params"; import * as config from "@params/config"; ``` -Setting the `Config` for a batch can be done from any template (including shortcode templates), but will only be set once (the first will win): +Setting the `Config` for a batch can be done from any template (including _shortcode_ templates), but will only be set once (the first will win): ```go-html-template {{ with js.Batch "js/mybatch" }} @@ -270,8 +270,8 @@ In a template you would typically handle one group with a given `ID` (e.g. scrip In the official documentation for ESBuild's [code splitting], there's a warning note in the header. The two issues are: - - `esm` is currently the only implemented output format. This means that it will not work for very old browsers. See [caniuse](https://caniuse.com/?search=ESM). - - There's a known import ordering issue. +- `esm` is currently the only implemented output format. This means that it will not work for very old browsers. See [caniuse](https://caniuse.com/?search=ESM). +- There's a known import ordering issue. We have not seen the ordering issue as a problem during our [extensive testing](https://github.com/bep/hugojsbatchdemo) of this new feature with different libraries. There are two main cases: @@ -291,7 +291,6 @@ console.log('entrypoints-workaround.js'); [`Resources.Mount`]: /methods/page/resources/#mount [`Resources`]: /methods/page/resources/ [`templates.Defer`]: /functions/templates/defer/ -[`templates.Defer`]: /functions/templates/defer/ [build options]: #build-options [code splitting]: https://esbuild.github.io/api/#splitting [config]: #config diff --git a/content/en/functions/js/Build.md b/content/en/functions/js/Build.md index d55220a52..79c52087d 100644 --- a/content/en/functions/js/Build.md +++ b/content/en/functions/js/Build.md @@ -82,6 +82,7 @@ Also note the new `params` option that can be passed from template to your JS fi ```go-html-template {{ $js := resources.Get "js/main.js" | js.Build (dict "params" (dict "api" "https://example.org/api")) }} ``` + And then in your JS file: ```js diff --git a/content/en/functions/openapi3/Unmarshal.md b/content/en/functions/openapi3/Unmarshal.md index ca2ee93e3..ed15d4d6a 100644 --- a/content/en/functions/openapi3/Unmarshal.md +++ b/content/en/functions/openapi3/Unmarshal.md @@ -55,7 +55,7 @@ To list the GET and POST operations for each of the API paths: ``` > [!warning] -> The unmarshaled data structure is created with [`kin-openapi`](https://github.com/getkin/kin-openapi). Many fields are structs or pointers (not maps), and therefore require accessors or other methods for indexing and iteration. +> The unmarshaled data structure is created with [`kin-openapi`](https://github.com/getkin/kin-openapi). Many fields are structs or pointers (not maps), and therefore require accessors or other methods for indexing and iteration. > For example, prior to [`kin-openapi` v0.122.0](https://github.com/getkin/kin-openapi#v01220) / [Hugo v0.121.0](https://github.com/gohugoio/hugo/releases/tag/v0.121.0), `Paths` was a map (so `.Paths` was iterable) and it is now a pointer (and requires the `.Paths.Map` accessor, as in the example above). > See the [`kin-openapi` godoc for OpenAPI 3](https://pkg.go.dev/github.com/getkin/kin-openapi/openapi3) for full type definitions. diff --git a/content/en/functions/partials/Include.md b/content/en/functions/partials/Include.md index 0474bf77f..dfb8873b4 100644 --- a/content/en/functions/partials/Include.md +++ b/content/en/functions/partials/Include.md @@ -1,6 +1,6 @@ --- title: partials.Include -description: Executes the given partial template, optionally passing context. If the partial template contains a return statement, returns the given value, else returns the rendered output. +description: Executes the given template, optionally passing context. If the partial template contains a return statement, returns the given value, else returns the rendered output. categories: [] keywords: [] params: @@ -13,9 +13,7 @@ aliases: [/functions/partial] Without a [`return`] statement, the `partial` function returns a string of type `template.HTML`. With a `return` statement, the `partial` function can return any data type. -[`return`]: /functions/go-template/return/ - -In this example we have three partial templates: +In this example we have three _partial_ templates: ```text layouts/ @@ -56,7 +54,7 @@ You can pass anything in context: a page, a page collection, a scalar value, a s {{ partial "render-student-info.html" $ctx }} ``` -Then, within the partial template: +Then, within the _partial_ template: ```go-html-template

{{ .name }} is majoring in {{ .major }}.

@@ -64,7 +62,7 @@ Then, within the partial template:

See details.

``` -To return a value from a partial template, it must contain only one `return` statement, placed at the end of the template: +To return a value from a _partial_ template, it must contain only one `return` statement, placed at the end of the template: ```go-html-template {{ $result := "" }} @@ -79,6 +77,4 @@ To return a value from a partial template, it must contain only one `return` sta See [details][`return`]. [`return`]: /functions/go-template/return/ - [breadcrumb navigation]: /content-management/sections/#ancestors-and-descendants -[details]: /functions/go-template/return/ diff --git a/content/en/functions/partials/IncludeCached.md b/content/en/functions/partials/IncludeCached.md index 9bf1d5384..b80aaf8a1 100644 --- a/content/en/functions/partials/IncludeCached.md +++ b/content/en/functions/partials/IncludeCached.md @@ -38,9 +38,9 @@ Pass additional arguments, of any data type, as needed to create unique variants {{ partialCached "footer.html" . .Params.country .Params.province }} ``` -The variant arguments are not available to the underlying partial template; they are only used to create unique cache keys. +The variant arguments are not available to the underlying _partial_ template; they are only used to create unique cache keys. -To return a value from a partial template, it must contain only one `return` statement, placed at the end of the template: +To return a value from a _partial_ template, it must contain only one `return` statement, placed at the end of the template: ```go-html-template {{ $result := "" }} diff --git a/content/en/functions/resources/FromString.md b/content/en/functions/resources/FromString.md index bd2d894b1..c86f90cbb 100644 --- a/content/en/functions/resources/FromString.md +++ b/content/en/functions/resources/FromString.md @@ -22,9 +22,9 @@ Let's say you need to publish a file named "site.json" in the root of your `publ ```json { - "build_date": "2025-05-03T19:14:41-08:00", - "hugo_version": "0.147.9", - "last_modified": "2025-05-03T19:14:46-08:00" + "build_date": "2025-07-08T13:12:19-07:00", + "hugo_version": "0.148.0", + "last_modified": "2025-07-07T22:09:13-07:00" } ``` diff --git a/content/en/functions/resources/GetRemote.md b/content/en/functions/resources/GetRemote.md index c6f6742b3..29768eedf 100644 --- a/content/en/functions/resources/GetRemote.md +++ b/content/en/functions/resources/GetRemote.md @@ -15,8 +15,6 @@ The `Err` method on the returned resource was removed in v0.141.0. Use the [`try`] statement instead, as shown in the [error handling] example below. -[`try`]: /functions/go-template/try -[error handling]: #error-handling {{< /new-in >}} ```go-html-template @@ -36,26 +34,21 @@ Use the [`try`] statement instead, as shown in the [error handling] example belo The `resources.GetRemote` function takes an optional map of options. -###### body +body +: (`string`) The data you want to transmit to the server. -(`string`) The data you want to transmit to the server. +headers +: (`map[string][]string`) The collection of key-value pairs that provide additional information about the request. -###### headers +key +: (`string`) The cache key. Hugo derives the default value from the URL and options map. See [caching](#caching). -(`map[string][]string`) The collection of key-value pairs that provide additional information about the request. +method +: (`string`) The action to perform on the requested resource, typically one of `GET`, `POST`, or `HEAD`. -###### key - -(`string`) The cache key. Hugo derives the default value from the URL and options map. See [caching](#caching). - -###### method - -(`string`) The action to perform on the requested resource, typically one of `GET`, `POST`, or `HEAD`. - -###### responseHeaders -{{< new-in 0.143.0 />}} - -(`[]string`) The headers to extract from the server's response, accessible through the resource's [`Data.Headers`] method. Header name matching is case-insensitive. +responseHeaders +: {{< new-in 0.143.0 />}} +: (`[]string`) The headers to extract from the server's response, accessible through the resource's [`Data.Headers`] method. Header name matching is case-insensitive. [`Data.Headers`]: /methods/resource/data/#headers @@ -64,8 +57,6 @@ The `resources.GetRemote` function takes an optional map of options. > [!note] > For brevity, the examples below do not include [error handling]. -[error handling]: #error-handling - To include a header: ```go-html-template @@ -150,8 +141,6 @@ When retrieving remote data, use the [`transform.Unmarshal`] function to [unmars Use the [`try`] statement to capture HTTP request errors. If you do not handle the error yourself, Hugo will fail the build. -[`try`]: /functions/go-template/try - > [!note] > Hugo does not classify an HTTP response with status code 404 as an error. In this case `resources.GetRemote` returns nil. @@ -202,8 +191,6 @@ By default, Hugo derives the cache key from the arguments passed to the function {{ $resource := resources.GetRemote $url $opts }} ``` -[configure file caches]: /configuration/caches/ - ## Security To protect against malicious intent, the `resources.GetRemote` function inspects the server response including: @@ -234,3 +221,7 @@ Note that the entry above is: [allowlist]: https://en.wikipedia.org/wiki/Whitelist [Content-Type]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type + +[`try`]: /functions/go-template/try +[configure file caches]: /configuration/caches/ +[error handling]: #error-handling diff --git a/content/en/functions/resources/PostProcess.md b/content/en/functions/resources/PostProcess.md index d70437694..766817ff5 100644 --- a/content/en/functions/resources/PostProcess.md +++ b/content/en/functions/resources/PostProcess.md @@ -17,9 +17,9 @@ The `resources.PostProcess` function delays resource transformation steps until In this example, after the build is complete, Hugo will: 1. Purge unused CSS using the [PurgeCSS] plugin for [PostCSS] -2. Add vendor prefixes to CSS rules using the [Autoprefixer] plugin for PostCSS -3. [Minify] the CSS -4. [Fingerprint] the CSS +1. Add vendor prefixes to CSS rules using the [Autoprefixer] plugin for PostCSS +1. [Minify] the CSS +1. [Fingerprint] the CSS Step 1 : Install [Node.js]. @@ -27,51 +27,51 @@ Step 1 Step 2 : Install the required Node.js packages in the root of your project: -```sh -npm i -D postcss postcss-cli autoprefixer @fullhuman/postcss-purgecss -``` + ```sh {copy=true} + npm i -D postcss postcss-cli autoprefixer @fullhuman/postcss-purgecss + ``` Step 3 : Enable creation of the `hugo_stats.json` file when building the site. If you are only using this for the production build, consider placing it below [`config/production`]. -{{< code-toggle file=hugo >}} -[build.buildStats] -enable = true -{{< /code-toggle >}} + {{< code-toggle file=hugo copy=true >}} + [build.buildStats] + enable = true + {{< /code-toggle >}} -See the [configure build] documentation for details and options. + See the [configure build] documentation for details and options. Step 4 : Create a PostCSS configuration file in the root of your project. -```js {file="postcss.config.js" copy=true} -const autoprefixer = require('autoprefixer'); -const purgeCSSPlugin = require('@fullhuman/postcss-purgecss').default; + ```js {file="postcss.config.js" copy=true} + const autoprefixer = require('autoprefixer'); + const purgeCSSPlugin = require('@fullhuman/postcss-purgecss').default; -const purgecss = purgeCSSPlugin({ - content: ['./hugo_stats.json'], - defaultExtractor: content => { - const els = JSON.parse(content).htmlElements; - return [ - ...(els.tags || []), - ...(els.classes || []), - ...(els.ids || []), - ]; - }, - // https://purgecss.com/safelisting.html - safelist: [] -}); + const purgecss = purgeCSSPlugin({ + content: ['./hugo_stats.json'], + defaultExtractor: content => { + const els = JSON.parse(content).htmlElements; + return [ + ...(els.tags || []), + ...(els.classes || []), + ...(els.ids || []), + ]; + }, + // https://purgecss.com/safelisting.html + safelist: [] + }); -module.exports = { - plugins: [ - process.env.HUGO_ENVIRONMENT !== 'development' ? purgecss : null, - autoprefixer, - ] -}; -``` + module.exports = { + plugins: [ + process.env.HUGO_ENVIRONMENT !== 'development' ? purgecss : null, + autoprefixer, + ] + }; + ``` -> [!note] -> If you are a Windows user, and the path to your project contains a space, you must place the PostCSS configuration within the package.json file. See [this example] and issue [#7333]. + > [!note] + > If you are a Windows user, and the path to your project contains a space, you must place the PostCSS configuration within the package.json file. See [this example] and issue [#7333]. Step 5 : Place your CSS file within the `assets/css` directory. @@ -79,17 +79,17 @@ Step 5 Step 6 : If the current environment is not `development`, process the resource with PostCSS: -```go-html-template -{{ with resources.Get "css/main.css" }} - {{ if hugo.IsDevelopment }} - - {{ else }} - {{ with . | postCSS | minify | fingerprint | resources.PostProcess }} - + ```go-html-template {copy=true} + {{ with resources.Get "css/main.css" }} + {{ if hugo.IsDevelopment }} + + {{ else }} + {{ with . | postCSS | minify | fingerprint | resources.PostProcess }} + + {{ end }} {{ end }} {{ end }} -{{ end }} -``` + ``` ## Environment variables @@ -124,7 +124,7 @@ let tailwindConfig = process.env.HUGO_FILE_TAILWIND_CONFIG_JS || './tailwind.con ## Limitations -Do not use `resources.PostProcess` when running Hugo's built-in development server. The examples above specifically prevent this by verifying that the current environment is not "development". +Do not use `resources.PostProcess` when running Hugo's built-in development server. The examples above specifically prevent this by verifying that the current environment is not `development`. The `resources.PostProcess` function only works within templates that produce HTML files. diff --git a/content/en/functions/templates/Current.md b/content/en/functions/templates/Current.md index d2c2c9609..b82818c47 100644 --- a/content/en/functions/templates/Current.md +++ b/content/en/functions/templates/Current.md @@ -64,7 +64,7 @@ To visually mark where a template begins and ends execution: ### Call stack -To display the chain of templates that led to the current one, create a partial template that iterates through its ancestors: +To display the chain of templates that led to the current one, create a _partial_ template that iterates through its ancestors: ```go-html-template {file="layouts/_partials/template-call-stack.html" copy=true} {{ with templates.Current }} @@ -113,7 +113,7 @@ To reverse the order of the entries, chain the `Reverse` method to the `Ancestor ### VS Code -To render links that, when clicked, will open the template in Microsoft Visual Studio Code, create a partial template with anchor elements that use the `vscode` URI scheme: +To render links that, when clicked, will open the template in Microsoft Visual Studio Code, create a _partial_ template with anchor elements that use the `vscode` URI scheme: ```go-html-template {file="layouts/_partials/template-open-in-vs-code.html" copy=true} {{ with templates.Current.Parent }} diff --git a/content/en/functions/templates/Defer.md b/content/en/functions/templates/Defer.md index 16c32724e..9acb91405 100644 --- a/content/en/functions/templates/Defer.md +++ b/content/en/functions/templates/Defer.md @@ -14,7 +14,7 @@ aliases: [/functions/templates.defer] {{< new-in 0.128.0 />}} > [!note] -> This feature should only be used in the main page template, typically `layouts/baseof.html`. Using it in shortcodes, partials, or render hook templates may lead to unpredictable results. For further details, please refer to [this issue]. +> This feature should only be used in the main template, typically `layouts/baseof.html`. Using it in _shortcode_, _partial_, or _render hook_ templates may lead to unpredictable results. For further details, please refer to [this issue]. [this issue]: https://github.com/gohugoio/hugo/issues/13492#issuecomment-2734700391 diff --git a/content/en/functions/time/ParseDuration.md b/content/en/functions/time/ParseDuration.md index af5d73ad5..418632fc8 100644 --- a/content/en/functions/time/ParseDuration.md +++ b/content/en/functions/time/ParseDuration.md @@ -11,7 +11,7 @@ params: aliases: [/functions/time.parseduration] --- -The `time.ParseDuration` function returns a time.Duration value that you can use with any of the `Duration` [methods]. +The `time.ParseDuration` function returns a [`time.Duration`] value that you can use with any of the `Duration` [methods]. A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as `300ms`, `-1.5h` or `2h45m`. Valid time units are `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`. diff --git a/content/en/functions/transform/PortableText.md b/content/en/functions/transform/PortableText.md index 7baba99d4..fa9a91e33 100644 --- a/content/en/functions/transform/PortableText.md +++ b/content/en/functions/transform/PortableText.md @@ -194,6 +194,7 @@ export const schemaTypes = [postType] Unfortunately, Sanity's API does not support [RFC 7234](https://tools.ietf.org/html/rfc7234) and their output changes even if the data has not. A recommended setup is therefore to use their cached `apicdn` endpoint (see above) and then set up a reasonable polling and file cache strategy in your Hugo configuration, e.g: + {{< code-toggle file=hugo >}} [HTTPCache] [[HTTPCache.polls]] @@ -207,6 +208,7 @@ Unfortunately, Sanity's API does not support [RFC 7234](https://tools.ietf.org/h dir = ':cacheDir/:project' maxAge = "5m" {{< /code-toggle >}} + The polling above will be used when running the server/watch mode and rebuild when you push new content in Sanity. diff --git a/content/en/functions/transform/ToMath.md b/content/en/functions/transform/ToMath.md index 0beb8f56a..be62e8bce 100644 --- a/content/en/functions/transform/ToMath.md +++ b/content/en/functions/transform/ToMath.md @@ -45,14 +45,14 @@ fleqn macros : (`map`) A map of macros to be used in the math expression. Default is `{}`. - ```go-html-template - {{ $macros := dict - "\\addBar" "\\bar{#1}" - "\\bold" "\\mathbf{#1}" - }} - {{ $opts := dict "macros" $macros }} - {{ transform.ToMath "\\addBar{y} + \\bold{H}" $opts }} - ``` + ```go-html-template + {{ $macros := dict + "\\addBar" "\\bar{#1}" + "\\bold" "\\mathbf{#1}" + }} + {{ $opts := dict "macros" $macros }} + {{ transform.ToMath "\\addBar{y} + \\bold{H}" $opts }} + ``` minRuleThickness : (`float`) The minimum thickness of the fraction lines in `em`. Default is `0.04`. @@ -60,10 +60,10 @@ minRuleThickness output : (`string`) Determines the markup language of the output, one of `html`, `mathml`, or `htmlAndMathml`. Default is `mathml`. - With `html` and `htmlAndMathml` you must include the KaTeX style sheet within the `head` element of your base template. + With `html` and `htmlAndMathml` you must include the KaTeX style sheet within the `head` element of your base template. - ```html - + ```html + strict : {{< new-in 0.147.6 />}} @@ -73,10 +73,7 @@ strict - `ignore`: Allows convenient, unsupported LaTeX features without any feedback. - `warn`: {{< new-in 0.147.7 />}} Emits a warning when convenient, unsupported LaTeX features are encountered. -: The `newLineInDisplayMode` error code, which flags the use of `\\` -or `\newline` in display mode outside an array or tabular environment, is -intentionally designed not to throw an error, despite this behavior -being questionable. + The `newLineInDisplayMode` error code, which flags the use of `\\` or `\newline` in display mode outside an array or tabular environment, is intentionally designed not to throw an error, despite this behavior being questionable. throwOnError : (`bool`) Whether to throw a `ParseError` when KaTeX encounters an unsupported command or invalid LaTeX. Default is `true`. @@ -95,66 +92,65 @@ The example below demonstrates error handing within a template. Instead of client-side JavaScript rendering of mathematical markup using MathJax or KaTeX, create a passthrough render hook which calls the `transform.ToMath` function. -### Step 1 +Step 1 +: Enable and configure the Goldmark [passthrough extension][] in your site configuration. The passthrough extension preserves raw Markdown within delimited snippets of text, including the delimiters themselves. -Enable and configure the Goldmark [passthrough extension] in your site configuration. The passthrough extension preserves raw Markdown within delimited snippets of text, including the delimiters themselves. +[passthrough extension]: /configuration/markup/#passthrough -{{< code-toggle file=hugo copy=true >}} -[markup.goldmark.extensions.passthrough] -enable = true + {{< code-toggle file=hugo copy=true >}} + [markup.goldmark.extensions.passthrough] + enable = true + [markup.goldmark.extensions.passthrough.delimiters] + block = [['\[', '\]'], ['$$', '$$']] + inline = [['\(', '\)']] + {{< /code-toggle >}} -[markup.goldmark.extensions.passthrough.delimiters] -block = [['\[', '\]'], ['$$', '$$']] -inline = [['\(', '\)']] -{{< /code-toggle >}} + > [!note] + > The configuration above precludes the use of the `$...$` delimiter pair for inline equations. Although you can add this delimiter pair to the configuration, you must double-escape the `$` symbol when used outside of math contexts to avoid unintended formatting. -> [!note] -> The configuration above precludes the use of the `$...$` delimiter pair for inline equations. Although you can add this delimiter pair to the configuration, you must double-escape the `$` symbol when used outside of math contexts to avoid unintended formatting. +Step 2 +: Create a [passthrough render hook][] to capture and render the LaTeX markup.4 -### Step 2 +[passthrough render hook]: /render-hooks/passthrough/ -Create a [passthrough render hook] to capture and render the LaTeX markup. + ```go-html-template {file="layouts/_markup/render-passthrough.html" copy=true} + {{- $opts := dict "output" "htmlAndMathml" "displayMode" (eq .Type "block") }} + {{- with try (transform.ToMath .Inner $opts) }} + {{- with .Err }} + {{- errorf "Unable to render mathematical markup to HTML using the transform.ToMath function. The KaTeX display engine threw the following error: %s: see %s." . $.Position }} + {{- else }} + {{- .Value }} + {{- $.Page.Store.Set "hasMath" true }} + {{- end }} + {{- end -}} + ``` + +Step 3 +: In your base template, conditionally include the KaTeX CSS within the head element. -```go-html-template {file="layouts/_markup/render-passthrough.html" copy=true} -{{- $opts := dict "output" "htmlAndMathml" "displayMode" (eq .Type "block") }} -{{- with try (transform.ToMath .Inner $opts) }} - {{- with .Err }} - {{- errorf "Unable to render mathematical markup to HTML using the transform.ToMath function. The KaTeX display engine threw the following error: %s: see %s." . $.Position }} - {{- else }} - {{- .Value }} - {{- $.Page.Store.Set "hasMath" true }} - {{- end }} -{{- end -}} -``` + ```go-html-template {file="layouts/baseof.html" copy=true} + + {{ $noop := .WordCount }} + {{ if .Page.Store.Get "hasMath" }} + + {{ end }} + + ``` -### Step 3 + In the above, note the use of a [noop](g) statement to force content rendering before we check the value of `hasMath` with the `Store.Get` method. -In your base template, conditionally include the KaTeX CSS within the head element. +Step 4 +: Add some mathematical markup to your content, then test. -```go-html-template {file="layouts/baseof.html" copy=true} - - {{ $noop := .WordCount }} - {{ if .Page.Store.Get "hasMath" }} - - {{ end }} - -``` + ```text {file="content/example.md"} + This is an inline \(a^*=x-b^*\) equation. -In the above, note the use of a [noop](g) statement to force content rendering before we check the value of `hasMath` with the `Store.Get` method. + These are block equations: -### Step 4 + \[a^*=x-b^*\] -Add some mathematical markup to your content, then test. - -```text {file="content/example.md"} -This is an inline \(a^*=x-b^*\) equation. - -These are block equations: - -\[a^*=x-b^*\] - -$$a^*=x-b^*$$ -``` + $$a^*=x-b^*$$ + ``` ## Chemistry @@ -172,6 +168,4 @@ $$C_p[\ce{H2O(l)}] = \pu{75.3 J // mol K}$$ [KaTeX]: https://katex.org/ [MathML]: https://developer.mozilla.org/en-US/docs/Web/MathML [mhchem]: https://mhchem.github.io/MathJax-mhchem/ -[passthrough extension]: /configuration/markup/#passthrough -[passthrough render hook]: /render-hooks/passthrough/ [rendering options]: https://katex.org/docs/options.html diff --git a/content/en/getting-started/directory-structure.md b/content/en/getting-started/directory-structure.md index 3feecd135..d01822c96 100644 --- a/content/en/getting-started/directory-structure.md +++ b/content/en/getting-started/directory-structure.md @@ -196,10 +196,7 @@ my-theme/ ├── i18n/ ├── layouts/ ├── static/ -├── LICENSE -├── README.md -├── hugo.toml -└── theme.toml +└── hugo.toml ``` Using the union file system described above, Hugo mounts each of these directories to the corresponding location in the project. When two files have the same path, the file in the project directory takes precedence. This allows you, for example, to override a theme's template by placing a copy in the same location within the project directory. diff --git a/content/en/getting-started/external-learning-resources/index.md b/content/en/getting-started/external-learning-resources/index.md index f36544c02..d3101be18 100644 --- a/content/en/getting-started/external-learning-resources/index.md +++ b/content/en/getting-started/external-learning-resources/index.md @@ -7,6 +7,9 @@ keywords: [] weight: 40 --- +> [!note] +> Many of the resources on this page, including older books and videos, may contain out-of-date information. The Hugo software has undergone significant changes since these resources were created. These changes include the introduction of a new template system, the deprecation of various functions and settings, and the addition of new features like Markdown render hooks, content adapters, and support for mathematical markup. While some concepts may still be relevant, it's recommended to consult the official Hugo documentation for the most current and accurate information. + ## Books ### Hugo in Action diff --git a/content/en/host-and-deploy/host-on-21yunbox.md b/content/en/host-and-deploy/host-on-21yunbox.md deleted file mode 100644 index 9ef684fd8..000000000 --- a/content/en/host-and-deploy/host-on-21yunbox.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Host on 21YunBox -description: Host your site on 21YunBox. -categories: [] -keywords: [] -aliases: [/hosting-and-deployment/hosting-on-21yunbox/] ---- - -[21YunBox](https://www.21cloudbox.com/) is a fully-managed cloud platform dedicated to make web deployment easy within the Chinese Great Firewall where you can host static sites, backend APIs, databases, cron jobs, and all your other apps in one place. It provides blazing fast Chinese CDN, continuous deployment, one-click HTTPS and [other services like managed databases and backend web services](https://www.21cloudbox.com/docs/), providing an avenue to launch web projects in China. - -21YunBox includes the following features: - -- Continuous, automatic builds & deploys from GitHub and Gitee -- Automatic SSL certificates through [Let's Encrypt](https://letsencrypt.org) -- Instant cache invalidation with a blazing fast, Chinese CDN -- Unlimited [custom domains](https://www.21cloudbox.com/dns-configuration.html) -- Automatic [Brotli compression](https://en.wikipedia.org/wiki/Brotli) for faster sites -- Native HTTP/2 support -- Automatic HTTP → HTTPS redirects -- Custom URL redirects and rewrites - -## Prerequisites - -This guide assumes you already have a Hugo project to deploy. If you need a project, use the [Quick Start](/getting-started/quick-start/) to get started or fork 21YunBox's [Hugo Example](https://gitee.com/eryiyunbox-examples/hello-hugo) before continuing. - -## Setup - -You can set up a Hugo site on 21YunBox in two quick steps: - -1. Create a new web service on 21YunBox, and give 21YunBox permission to access your GitHub or Gitee repo. -1. Use the following values during creation: - | Field | Value | - | ----------------- | ------------------------------------------------ | - | Environment | `Static Site` | - | Build Command | `hugo --gc --minify` (or your own build command) | - | Publish Directory | `./public` (or your own output directory) | - -That's it! Your site will be live on your 21YunBox URL (which looks like `yoursite.21yunbox.com`) as soon as the build is done. - -## Continuous deploys - -Now that 21YunBox is connected to your repo, it will automatically build and publish your site any time you push to GitHub. - -Every deploy automatically and instantly invalidates the CDN cache, so your users can always access the latest content on your site. - -## Custom domains - -Add your own domains to your site easily using 21YunBox's [custom domains](https://www.21cloudbox.com/dns-configuration.html) guide. - -## Support - -Click [here](https://www.21cloudbox.com/contact.html) to contact with 21YunBox' experts if you need help. diff --git a/content/en/host-and-deploy/host-on-aws-amplify/index.md b/content/en/host-and-deploy/host-on-aws-amplify/index.md index e2b35dbbe..4fd71f3f9 100644 --- a/content/en/host-and-deploy/host-on-aws-amplify/index.md +++ b/content/en/host-and-deploy/host-on-aws-amplify/index.md @@ -6,155 +6,152 @@ keywords: [] aliases: [/hosting-and-deployment/hosting-on-aws-amplify/] --- +Use these instructions to enable continuous deployment from a GitHub repository. The same general steps apply if you are using GitLab for version control. + ## Prerequisites Please complete the following tasks before continuing: -1. [Create an AWS account] -1. [Install Git] -1. [Create a Hugo site] and test it locally with `hugo server` -1. Commit the changes to your local repository -1. Push the local repository to your [GitHub], [GitLab], or [Bitbucket] account - -[Bitbucket]: https://bitbucket.org/product -[Create a Hugo site]: /getting-started/quick-start/ -[Create an AWS account]: https://aws.amazon.com/resources/create-account/ -[GitHub]: https://github.com -[GitLab]: https://about.gitlab.com/ -[Install Git]: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git +1. [Create](https://aws.amazon.com/resources/create-account/) an AWS account +1. [Log in](https://console.aws.amazon.com/) to your AWS account +1. [Create](https://github.com/signup) a GitHub account +1. [Log in](https://github.com/login) to your GitHub account +1. [Create](https://github.com/new) a GitHub repository for your project +1. [Create](https://git-scm.com/docs/git-init) a local Git repository for your project with a [remote](https://git-scm.com/docs/git-remote) reference to your GitHub repository +1. Create a Hugo site within your local Git repository and test it with the `hugo server` command +1. Commit the changes to your local Git repository and push to your GitHub repository. ## Procedure This procedure will enable continuous deployment from a GitHub repository. The procedure is essentially the same if you are using GitLab or Bitbucket. -### Step 1 +Step 1 +: Create a file named `amplify.yml` in the root of your project. -Create a file named `amplify.yml` in the root of your project. + ```sh + touch amplify.yml + ``` -```sh -touch amplify.yml -``` +Step 2 +: Copy and paste the YAML below into the file you created. Change the application versions and time zone as needed. -### Step 2 + ```yaml {file="amplify.yml" copy=true} + version: 1 + env: + variables: + # Application versions + DART_SASS_VERSION: 1.90.0 + GO_VERSION: 1.24.5 + HUGO_VERSION: 0.148.2 + # Time zone + TZ: Europe/Oslo + # Cache + HUGO_CACHEDIR: ${PWD}/.hugo + NPM_CONFIG_CACHE: ${PWD}/.npm + frontend: + phases: + preBuild: + commands: + # Create directory for user-specific executable files + - echo "Creating directory for user-specific executable files..." + - mkdir -p "${HOME}/.local" -Copy and paste the YAML below into the file you created. Change the application versions and time zone as needed. + # Install Dart Sass + - echo "Installing Dart Sass ${DART_SASS_VERSION}..." + - curl -sLJO "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + - tar -C "${HOME}/.local" -xf "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + - rm "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + - export PATH="${HOME}/.local/dart-sass:${PATH}" -```yaml {file="amplify.yml" copy=true} -version: 1 -env: - variables: - # Application versions - DART_SASS_VERSION: 1.89.2 - GO_VERSION: 1.24.2 - HUGO_VERSION: 0.147.9 - # Time zone - TZ: America/Los_Angeles - # Cache - HUGO_CACHEDIR: ${PWD}/.hugo - NPM_CONFIG_CACHE: ${PWD}/.npm -frontend: - phases: - preBuild: - commands: - # Install Dart Sass - - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - sudo tar -C /usr/local/bin -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - rm dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - export PATH=/usr/local/bin/dart-sass:$PATH + # Install Go + - echo "Installing Go ${GO_VERSION}..." + - curl -sLJO "https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz" + - tar -C "${HOME}/.local" -xf "go${GO_VERSION}.linux-amd64.tar.gz" + - rm "go${GO_VERSION}.linux-amd64.tar.gz" + - export PATH="${HOME}/.local/go/bin:${PATH}" - # Install Go - - curl -LJO https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz - - sudo tar -C /usr/local -xf go${GO_VERSION}.linux-amd64.tar.gz - - rm go${GO_VERSION}.linux-amd64.tar.gz - - export PATH=/usr/local/go/bin:$PATH + # Install Hugo + - echo "Installing Hugo ${HUGO_VERSION}..." + - curl -sLJO "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + - mkdir "${HOME}/.local/hugo" + - tar -C "${HOME}/.local/hugo" -xf "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + - rm "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + - export PATH="${HOME}/.local/hugo:${PATH}" - # Install Hugo - - curl -LJO https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz - - sudo tar -C /usr/local/bin -xf hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz - - rm hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz - - export PATH=/usr/local/bin:$PATH + # Verify installations + - echo "Verifying installations..." + - "echo Dart Sass: $(sass --version)" + - "echo Go: $(go version)" + - "echo Hugo: $(hugo version)" + - "echo Node.js: $(node --version)" - # Check installed versions - - go version - - hugo version - - node -v - - npm -v - - sass --embedded --version + # Install Node.js dependencies + - echo "Installing Node.js dependencies..." + - "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci --prefer-offline || true" - # Install Node.JS dependencies - - "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci --prefer-offline || true" + # Configure Git + - echo "Configuring Git..." + - git config core.quotepath false + build: + commands: + - echo "Building site..." + - hugo --gc --minify + artifacts: + baseDirectory: public + files: + - '**/*' + cache: + paths: + - ${HUGO_CACHEDIR}/**/* + - ${NPM_CONFIG_CACHE}/**/* + ``` - # https://github.com/gohugoio/hugo/issues/9810 - - git config --add core.quotepath false - build: - commands: - - hugo --gc --minify - artifacts: - baseDirectory: public - files: - - '**/*' - cache: - paths: - - ${HUGO_CACHEDIR}/**/* - - ${NPM_CONFIG_CACHE}/**/* -``` +Step 3 +: Commit and push the change to your GitHub repository. -### Step 3 + ```sh + git add -A + git commit -m "Create amplify.yml" + git push + ``` -Commit and push the change to your GitHub repository. +Step 4 +: Log in to your AWS account, navigate to the [Amplify Console], then press the **Deploy an app** button. -```sh -git add -A -git commit -m "Create amplify.yml" -git push -``` - -### Step 4 - -Log in to your AWS account, navigate to the [Amplify Console], then press the **Deploy an app** button. - -[Amplify Console]: https://console.aws.amazon.com/amplify/apps - -### Step 5 - -Choose a source code provider, then press the **Next** button. +Step 5 +: Choose a source code provider, then press the **Next** button. ![screen capture](amplify-step-05.png) -### Step 6 - -Authorize AWS Amplify to access your GitHub account. +Step 6 +: Authorize AWS Amplify to access your GitHub account. ![screen capture](amplify-step-06.png) -### Step 7 - -Select your personal account or relevant organization. +Step 7 +: Select your personal account or relevant organization. ![screen capture](amplify-step-07.png) -### Step 8 - -Authorize access to one or more repositories. +Step 8 +: Authorize access to one or more repositories. ![screen capture](amplify-step-08.png) -### Step 9 - -Select a repository and branch, then press the **Next** button. +Step 9 +: Select a repository and branch, then press the **Next** button. ![screen capture](amplify-step-09.png) -### Step 10 +Step 10 +: On the "App settings" page, scroll to the bottom then press the **Next** button. Amplify reads the `amplify.yml` file you created in Steps 1-3 instead of using the values on this page. -On the "App settings" page, scroll to the bottom then press the **Next** button. Amplify reads the `amplify.yml` file you created in Steps 1-3 instead of using the values on this page. +Step 11 +: On the "Review" page, scroll to the bottom then press the **Save and deploy** button. -### Step 11 - -On the "Review" page, scroll to the bottom then press the **Save and deploy** button. - -### Step 12 - -When your site has finished deploying, press the **Visit deployed URL** button to view your published site. +Step 12 +: When your site has finished deploying, press the **Visit deployed URL** button to view your published site. ![screen capture](amplify-step-11.png) + +[Amplify Console]: https://console.aws.amazon.com/amplify/apps diff --git a/content/en/host-and-deploy/host-on-cloudflare-pages.md b/content/en/host-and-deploy/host-on-cloudflare-pages.md deleted file mode 100644 index 1c3627288..000000000 --- a/content/en/host-and-deploy/host-on-cloudflare-pages.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: Host on Cloudflare Pages -description: Host your site on Cloudflare Pages. -categories: [] -keywords: [] -aliases: [/hosting-and-deployment/hosting-on-cloudflare-pages/] ---- - -[Cloudflare Pages](https://developers.cloudflare.com/pages/) are super fast, always up-to-date, and deployed directly from your [Git provider](https://developers.cloudflare.com/pages/get-started/#connect-your-git-provider-to-pages). - -Cloudflare Pages docs have a detailed tutorial on [how to deploy a Hugo site](https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site/). diff --git a/content/en/host-and-deploy/host-on-cloudflare/cloudflare-01.png b/content/en/host-and-deploy/host-on-cloudflare/cloudflare-01.png new file mode 100644 index 0000000000000000000000000000000000000000..9c7a4380dc8204aa3e57e7026b5fd71c24623f16 GIT binary patch literal 16057 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%0Ay1!JnNi4|c89oed{=yGpf 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 CBXyGi literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-cloudflare/cloudflare-03.png b/content/en/host-and-deploy/host-on-cloudflare/cloudflare-03.png new file mode 100644 index 0000000000000000000000000000000000000000..6d4228b4a489c7a3cb8f5255bac636bd3757913b GIT binary patch literal 7262 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 CyDH@X literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-cloudflare/cloudflare-05.png b/content/en/host-and-deploy/host-on-cloudflare/cloudflare-05.png new file mode 100644 index 0000000000000000000000000000000000000000..d907844d1aee49104fcdcaac2786c039dae96caa GIT binary patch literal 27869 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 T5`e#d>4xk(rMJaWhF|{+K=;O1 literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-cloudflare/cloudflare-06.png b/content/en/host-and-deploy/host-on-cloudflare/cloudflare-06.png new file mode 100644 index 0000000000000000000000000000000000000000..33010b11d3cb7f0d5237907168210c12a08da608 GIT binary patch literal 7310 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/pages.git git push -u origin main ``` -## Automated deployment using Woodpecker CI +## Automated deployment -There are two methods you can use to deploy your Hugo website to Codeberg automatically. These are: Woodpecker CI and Forgejo Actions. +You can automatically deploy your Hugo website to Codeberg using one of two methods: Woodpecker CI or Forgejo Actions. + +### Woodpecker CI To use Codeberg's Woodpecker CI, you need to have or [request] access to it, as well as add a `.woodpecker.yaml` file in the root of your project. A template and additional instructions are available in the official [examples repository]. @@ -78,7 +80,7 @@ git push -u origin main Your project will then be built and deployed by Codeberg's Woodpecker CI. -## Automated deployment using Forgejo Actions +### Forgejo Actions The other way to deploy your website to Codeberg pages automatically is to make use of Forgejo Actions. Actions need a _runner_ to work, and Codeberg has [great documentation] on how to set one up yourself. However, Codeberg provides a [handful of humble runners] themselves (they say this feature is in "open alpha"), which actually seem powerful enough to build at least relatively simple websites. @@ -109,7 +111,7 @@ jobs: runs-on: codeberg-tiny-lazy container: # Specify "hugomods/hugo:exts" if you want to always use the latest version of Hugo for building. - image: "hugomods/hugo:exts-0.147.9" + image: "hugomods/hugo:exts-0.148.0" steps: - name: Clone the repository uses: https://code.forgejo.org/actions/checkout@v4 @@ -160,21 +162,25 @@ jobs: The second file implements a more complex scenario: having your website sources in one repository and the resulting static website in another repository (in this case, `pages`). If you want Codeberg to make your website available at the root of your pages subdomain (`https://.codeberg.page/`), you have to push that website to the default branch of your repository named `pages`. Since this action involves more than one repository, it will require a bit more preparation: + 1. Create the target repository. Name it `pages`. -2. Generate a new SSH key. *Do not* use any of your own SSH keys for this, but generate one for this specific task only. On Linux, BSD, and, likely, other operating systems, you can open a terminal emulator and run the following command to generate the key: +1. Generate a new SSH key. Do not use any of your own SSH keys for this, but generate one for this specific task only. On Linux, BSD, and, likely, other operating systems, you can open a terminal emulator and run the following command to generate the key: + ```shell ssh-keygen -f pagesbuild -P "" ``` - This will generate two files in your current directory: `pagesbuild` (private key) and `pagesbuild.pub` (public key). -3. Add the newly generated public key as a deploy key to your `pages` repository: navigate to its Settings, click on "Deploy keys" in the left menu, click the "Add deploy key" button, give it a name (e.g. "Actions deploy key"), paste the contents of the **public** key file (`pagesbuild.pub`) to the Content field, tick the "Enable write access" checkbox, then submit the form. -4. Navigate back to your source repository settings, expand the "Actions" menu and click on "Secrets". Then click "Add Secret", enter "DEPLOY_KEY" as the secret name and paste the contents of the newly generated **private** key file (`pagesbuild`) into the Value field. -5. Navigate to the "Variables" submenu of the "Actions" menu and add the following variables: - | Name | Value | - |---------------------|----------------------------------------------------------------------------------| - | `TARGET_REPOSITORY` | `/pages` | - | `TARGET_BRANCH` | `main` (enter the default branch name of the `pages` repo here) | - | `SSH_KNOWN_HOSTS` | (paste the output you get by running `ssh-keyscan codeberg.org` in the terminal) | + This will generate two files in your current directory: `pagesbuild` (private key) and `pagesbuild.pub` (public key). + +1. Add the newly generated public key as a deploy key to your `pages` repository: navigate to its Settings, click on "Deploy keys" in the left menu, click the "Add deploy key" button, give it a name (e.g. "Actions deploy key"), paste the contents of the **public** key file (`pagesbuild.pub`) to the Content field, tick the "Enable write access" checkbox, then submit the form. +1. Navigate back to your source repository settings, expand the "Actions" menu and click on "Secrets". Then click "Add Secret", enter "DEPLOY_KEY" as the secret name and paste the contents of the newly generated **private** key file (`pagesbuild`) into the Value field. +1. Navigate to the "Variables" submenu of the "Actions" menu and add the following variables: + +Name|Value +:--|:-- +`TARGET_REPOSITORY`|`/pages` +`TARGET_BRANCH`|`main` (enter the default branch name of the `pages` repo here) +`SSH_KNOWN_HOSTS`|(paste the output you get by running `ssh-keyscan codeberg.org` in the terminal) Once you've done all of the above, commit the following file to your repository as `.forgejo/workflows/hugo.yaml`. As you can see, the `deploy` job of this workflow is slightly different from the file above: @@ -195,7 +201,7 @@ jobs: runs-on: codeberg-tiny-lazy container: # Specify "hugomods/hugo:exts" if you want to always use the latest version of Hugo for building. - image: "hugomods/hugo:exts-0.147.9" + image: "hugomods/hugo:exts-0.148.0" steps: - name: Clone the repository uses: https://code.forgejo.org/actions/checkout@v4 @@ -249,6 +255,27 @@ jobs: Once you commit one of the two files to your website source repository, you should see your first automated build firing up pretty soon. You can also trigger it manually by navigating to the **Actions** section of your repository web page, choosing **hugo.yaml** on the left and clicking on **Run workflow**. +## Forgejo Actions custom domains + +Codeberg Pages relies on a `.domains` file to identify allowed domains for a specific branch. It's important that this file is located in the root directory of your output repository or branch, rather than in the root directory of your source files. To achieve this, simply place your `.domains` file in the `static` directory of your project. When your site is built, it will be automatically copied to the `public` directory, which serves as the root of your output. + +When looking at the example `.forgejo/workflows/hugo.yaml`, you'll notice that the `upload-artifact@v3` action is used to upload the public directory to the deployment branch. + +By default, both `upload-artifact@v3` and `upload-artifact@v4` exclude all dot files from being uploaded unless you specifically tell them not to (you can find more details [here]). + +By default, upload-artifact@v3 and upload-artifact@v4 exclude all dot files from being uploaded. You can find more details on [how to handle dot files and other file patterns in the documentation](https://github.com/actions/upload-artifact/issues/602). To make sure dot files are included, modify your workflow like this: + +```yaml {file=".forgejo/workflows/hugo.yaml" copy=true} + - name: Upload generated files + uses: https://code.forgejo.org/actions/upload-artifact@v3 + with: + name: Generated files + path: public/ + include-hidden-files: true # Prevents excluding .domains from uploading +``` + +If you're using a custom domain, it's important to update your workflow file accordingly. + ## Other resources - [Codeberg Pages](https://codeberg.page/) diff --git a/content/en/host-and-deploy/host-on-firebase.md b/content/en/host-and-deploy/host-on-firebase.md index 267c8d127..064ecadad 100644 --- a/content/en/host-and-deploy/host-on-firebase.md +++ b/content/en/host-and-deploy/host-on-firebase.md @@ -43,22 +43,22 @@ From here: In new versions of Firebase, some other questions apply: -6. Set up automatic builds and deploys with GitHub? +1. Set up automatic builds and deploys with GitHub? -Here you will be redirected to login in your GitHub account to get permissions. Confirm. + Here you will be redirected to login in your GitHub account to get permissions. Confirm. -7. For which GitHub repository would you like to set up a GitHub workflow? (format: user/repository) +1. For which GitHub repository would you like to set up a GitHub workflow? (format: user/repository) -Include the repository you will use in the format above (Account/Repo) -Firebase script with retrieve credentials, create a service account you can later manage in your GitHub settings. + Include the repository you will use in the format above (Account/Repo) + Firebase script with retrieve credentials, create a service account you can later manage in your GitHub settings. -8. Set up the workflow to run a build script before every deploy? +1. Set up the workflow to run a build script before every deploy? -Here is your opportunity to include some commands before you run the deploy. + Here is your opportunity to include some commands before you run the deploy. -9. Set up automatic deployment to your site's live channel when a PR is merged? +1. Set up automatic deployment to your site's live channel when a PR is merged? -You can let in the default option (main) + You can let in the default option (main) After that Firebase has been set in your project with [CI/CD](g). After that run: @@ -66,7 +66,7 @@ After that Firebase has been set in your project with [CI/CD](g). After that run hugo && firebase deploy ``` -With this you will have the app initialized manually. After that you can manage and fix your GitHub workflow from: https://github.com/your-account/your-repo/actions +With this you will have the app initialized manually. After that you can manage and fix your GitHub workflow from . Don't forget to update your static pages before push! diff --git a/content/en/host-and-deploy/host-on-github-pages/gh-pages-1.png b/content/en/host-and-deploy/host-on-github-pages/gh-pages-01.png similarity index 100% rename from content/en/host-and-deploy/host-on-github-pages/gh-pages-1.png rename to content/en/host-and-deploy/host-on-github-pages/gh-pages-01.png diff --git a/content/en/host-and-deploy/host-on-github-pages/gh-pages-2.png b/content/en/host-and-deploy/host-on-github-pages/gh-pages-02.png similarity index 100% rename from content/en/host-and-deploy/host-on-github-pages/gh-pages-2.png rename to content/en/host-and-deploy/host-on-github-pages/gh-pages-02.png diff --git a/content/en/host-and-deploy/host-on-github-pages/gh-pages-3.png b/content/en/host-and-deploy/host-on-github-pages/gh-pages-03.png similarity index 100% rename from content/en/host-and-deploy/host-on-github-pages/gh-pages-3.png rename to content/en/host-and-deploy/host-on-github-pages/gh-pages-03.png diff --git a/content/en/host-and-deploy/host-on-github-pages/gh-pages-4.png b/content/en/host-and-deploy/host-on-github-pages/gh-pages-04.png similarity index 100% rename from content/en/host-and-deploy/host-on-github-pages/gh-pages-4.png rename to content/en/host-and-deploy/host-on-github-pages/gh-pages-04.png diff --git a/content/en/host-and-deploy/host-on-github-pages/gh-pages-5.png b/content/en/host-and-deploy/host-on-github-pages/gh-pages-05.png similarity index 100% rename from content/en/host-and-deploy/host-on-github-pages/gh-pages-5.png rename to content/en/host-and-deploy/host-on-github-pages/gh-pages-05.png diff --git a/content/en/host-and-deploy/host-on-github-pages/index.md b/content/en/host-and-deploy/host-on-github-pages/index.md index 165c9934c..dd4039dd8 100644 --- a/content/en/host-and-deploy/host-on-github-pages/index.md +++ b/content/en/host-and-deploy/host-on-github-pages/index.md @@ -6,14 +6,6 @@ keywords: [] aliases: [/hosting-and-deployment/hosting-on-github/] --- -## Prerequisites - -Please complete the following tasks before continuing: - -1. [Create a GitHub account] -1. [Install Git] -1. [Create a Hugo site] and test it locally with `hugo server`. - ## Types of sites There are three types of GitHub Pages sites: project, user, and organization. Project sites are connected to a specific project hosted on GitHub. User and organization sites are connected to a specific account on GitHub.com. @@ -21,194 +13,177 @@ There are three types of GitHub Pages sites: project, user, and organization. Pr > [!note] > See the [GitHub Pages documentation] to understand the requirements for repository ownership and naming. +## Prerequisites + +Please complete the following tasks before continuing: + +1. [Create](https://github.com/signup) a GitHub account +1. [Log in](https://github.com/login) to your GitHub account +1. [Create](https://github.com/new) a GitHub repository for your project +1. [Create](https://git-scm.com/docs/git-init) a local Git repository for your project with a [remote](https://git-scm.com/docs/git-remote) reference to your GitHub repository +1. Create a Hugo site within your local Git repository and test it with the `hugo server` command +1. Commit the changes to your local Git repository and push to your GitHub repository + ## Procedure -### Step 1 +Step 1 +: Visit your GitHub repository. From the main menu choose **Settings** > **Pages**. In the center of your screen you will see this: -Create a GitHub repository. + ![screen capture](gh-pages-01.png) -### Step 2 + Change the **Source** to `GitHub Actions`. The change is immediate; you do not have to press a Save button. -Push your local repository to GitHub. + ![screen capture](gh-pages-02.png) -### Step 3 +Step 2 +: In your site configuration, change the location of the image cache to the [`cacheDir`] as shown below: -Visit your GitHub repository. From the main menu choose **Settings** > **Pages**. In the center of your screen you will see this: + {{< code-toggle file=hugo copy=true >}} + [caches.images] + dir = ":cacheDir/images" + {{< /code-toggle >}} -![screen capture](gh-pages-1.png) -{style="max-width: 280px"} + See [configure file caches] for more information. -### Step 4 +Step 3 +: Create a file named `hugo.yaml` in a directory named `.github/workflows`. -Change the **Source** to `GitHub Actions`. The change is immediate; you do not have to press a Save button. + ```text + mkdir -p .github/workflows + touch .github/workflows/hugo.yaml + ``` -![screen capture](gh-pages-2.png) -{style="max-width: 280px"} +Step 4 +: Copy and paste the YAML below into the file you created. -### Step 5 + ```yaml {file=".github/workflows/hugo.yaml" copy=true} + name: Build and deploy + on: + push: + branches: + - main + workflow_dispatch: + permissions: + contents: read + pages: write + id-token: write + concurrency: + group: pages + cancel-in-progress: false + defaults: + run: + shell: bash + jobs: + build: + runs-on: ubuntu-latest + env: + DART_SASS_VERSION: 1.90.0 + GO_VERSION: 1.24.5 + HUGO_VERSION: 0.148.2 + NODE_VERSION: 22.18.0 + TZ: Europe/Oslo + steps: + - name: Checkout + uses: actions/checkout@v5 + with: + submodules: recursive + fetch-depth: 0 + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + cache: false + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: ${{ env.NODE_VERSION }} + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + - name: Create directory for user-specific executable files + run: | + mkdir -p "${HOME}/.local" + - name: Install Dart Sass + run: | + curl -sLJO "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + tar -C "${HOME}/.local" -xf "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + rm "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + echo "${HOME}/.local/dart-sass" >> "${GITHUB_PATH}" + - name: Install Hugo + run: | + curl -sLJO "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + mkdir "${HOME}/.local/hugo" + tar -C "${HOME}/.local/hugo" -xf "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + rm "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + echo "${HOME}/.local/hugo" >> "${GITHUB_PATH}" + - name: Verify installations + run: | + echo "Dart Sass: $(sass --version)" + echo "Go: $(go version)" + echo "Hugo: $(hugo version)" + echo "Node.js: $(node --version)" + - name: Install Node.js dependencies + run: | + [[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true + - name: Configure Git + run: | + git config core.quotepath false + - name: Cache restore + id: cache-restore + uses: actions/cache/restore@v4 + with: + path: ${{ runner.temp }}/hugo_cache + key: hugo-${{ github.run_id }} + restore-keys: + hugo- + - name: Build the site + run: | + hugo \ + --gc \ + --minify \ + --baseURL "${{ steps.pages.outputs.base_url }}/" \ + --cacheDir "${{ runner.temp }}/hugo_cache" + - name: Cache save + id: cache-save + uses: actions/cache/save@v4 + with: + path: ${{ runner.temp }}/hugo_cache + key: ${{ steps.cache-restore.outputs.cache-primary-key }} + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./public + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 + ``` -In your site configuration, change the location of the image cache to the [`cacheDir`] as shown below: +Step 5 +: Commit the changes to your local Git repository and push to your GitHub repository. -{{< code-toggle file=hugo >}} -[caches.images] -dir = ":cacheDir/images" -{{< /code-toggle >}} +Step 6 +: From GitHub's main menu, choose **Actions**. You will see something like this: -See [configure file caches] for more information. + ![screen capture](gh-pages-03.png) -### Step 6 +Step 7 +: When GitHub has finished building and deploying your site, the color of the status indicator will change to green. -Create a file named `hugo.yaml` in a directory named `.github/workflows`. + ![screen capture](gh-pages-04.png) -```text -mkdir -p .github/workflows -touch .github/workflows/hugo.yaml -``` +Step 8 +: Click on the commit message as shown above. Under the deploy step, you will see a link to your live site. -### Step 7 + ![screen capture](gh-pages-05.png) -> [!note] -> The workflow below ensures Hugo's `cacheDir` is persistent, preserving modules, processed images, and [`resources.GetRemote`] data between builds. - -Copy and paste the YAML below into the file you created. Change the branch name and Hugo version as needed. - -```yaml {file=".github/workflows/hugo.yaml" copy=true} -# Sample workflow for building and deploying a Hugo site to GitHub Pages -name: Deploy Hugo site to Pages - -on: - # Runs on pushes targeting the default branch - push: - branches: - - main - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. -# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. -concurrency: - group: "pages" - cancel-in-progress: false - -# Default to bash -defaults: - run: - shell: bash - -jobs: - # Build job - build: - runs-on: ubuntu-latest - env: - DART_SASS_VERSION: 1.89.2 - HUGO_VERSION: 0.147.9 - HUGO_ENVIRONMENT: production - TZ: America/Los_Angeles - steps: - - name: Install Hugo CLI - run: | - wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ - && sudo dpkg -i ${{ runner.temp }}/hugo.deb - - name: Install Dart Sass - run: | - wget -O ${{ runner.temp }}/dart-sass.tar.gz https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz \ - && tar -xf ${{ runner.temp }}/dart-sass.tar.gz --directory ${{ runner.temp }} \ - && mv ${{ runner.temp }}/dart-sass/ /usr/local/bin \ - && echo "/usr/local/bin/dart-sass" >> $GITHUB_PATH - - name: Checkout - uses: actions/checkout@v4 - with: - submodules: recursive - fetch-depth: 0 - - name: Setup Pages - id: pages - uses: actions/configure-pages@v5 - - name: Install Node.js dependencies - run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" - - name: Cache Restore - id: cache-restore - uses: actions/cache/restore@v4 - with: - path: | - ${{ runner.temp }}/hugo_cache - key: hugo-${{ github.run_id }} - restore-keys: - hugo- - - name: Configure Git - run: git config core.quotepath false - - name: Build with Hugo - run: | - hugo \ - --gc \ - --minify \ - --baseURL "${{ steps.pages.outputs.base_url }}/" \ - --cacheDir "${{ runner.temp }}/hugo_cache" - - name: Cache Save - id: cache-save - uses: actions/cache/save@v4 - with: - path: | - ${{ runner.temp }}/hugo_cache - key: ${{ steps.cache-restore.outputs.cache-primary-key }} - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - with: - path: ./public - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 -``` - -### Step 8 - -Commit and push the change to your GitHub repository. - -```sh -git add -A -git commit -m "Create hugo.yaml" -git push -``` - -### Step 9 - -From GitHub's main menu, choose **Actions**. You will see something like this: - -![screen capture](gh-pages-3.png) -{style="max-width: 350px"} - -### Step 10 - -When GitHub has finished building and deploying your site, the color of the status indicator will change to green. - -![screen capture](gh-pages-4.png) -{style="max-width: 350px"} - -### Step 11 - -Click on the commit message as shown above. You will see this: - -![screen capture](gh-pages-5.png) -{style="max-width: 611px"} - -Under the deploy step, you will see a link to your live site. - -In the future, whenever you push a change from your local repository, GitHub will rebuild your site and deploy the changes. +In the future, whenever you push a change from your local Git repository, GitHub Pages will rebuild and deploy your site. ## Customize the workflow @@ -227,11 +202,7 @@ You may remove this step if your site, themes, and modules do not transpile Sass - [Caching dependencies to speed up workflows](https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows) - [Manage a custom domain for your GitHub Pages site](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages) -[Create a GitHub account]: https://github.com/signup -[Create a Hugo site]: /getting-started/quick-start/ +[`cacheDir`]: /configuration/all/#cachedir +[configure file caches]: /configuration/caches/ [Dart Sass]: /functions/css/sass/#dart-sass [GitHub Pages documentation]: https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites -[Install Git]: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git -[`cacheDir`]: /configuration/all/#cachedir -[`resources.GetRemote`]: /functions/resources/getremote/ -[configure file caches]: /configuration/caches/ diff --git a/content/en/host-and-deploy/host-on-gitlab-pages.md b/content/en/host-and-deploy/host-on-gitlab-pages.md index cf4220888..c43303804 100644 --- a/content/en/host-and-deploy/host-on-gitlab-pages.md +++ b/content/en/host-and-deploy/host-on-gitlab-pages.md @@ -23,44 +23,81 @@ Define your [CI/CD](g) jobs by creating a `.gitlab-ci.yml` file in the root of y ```yaml {file=".gitlab-ci.yml" copy=true} variables: - DART_SASS_VERSION: 1.89.2 + # Application versions + DART_SASS_VERSION: 1.90.0 + HUGO_VERSION: 0.148.2 + NODE_VERSION: 22.18.0 + # Git GIT_DEPTH: 0 GIT_STRATEGY: clone GIT_SUBMODULE_STRATEGY: recursive - HUGO_VERSION: 0.147.9 - NODE_VERSION: 22.x - TZ: America/Los_Angeles + # Time zone + TZ: Europe/Oslo + image: - name: golang:1.24.2-bookworm + name: golang:1.24.5-bookworm pages: stage: deploy script: - # Install brotli + # Create directory for user-specific executable files + - echo "Creating directory for user-specific executable files..." + - mkdir -p "${HOME}/.local" + + # Install utilities + - echo "Installing utilities..." - apt-get update - - apt-get install -y brotli + - apt-get install -y brotli xz-utils zstd + # Install Dart Sass - - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - cp -r dart-sass/ /usr/local/bin - - rm -rf dart-sass* - - export PATH=/usr/local/bin/dart-sass:$PATH + - echo "Installing Dart Sass ${DART_SASS_VERSION}..." + - curl -sLJO "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + - tar -C "${HOME}/.local" -xf "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + - rm "dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + - export PATH="${HOME}/.local/dart-sass:${PATH}" + # Install Hugo - - curl -LJO https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - apt-get install -y ./hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - rm hugo_extended_${HUGO_VERSION}_linux-amd64.deb + - echo "Installing Hugo ${HUGO_VERSION}..." + - curl -sLJO "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + - mkdir "${HOME}/.local/hugo" + - tar -C "${HOME}/.local/hugo" -xf "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + - rm "hugo_extended_${HUGO_VERSION}_linux-amd64.tar.gz" + - export PATH="${HOME}/.local/hugo:${PATH}" + # Install Node.js - - curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION} | bash - - - apt-get install -y nodejs + - echo "Installing Node.js ${NODE_VERSION}..." + - curl -sLJO "https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.xz" + - tar -C "${HOME}/.local" -xf "node-v${NODE_VERSION}-linux-x64.tar.xz" + - rm "node-v${NODE_VERSION}-linux-x64.tar.xz" + - export PATH="${HOME}/.local/node-v${NODE_VERSION}-linux-x64/bin:${PATH}" + + # Verify installations + - echo "Verifying installations..." + - "echo Dart Sass: $(sass --version)" + - "echo Go: $(go version)" + - "echo Hugo: $(hugo version)" + - "echo Node.js: $(node --version)" + - "echo brotli: $(brotli --version)" + - "echo xz: $(xz --version)" + - "echo zstd: $(zstd --version)" + # Install Node.js dependencies - - "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" + - echo "Installing Node.js dependencies..." + - "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci --prefer-offline || true" + # Configure Git + - echo "Configuring Git..." - git config core.quotepath false - # Build - - hugo --gc --minify --baseURL ${CI_PAGES_URL} - # Compress - - find public -type f -regex '.*\.\(css\|html\|js\|txt\|xml\)$' -exec gzip -f -k {} \; - - find public -type f -regex '.*\.\(css\|html\|js\|txt\|xml\)$' -exec brotli -f -k {} \; + + # Build site + - echo "Building site..." + - hugo --gc --minify --baseURL "${CI_PAGES_URL}" + + # Compress published files + - echo "Compressing published files..." + - find public/ -type f -regextype posix-extended -regex '.+\.(css|html|js|json|mjs|svg|txt|xml)$' -print0 > files.txt + - time xargs --null --max-procs=0 --max-args=1 brotli --quality=10 --force --keep < files.txt + - time xargs --null --max-procs=0 --max-args=1 gzip -9 --force --keep < files.txt artifacts: paths: - public @@ -70,7 +107,7 @@ pages: ## Push your Hugo website to GitLab -Next, create a new repository on GitLab. It is *not* necessary to make the repository public. In addition, you might want to add `/public` to your .gitignore file, as there is no need to push compiled assets to GitLab or keep your output website in version control. +Next, create a new repository on GitLab. It is not necessary to make the repository public. In addition, you might want to add `/public` to your .gitignore file, as there is no need to push compiled assets to GitLab or keep your output website in version control. ```sh # initialize new git repository diff --git a/content/en/host-and-deploy/host-on-keycdn/index.md b/content/en/host-and-deploy/host-on-keycdn/index.md deleted file mode 100644 index 828e250c6..000000000 --- a/content/en/host-and-deploy/host-on-keycdn/index.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -title: Host on KeyCDN -description: Host your site on KeyCDN. -categories: [] -keywords: [] -aliases: [/hosting-and-deployment/hosting-on-keycdn/] ---- - -[KeyCDN](https://www.keycdn.com/) provides a multitude of features to help accelerate and secure your Hugo site globally including Brotli compression, Let's Encrypt support, Origin Shield, and more. - -## Assumptions - -- You already have a Hugo page configured -- You have a GitLab account -- You have a KeyCDN account - -## Create a KeyCDN Pull Zone - -The first step will be to log in to your KeyCDN account and create a new zone. Name this whatever you like and select the [Pull Zone](https://www.keycdn.com/support/create-a-pull-zone/) option. As for the origin URL, your site will be running on [GitLab Pages](https://docs.gitlab.com/ee/user/project/pages/getting_started_part_one.html) with a URL of `https://youruser.gitlab.io/reponame/`. Use this as the Origin URL. - -![Screenshot of KeyCDN's pull zone creation page](keycdn-pull-zone.png) - -While the origin location doesn't exist yet, you will need to use your new Zone URL address (or [Zone Alias](https://www.keycdn.com/support/create-a-zone-alias/)) in the `.gitlab-ci.yml` file that will be uploaded to your GitLab project. - -Ensure that you use your Zone URL or Zone alias as the `BASEURL` variable in the example below. This will be the user-visible website address. - -## Configure Your .gitlab-ci.yml File - -Your `.gitlab-ci.yml` file should look similar to the example below. Be sure to modify any variables that are specific to your setup. - -```yml -image: alpine:latest - -variables: - BASEURL: "https://cipull-7bb7.kxcdn.com/" - HUGO_VERSION: "0.26" - HUGO_CHECKSUM: "67e4ba5ec2a02c8164b6846e30a17cc765b0165a5b183d5e480149baf54e1a50" - KEYCDN_ZONE_ID: "75544" - -before_script: - - apk update - - apk add curl - -pages: - stage: deploy - script: - - apk add git - - git submodule update --init - - curl -sSL https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-64bit.tar.gz -o /tmp/hugo.tar.gz - - echo "${HUGO_CHECKSUM} /tmp/hugo.tar.gz" | sha256sum -c - - tar xf /tmp/hugo.tar.gz hugo -C /tmp/ && cp /tmp/hugo /usr/bin - - hugo --baseURL ${BASEURL} - - curl "https://api.keycdn.com/zones/purge/${KEYCDN_ZONE_ID}.json" -u "${KEYCDN_API_KEY}:" - artifacts: - paths: - - public - only: - - master -``` - -Using this integration method, you will have to specify the Zone ID and your [KeyCDN API](https://www.keycdn.com/api) key as secret variables. To do this, navigate to the top-left menu bar in GitLab and select Projects. Then, select your project and click on the Settings page. Finally, select Pipelines from the sub-menu and scroll down to the Secret Variable section. - -The Secret Variable for your Zone ID should look similar to: - -![Screenshot of setting the Zone ID secret variable](secret-zone-id.png) - -While the Secret Variable for your API Key will look similar to: - -![Screenshot of setting the API Key secret variable](secret-api-key.png) - -While not strictly required, providing your Zone ID and API key is recommended for purging your zone. Without them, the CDN may continue serving outdated versions of your assets for an extended period. - -## Push your changes to GitLab - -Now it's time to push the newly created repository to GitLab: - -```sh -git remote add origin git@gitlab.com:youruser/ci-example.git -git push -u origin master -``` - -You can watch the progress and CI job output in your GitLab project under “Pipelines”. - -After verifying your CI job ran without issues, first check that your GitLab page shows up under `https://youruser.gitlab.io/reponame/` (it might look broken depending on your browser settings as all links point to your KeyCDN zone---don't worry about that) and then by heading to whatever Zone alias / Zone URL you defined. - -To learn more about Hugo hosting options with KeyCDN, check out the complete [Hugo hosting with KeyCDN integration guide](https://www.keycdn.com/support/hugo-hosting/). diff --git a/content/en/host-and-deploy/host-on-keycdn/keycdn-pull-zone.png b/content/en/host-and-deploy/host-on-keycdn/keycdn-pull-zone.png deleted file mode 100644 index 7cde4a6a22c448570c0d05d6aba64d3c7322aed7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 114748 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±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 literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-render/render-03.png b/content/en/host-and-deploy/host-on-render/render-03.png new file mode 100644 index 0000000000000000000000000000000000000000..731d8ff261d1454c0e22f9f7e3b27e41f4822045 GIT binary patch literal 16902 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 OBSB?VWU8f%gZ~F_JH&qg literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-render/render-04.png b/content/en/host-and-deploy/host-on-render/render-04.png new file mode 100644 index 0000000000000000000000000000000000000000..94e5ea87b025ce49301a85044aba902b1c4b1b28 GIT binary patch literal 5850 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 literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-render/render-07.png b/content/en/host-and-deploy/host-on-render/render-07.png new file mode 100644 index 0000000000000000000000000000000000000000..2a645d13a3eee74c94a90a647703784a98b96eec GIT binary patch literal 23683 zcmdqJbyQnlw=UdL0fLnhq&S7*PI0#a#oZ-P+(L10f#B9cA-KB*cMH}QEAA4YxNFc{ ze(!tE_uqHMJ$KxD$2Yz|W_H%f-fPc2=UOw*d@@%e)Kuhf0HlB?PoCf?$jfLvd4dLi zlmm=sk3EEZrx=fiXRcBTS{N7@3kcQK$JP@yB`sMX5EzAys{7Tti$b+-pn`&Yyma2@ zrJ#C!Bu;(>07>PT)S*hGK-utdpWfr6qoWvU)aK@4*nT!yT2exR`G4kZT`;Al?y0! zb@id4p(vTR%SWgfa@70`3OStuWYjUpM=&xnW_?Du8Q`CW}dp*p%y@#9wv!Y*>Ig`3Sj z%?o>oE>uTuRJt?@$n}YgL(WwK7~~dZ_nzTB1A|BNF{1L*R!5YlYjk#HUA==qiVnkc zU33vGYGMne6F;~=kmwp1{a#A7t|+CiukU;Zp~DO`W_!GF+fJClM@P=yHNG+h2TM;_jYxOnkWbaQnZBRBxOe3 zZ0We9xF*7{P^hS~KS~^Avl%+y^XpR-$=ZETTPqzpQtziLAq?;BP{-puJUk2x?`0VU z>S3rhR{>6rPtiJT&C;lxK>M5hfsCn(-a=@09o#v*P(nhENw3h}-nVSv4+EQ&W(H!u z>8i*=7=^l$w<{`y#-Goi>X}i(QZ9)>Zm28NRFS_@(maEFv`%zKcIym~hRaSzD!yau z*V67)7s_9T`TY1;)y^v@K5J~}YG5C=bA=j>mfy)i{i@3*0|FE6Q1PzzsVI7^6>3qdg^ z{a8NtrRMHdhCG+?Z#S0(yX)rOxRk)$Pa+BBTph&M<9=yt(`r{NOm2Nm|DM40+L`6W zn`Jsyk=gaIGs|KnpD0REpZAxg;idhH;{#hk1sYM{v345&Y-uYWVKMD5d-}+4#QuIs zx3=Q%9>xZWmP?q+G)jP(sNB(ZRi7U_{$dlvi5={DIShV&h5U^7KYpkZGVV{dPdlfY zhq*cFmh>e7W&m;&;@+nwjpG z1yoLG19;^?doF)GwUlE9%OpXpHD`0b*=p;W3`b=7FH)8v+JyG^ZXXGCNI@( zSR9pM2iiVYNs)GH0w-JC5Q`s?!Vn9!MFV6>;KauxMs#Lb1ULSfE>#x$k0f93l9!N^ zt<;7(_tuh7M6kG$LQQ+(Tj4h#D*5SV?cScxzRr;fm*{hix+POUXB0*t&0)4#$fh#DnZ$q6w zt8FaqUo%`lnJ%ANj9hGUNh*fBzi~gL8#Nb<`#cb`@G}yk%C<=tSiHs$t%)^>c_a zsAw<~duIZ8)LHya)W_z6WT|5y%;77+*%cv6EG}$TqY6I*!)|267_LiQ|h+Rkk+mjsE|Od8re&a^#XNa|(vuJt<(SZ)*hE}i{! zXK}GIr?1JE*Z8z`}GrD|R)MKwE#dvlkC1>r8O0ncF|(qjZnu8$7M<7;DVGyQ80EyKM680Pd(5KEK^*VY>aE`0G23qfCGNuO6& z6(V-_aY$Qpb*3MZAgV`N-*0^G(V+TqcKyn#3reKi2QHnqX&*(7*RVg_Wi21OoKW>0 z@5l;I;$=|^>pe`b?cA8!f`IN8bzKA33o+%51Ki?3u9QPsa z#CI)~J69PDwq2jxDNuB$W%RJ1R^DE<=epN&SqzM%px)ZUvPdDC9QJW#^DQk(C*C&@ zLKNAMuGt-zP*$MNhO8)WTBbgYYSv6va26rL|MMwb=r<2q;hQN+NrsaTmQ{QjhBvdx zcKk!y;bFu>T%6<+Gyn@t!iL)?@7Z78es@%B(k5}f^fe4C*F*s^~Id zi6(CTbCSKKt`BaLs%rh<6ZZ?l)qm225m;-sgG`J%Sg!=pP0uwXtWUC_S@f%91bdwP zO8z@N;_hf{vU!%##`stt7@a_^rMQRI__Np`FBC~IF;!`?7I z$D`5HT}>EwftI~iUHL{bOwXsonxuOCAx-E2j{Pa z%iUvvl_!W$SlF(G!JT!0F30%RGY|=&NsVK^Ibak2?RSafg*hhH7D2-Pnhr=G)_nW> zrV=^GHIvl@O@PV%LhqgS!Us7}Z$A1PGLr~_i^#6{YS*o7V{=W_jm_MKN{(8#@cOTC zw+EuVwgiUjGM&3OzEe6Fm*K^v`Eb=k!q97o_}5tiv?HD#PFo(vMo)#Ja*ZdQ zDdXrkW4HfW7r}}%FmQ56?u`jL#$2jk#eyn6sj|p7?6ALfgcflr_hZ&KS&LVZ9`K|` zbDe>(Vk0!T*ZfnYVtLbh(mCv<|@FbkkBJUpbK8H95Ve@yyR&t8v`bKzX z`d{+ky8c)@NwX7>xXVFSR=~?kIeoqLMr^~K2C#aKxK*RnuCsStIzi=nGg2cqP%8i# zDShd(+*-vmj(P3-RqR;Sq0#wu4NX0z4S}@f^B!WbM@oyX-lAGCPA#Je4i4OHO=uw| ztRgF0h}K7Tu=`({7C;W#C|K*I|Iw52X(#oUB`U|X*XIF;>E`63hC_(s{qZrv(6a^( zib+dRbCONwzC1WmzB7V0xPIc9ZUfH7mW!OZLVU-fzF8Y-1y^odD5!iEFP;ah0vlP| zT9`a7H!W07)Mlf5LGX;VkTef&ybs*GF213;0!01IdBBXAma9@!00^H)<}`>16K7a# z>*c^)9hZ!(kQ#$FVN5jbeG3NW=haF8IkG$&lguS*Et+MfXjMo5C@N?7ZH6lV17)>) zaUl$YcEx?$$x){(EPZ*$2*f(^Q(4>>Vod_{&=ya$mBa7H=fBs&1B@OUfHJWc%ocdp z@Qj>+9{Ys19!-bj){r=1mi-fMuIN_^62!Is-0pRbsN8)39$!ZQTscns4VA2RWHMlZ zvhxmMTg54+omtoVdn<)lr(6&JCbtqy>`&Cu0PkmZe9!6RhCv4#@{^uFBWjh9g3f66NCHM@2oE(Z9^*+1)&p!&^|?fJi*gJOq@$%#&_0reXw$K0WdAR- z5jSe8AzkzOGj7y%SBKnwk}JiWMbuSw*-iD+<}PRSsdl*D(nvqAxdOm~?7V{ZPV%|v zyGLlkVu1TE4HDpMNnF#@XO`IeAx=Hsny@KVbo;Qua`4hEwsWfY2VO(aKE3F9w{K6E#W{})k6D13g&sEhlJ9Dvi&0&>*X+)0(!f>6K<11e6a~b z)X>tvG9kXbo1hiQ%VGDcGmxq+wSse@P~T}G%G{Sr++LW!DRBQI=x(ho7#`YA;#ixU z=U*0nly=%kB)%sW!PMxadGDJA{f3wdjk-BmVv#LNF@$h2d}BJiNiK(h?BDE_I!5@E z!KPW}F{K})<$5`%eTKiIs8N!T$9&zVjtNhRp(#GdNeeei^t=br#Ia3>u5k}xf56ck zUZ-}Y!WYt4Axq>Ly$LVXNx&S5Qm0c39m8eC9NkYOI=i@mwwq;j7Em}V75^c!LKSS(1MLw#RI z*L+K-k|tD{|Lr(jCFP+na?tr!L^D=Gs{TVQVx_|v^-@Dwm&Dn?QEr>ZDg1#g9sRJz zx%e_B4drlOmH^M)`T14d!&G>((_zjzxMBY9=j!s2$f|1*aB|WRVlZjsV*O%-kdfOg=+p9=Z;ISkb`Q^@KQ?1s3S{Ugd^FSHuye_+47y}D_=$0su>*-;-)wK71Zb1~fuztgE{e0Z>b zvMHEB)oR$`z-!*mTw@~Bq62oDs)-TMNfEoVmx2D-d`)Vl!T;})#XYut@$1ykKBUp! z!A0^<&Fh7){RP+7M^X z1sfY`AEy77RlX}yThvHhk(b)<2t`c2n5q*t-P!hy@}%~xgRj}YE@;Yr`QTw8`{fq> zVMR$u%E);d2=$}bS`bK6|ds}rucb4 zZRSML&hxcr4SYU%@}qfXLo&hwB`oQQ-87*_u|iWudT0i@;3)YKqKvo`KBJ24J$gD_ zXPQwZkgoxyPN#uj{`#-vn;c>$z~DAvy;H$x;`;N!d{|j4uBQkk5ZBLtwJVvqrELHm z*RNpmZAY7jBlPB)e5I`5ATP!#r0mAxq299 zzMDVuQcigsX1AoMx9GQxGG;tn`ztnp|Lo#E&43TmIT=L@Intt2Bia3W_#GaiD8jb2 zN@IkG`nGhFuw-wtNtvjL_-OmD%OrC0Ejg=m1vAl?shgd!`1Xe^Awbwz1I-Dz+)lJ`{5^pF_~dIx zM}`U09_#%ii)(f|!#Vrhz1ZLbNTZ4QI2*?IBrdoWmTSIfaee3gu!Cb<*Hsi?(0WPb z(KCvBZ>ZS4aZ7&mRiBjyOZ?pVTfz~+TJB8WXh!Cju#UnRhN^YT(mlm5ODLr6fvW0U zx%Cxk=Um;Lnom?UujvRv?ud%1@>-ql)~+$i=2_Lx`_~276AOieKR^2$wHi$7@3F2V zV*`XuiI4&t*HaX?w-VZ+o&eK~^#xlq20mtiMBTYBCnIcrjy_#>mhjVAd8oWiE2iH?tPRIGxc%o z?A61bZ3e91V+tfdYz9%9JX7gUwf>9|iFrG{+TLdutKS)_Dg2VK>V6~x4mOlz7ylc1 z8@*Bk%8f(zWuX{bo;!!DK##Vl_6%BEqPMOUn?J;Um>$C z<=kjz&&%0*S20E>vyZit2+F7Rnj({zMlFo$BsHO((|;oCIztxF)CJQnk5pH!Vbpcx zQCz+7{^{di#G9Vel>_yuXM&4A;EM`5%PX%ZB^=l{;VmI6Dja9*AO++E`qjy-!c6j# zX{={V2o49K)fl6bbHoXJY;5FYOx9jauWdI#EJR=w@g>JEmEvXL`@!#3~?ICO1;{P+d(*Fv!zn)fU)*`PQ90#94`fG&s_4- ztLzDCqXtWFv=J0h$$+y%qFO3AVFMY*CiGs1@#=-D0E^$00_a}o?kf{Hvg6=mks|i! z^Y$7)*Y2xb2^V-hT#7OWcEWeJ`1tN-)c@ekjsa*vG2xWyuEj+cLl;C_ zPo2`kV72aBKhA{x>-^X60(gVhYnJDM?d1pLXBbmtkSzh0y9bGwZ~ZJL9^exYF@WDy zXZFleMv&=>)q#xTQl`PTC0PnIrA_^n7i#&lBSas0wLfu~Wdb5aEjzOA=ffo>?2kmc#Yv9B9%yIjRhv22&p}^yhhyi2PEi)5-rPJ7C5?zJT`~A*a ze|!qB92ozgpv#NNqJ(=DXf3?ISV8Oeziyue?~izu5NO%?c0d^r=6utljkN6H)8wfx zxokO6t~q;GwcydyyE(8m?`&mbNWigo1vP|>@f>{U9u#48XtNc&#$1^cU}2pv*WJzh z&i*fz_#C2Yh%HpZhYg&%8O+OOSsoz~|GueX*PEV^gtK=x;a(PR`8*LAooIoX1*M@( z(-rXjP^L%J<OF55lSBg$^DR?7tVTXknIgHi&ee+I+%#Vkx` zdN!9WTnadSCmc{gbL;kDbWPL1ne3u+`r0q}h9n$%{Iyjd!1()a5!#!9y<+0b2OdfPT6MQDA*=HI;aqIAAO#C@aJ@08dz@BeFX}I6eWm*6%U6y! z30|&m)aid$f!~?kmP%_+3<<2i)>u_QTpc87YKJc^gqDVMv{KVh0w3<=s;IUI2M^=Q zc6^PpW-n(jY{5m~Rn>i6(lU+w8n z&XOKL=lJvi2f#AussPIU>{15qL?WB0-|-EwKrDpZVDGq@)2F@w>6wWe0W*!oo1Q;P zijNy<6Y*H5y+5|UbwBwFE;yl49K!e;6)E`JsF zL=wIiGFJc6UbIkuK7ne5xDpUumJ5~c{6jpzz{@bDjX*brwv2|Z?=4u)#6gU-PJ|R&q$M?r@D8$(zI zyYFvElwsn>YmZraam7AM={O&OComHYlXpImue%t$vgh~t0|X&bsy9t`BA_~mk2mjj|)nR>RwvN9B=`aE;6XEh1439{`o737#5W} z`8eT$QOVobL>4>{o`F@cQtaa{>fry{5ptf6S>G`<$WN))>7Mad{AH3tPz z44H!%Ae#Iv#+*%-fHD}G)@8RcC!oOnk*;sx{*9O9%YR?mFxHzPgIUD~O|jOA8h+V8 zTWzdhn0+8WDg0Loq}O11AzZ-ZP#Ii%-1@OQRSe*|k`4PyMi5H;;?2JuQVYNC-hbh0 z7X^OT`NHWkHnTXNcRB9iqO5|^H9?ygP)3u`<){p*2fyltmk=v|?A)p(-mlXYu>0ly zu59=VvlEYtoO(mmH7AO>iT=4dy*x10vMP?%sQkUtBqKM9yx<)vB zMnZmt*va}=R+Vq~9Og5Jq=`6yu{SOC${>z$g40zM(B87*x23YREKk^>vHof2+~#SE zqFy^xmc>=EjE>1q4xxgWWV4Rylb7Sw$DD9M)c)d%(s5r(m=lT?G&62vSc9})rmGse zVT|BDT^cs+`F8KH89U#4`r*^2x|d09a5s_r`5yvbZrzNXRt8rb65qYNKSR6&UYoCQ z(siX*pU{Qvscd{5r!IVv^)Sp<;sSmdgizgf$at&NdU}g)R3fsu(r! zaPyEjC5|O`pcsL%z_1T8TECVQv@j2WF9S6j-*1V{14l$iQCEL9ksA%Tn4+Y3K6Aj> zAO_#CCbc_Et>~t@v);@@*=ZW^@zEgne|P;PK!+*uXg?noaop zb%b~FV{>%l)6ey}iZHIu96U+zmuLj6<5oe~n~%OO1pf7Y5P&X}_@FFl=@wl0g6#COf_(n$#}Vh!2QK5w$9T z#QSG>FCi{p(Ye1qgA5)UnP)14=-<%w_(wAmt$x-XQd~C!36PFDNu;EflMkGJeI=nu zl1n63l{v?fdAv!_;@W+;PtU3r>f2oilLsvcdvA>wD6S)=yZ>LzZ4UjKFdTvkyyP8v##vBBlONasN)sw{JgbM}g0|=6U9j-1Fux3nt z5Vzfv@oPb*A#22Sjuhg76NS^K@3N!uUP)I#wCVyB)%>G}wXJ|x(R-+mwVWxvrIE^te=TLc=KCaQd1ierGO8ht4w%RV>7NXHvZ9-!XZg zrC{6^IvOK|fLn7txIrPK@AV^47=A`DHlqI5=0vxRUrMZd?J3*zP)B zJ!MNDpsRB0rShPV0r_r2Mj3 zY&c2|!0~*&ti^x%iIlKk5Bahe-c+(_6g8HU;JF+=Bx3KPBfwkb-U#hPpD66j_^Jr0 zpQ)yPDHbzqeD;<-rXG)O)r@h0SjS>biZ-?%5zFcaJHU$46L@Zp&?XCQsMUm0i2hzV zJ=G-xQ?F^%*s0C7g-_A&zJ|Z4t2oLG|7Cc9hDo$*_EnFf$RL{1=Pk!u&GdR*5~t3? zmCa`VEBT+Y*BzU|hFU+K$2kp-Y%88;>EAf2NfXAl;5S$J0lvdK3GIsE5#9-d*UE1- zkd0{mrqFnDjsJ}@0~jC(VQo@x;yxk`DwhAxsQlkKwy8Bats6M8$G${senSdDfPswm-{Vd%NKo;mP)RQlc5*Cp{W2kgID&Qh-yFgoxGpB<>Pm3E#io2Y5HK-)5=|^v!|II ziy?e`H3p6fkubjq+cU|?E>#bNrq!_oGPD#iiTp;ZJ%q2jMrmEpI1+U%^_h$5QYHBW zpS4CjKjV}<_hs5Yf>Uwps1BE$_v3fIXp4bt`OjX3VIyg7vIKXc<{MFOXG@v6$kinwHe%M5NrZRwQ&!7XENHF>HxU|9Nij9w!ecyL5$+(yj1@N0{^p9Zd-g_Rv!1hh~U2_68|fb z@&D9kE)~ajk^t^PU%iMole~S?rQ09zL$18E^wjU}KmLA1;-!yB{3PzyUEbt!g8h}HAL$TwDO`s%cT!9Xk7tu zPJ6uNLZm8_mdKh=!zC+2VoOlI0!{P;s0X4w+aOMLfTFC$Bjx z96%eMsB9eV3z?j#wpAFxx~PmL5CLJy&~c)FkE??yzdQ&A{_V+K2gJEss2K4v8NWs^ z;8h#$`SEwGFb3STS9QC$h7PT2Ril&C!uk&kjA*LKlh-ETNKNEI6oYl1MSn{Uw0O-T z+K{ezAP*pz3Xy|Qq1j3zjCkE^H8=#VLL?D36Z=5k$YFRsr+S9hyjIjo0Zd;&myH~6 zlL(iau}!5HP8AQAxzK=@#ms&x1pCOn3p8+)Juxj}+P7Z#Mh%JB?fnOo>J-9AxfOmH zH1{T=+AG16-}gRt=LrI_2&S<8hr|Bc(K3A{364{iwCi-}{7eH1OnQvAk1xr9G(%Z1 z_h?*)Tj_oZacE}a^WH5Vd4%I-#GnyMm{3n@C@ZdnD{5rE<8vH(?q#K$dZq3fAqN(F zT%&K!N(;jdz_4}G9mQAGym#}8@QWfO?*^BQkMDdO2I`6Zp@`@;4OWb=YXewddX1=n zMAZBN=x*DuY}EwZM@yZ!s16t)EI5r{W$Y*ua*Y6G@2u2JAoZ@i@}TTrAJgDFgWSg) z8cpMj`iLWOfIkh1*zyhId)Hwu52y12q-cWckm*r`7pU_^^c?A%6SxiuO~7-p=Q1^Q z5raV|)$@zF8S?+&M_2o0nxE{VM(L(J=EZl(54@&*zUE^Px{`|=c z>waJSJh6tVz_5+sY#Xx>yds(-eG-pAi!t;r12-5?wt;$F7!G62borWr*YJ@lX(63_?3m9v73&kC9gtqZ0iGPE7UX3C1=>=$FC{ufCMvVxl zQoO^n1bLp1-%}K_NtYzAsqW8tFmvIJ_dzlT#>2XP?0AE@-A8E{yW70cf+{776JjO*T)Znhuccct5N^gNF z68~iZ-tyFS1`QKiJ)5pQ)hkrFE{Bo&<2+e#=vncxce;TuKY63g0#_ZEp5A=^EmzMA zKB6#E&F8E_QB*CW{B9B_wa<)Ryp}?Y{c)j*@cHs49fBoRQ9;G+_litBGBKoyg0dZqR1 zBz9#VctP{QucmRzQq$|dRP#Z&XsW)`5QVDx@Sb2_9lbg$+f)0)W~S(hO?NzztNm6= z4;xUsE)o&&6(^kLJ6gkWHfS;CXZYsOd}VSA0Pdd^G0ESnUN|7R_ZQLbis%to(iC%WKA z9la|0OfKd{_w5nfE>Np}Q==GGV}An0cOw?^8V7MKZnOr6TQS?kx6alG#}y0Z7IkX% z9IrCY?PokCg6w+Y0$Iu(efHEu9}FYI8qzwkjbE~)KslYZHMsiW^O!lX<|!=mgy=pv zr(%}5H6Y89asjxB?`6L2Eez4TQnEJ&5(pjys$xPOiHs2#Q@Jj|C<&oe%L_lCgPNBS zi(A|P+{R{xcfg26q;d)?r(K`&m2B17XQGkEM3?0K+Mf15_Nagp>E-qSP_GxXEzn)k zXvEm-8sBkoxK711{rS^LB^O{L+tdckca&rTI?|z%L9r`BM3hvx0N>W>O4=-6U{w zH2!2eJ!Xc%h)Mznxm;%(`?lX+PgPnH5}JFAr5W&ENuD&(UsiK=%+C_7YGhy3(P|EBt9PjhSm%d_{GyVdIYOgo+_RHBB_~qOgMJk<5&UU>Q z3?$Lek9FVXgJZIVfRq%!rFTn4HnuR}Jx za==SeQo%K13$GHVjuKOs--_&2e4C!4%G6&%)-c(B)cc|JoqBOS29D5d5hczPr{0)) z@rbxtcUsx?)DU$)miQbD)ZYD|!?^OwI~KPuiKyaJ8*XipVZ(VWlzSM#Bg`~>F2}B> zq@=~O%(zGbd@|wV^a!LZvi<*qSNorZ)Bl|J|6xe|4^;n$(kOt-w|Y#k-Lw=7 zeVh*gFpA$d)EsFER>tu$WwnC(e`24V6f*1afT%Rg?Z$@|%wuTD12qN&L&W@`BK zo%@}grJV}JyRxsu-US|7%l5jzPmPK7Z^SADL|CwqTP;d7Iq)61Y(e9XMVzA@z*12+ zV|6QQuM}TPMsgmh5-ROncsz5%G({Cy^7c|v0KfIHs`%Z3wU4kyX0a56s<~2WDOHOI zLcr0OwRWT8VGhe3TH3LkAKxg`)EE#42K-fUCXBTm>rhr<8uXM^)+S;3fk7~%-1(ce z6F^u=R*Cc_b4{f2Rk?_zClQk_(cP$k6Ur*C1X9SK)FW)sO^H6 zrOuT-1by@t3;nRs!F#<)i~z=L7;mb3$>)Nn9{NcN3Kmqmgw;iz;^%dYFR*4~sjzTs z&aoT;MUgUD*Ci!yzmHZ~GIIVZ2Cq5d?+7ywF&hbd%WC`crx3p*oboqlNJABUMVNXd@c0PG3XEIc9_ zI3c%bRz<}={E|eWi$guKdG>;gL-sG{NpEDK*)d_u3`EJ6Jzo}#x=aG))a^pyc>~h2 zd0p!%k0n?*>sibAWc-2gHS5@y`3R-A#q8iVTb=SR zDi8eB#XCq9kKQ+f2WOMKC z`(aW%{oZ znA+Mfd=F9ojU}&_)U)->nkhBTtAvOtAi{ALD>rgk1K%6!BLma8Rm^@ zkqxv@OW)yG|LDc}`a%Hz1XeQBNO1zY-XknSwnRf9Z)q)L)v^qB?;?=t+eIJu))!pdUETG8?*9rSQ|&RSTGN=peU$%`RS$onVF- z^3`hUsgjOJ=oavjIQ*`vh-U7Hy&nMfn^^kl-`NJA+4^$<{?t?H=@B0&l2#U|i9xbt zuc}ABP`O|dxthNiS_3d+bA?K>8iR@f&lyUuKZNzH(S~keVZR^+hHgK%Sh!x#021AT zo?2Xyf0{_G$ajA$5fc83>h+rD_mmj*acD|Keas7G(9lmkd?mvWz8=Vpoua*@{}_o! zz>`H`)lwT;ksX}JSThEkW}yQjkp8_BNK8q1C0$eGfO(=uDujibRZsPWS z9>$+w%Sk)Sf!CU(WYlA$f4o!S1Wow+^Xq-NAl~@xvl_M*#~74W`71hw0nUtd(5vV|aJe$A8}wFgf!o`QJyl<5%}A~5F_Wc_2E~Knm+!l%C;G0rD?f_ zp9c4f4V_(50fh_J!`y;gfEGT%Mo%oS? zX7x{^MT_=No>s6RU)-keulBecZ^=`|TYW`Xdy=;lRh7u`E( zpBg6xc;AM}>ZD_sJ@+0k@1_Ly+Z^;D2?$(_jnP-)@2_)bzkzc&E8Dir%^6?K+&Rp2 z6?3w_r^($CM!Ob{tNy-f6}3dV@;iT0*fRaOFtdI|LW|0VYeqY~KhmoTTp`!hKTWYV z%RH!7Oa>X1_+Da&YI{Q#zl=}RTAK0b8nf>)ODi^*PIs%KGdHk2c>g~!qqfO6sgv-E zEAxF4P6lNwAsGgXV=$Jv8l|`UZ80h5<18sNzrh~?4U$uKlM(Xi_kNPHINngLOjC9Y!uGnW%Ytj7z39yXvu${M%Z~RQG!X+Xt&3z*xoVWVjsBDR` z&Kg}4ij?cxGkop8*cEY3qg_4j|9M`(YjVL>UX`%KGE}Akp1$;O(yrW90bLT64jZ$6 zRPD6+ePdqq$bCe1e=}>U*d)@A!V~JqAhRXL-83LpMT?jy3=G8$Ko#68>+?A2)tD;y- zmKZ~_Y`KHd!`sQ@8m@%>)U`Fs zCn9ezOV3!=%0ew)tRRe;0-x10x?8*uf!WD)CMKnpfl=UhW!{#`FOkOY3(PE=w<=Db z*yjXA+L&Pn#Bm&qefv9FVs)-)Tha_52+{rT))M@`o!_J*5KsN->;K|D(#H~z%VM?j;0AIuvDCjp-xdfeN%+^S zN|=LiJ_`U(&ra#uQ`kq6pIQhX9Oo`jD@dXETLmca1T;Exihg%{XI@3KU|j^y&;E#9 zQx0Ulm$l5#$32lk1RDAOrNYEiZ6DuZxK+GenW+tsk_wVUxX|t%U{9zdyX416?=|Fo zoC+q)26z2c$0?HsaeTH`h@_<#$T&7YwDUO5PrE@B_v614K3I-u-t}l+;#$u{EZrsR zd(?s@296wR78L;Kq-pv*Ko7_afUNn9aCr$6C*Ut3a=k>bUvF)i8num%`b56ao8|8( zw8FcMHZ(L)6tFTjVC|DURb9WzB~q+-dF=De8RfZA5rvo_qcUF-_%wmaF&^yMY=2~D zGiOqJ{KP6{y+#9_QZn!{e)&9{`K_)NK5k_le$&WUyaoLcZ#^@?kd*>ApjD~E*wu%9 z=XYNAolx;~DtgDZJlQ6TnwK0xV)#F%{}|1J>%z^!tbwqzy73!IvKw5DjQvxsLD{5hh8mbW&eB{jZ=OARl@oM27((r*D`QvJn7JhtbUUoh_4jTn`7;mgD!OHB23* ztW+N5^Perehy?wd7RJ&H@1Hd&B4(?>ZL5FRW*tDcm~H+ZHgL{b$HfyZhMP{aCE>5< z9d z{CFA` zsD$zA-I)&^_FUbQo106|7#W4R9$!8a*OTD`$3o-&_xlZ|?bXI+Cs9{c&qJd-Uzt_G zMtK(As;>Boad!R5{1SU@-@hDSCZVWC4_@B)@S*syLflG!dj71orqedH^Cek!V?qSV zmDNbcd4tWOF{bT8Z|l&)KKS=pDv?7}8%Np67?E>8JoPxGg@Od=r^_LX&6$I$#1dXM zr(A|cM&D{B!sox4%7z$3jMx;JV#|u$s5_dF6`$u(-QNvC9ltqW0VYBv_gMFBD!6?1 z&U5R_p9wABZr3R=91Z`R{t%4AH~LnAjAvncy({MZMta3Ne2U+~8)@Z^JqFO0CbuRT z2>L_MP1qW^ z_B^N-`ytTHi&((e+ODD-58kJ^oZ4rNCDILOf!_oy|2lg8`aHi6@hU%Vuc>VeqwO|q z(UV7#MKEIO88g6r8?}nEeJ3ex^);UJ94x~qLi(G;&+#5jJ{ghC$!_5+`cj;1Uek}F z#z2JUS(%`dOciGZuEMMw_%is*0+jux8{#88C-dc`clBys&~1TmS}-t$7f=cH-DWpr9#dVp0^pFopZe52^w+Bz2wHvAmho3PTbis=Y;^P|Pe|tf z`CowAsA|No;PLba=hTQzI>s-NbCHQtZ zO1J}`CuM*V_LL#^i#_9vU6MNrotUUoz;7qTM3ulCX!bVXjs(7Y>hx$C9W)AKH{Ad}FL2|&gr&B_m0(jxFUS_2ajhI#E~_XeCJ#(*JRrHintHyQ3`=* zLh@AOLn|o5kag^&EpzG+;+3;_wwnNU^vp(%)Y2M5nj4Z|K@7c{yOziee*mp6=XyO| zV42m^a~kPV7TrMYXtZj9po0BPRPyJIQg&$aQb%^Y7?fXr;wOo@p3#khTMrRN$g25k za>)bm1Bp(MoR-v<|ATo^lUca41@1#- zVwj%PP5r4ie8;ng;UYDJ7q*g@<;CCH8-ITPB&IIl0rdyNIN2WAxmOt~KFbvRSy9@) z;vCCwA=sxNe#RnHdl(TL8!POLJ2z!ZLKsJgPmmzOK%F^5(g`+p$;f6t+DMImVp3 zv>vy6q-%bXKr>qM^=Yy$ou5cLE%o5%xgIQ9NjHHoJCWm=29tZZqI|EpU)^Sw-d1~1 zAXchW3!s%dT`hLQE%ZLGXqQ0JI1-9&-oGEbCUMMH_!orw)q7XJPJU<^cGz6xH7Piu zEEVx1$A|14#=mG)hRw3X7S+(UF_CvrS+3Lfet%aUi-rc z!C9tVMVNLq#0~GYw?|=Yg2o)MVHJRmAKRYSE*s!oq12iBh@!5>1ZSL*%H{B@@)$Ty z9;|NGY%_b*=7EcF7_>YX|Kvpsdv{3IxJjJ3=-n>(B+M^)i(LLveOtuM%~_jc4@b^{ ze#o#}`YR@&6AS;MtoiEul7c!8qdli%j{8NM1h#s&42oA?5-GYkw~zD9mEx~Q&++t` z_@~>ar?1|ld>(Cx*kVQeYRL5(8d=gLa_!h2@E%{l`A0NSb!~N)gP2wiYuIOae1o8; z`Gl82*2zbag~kz8mRWZ7^ob*TTaEQM*ID=-k?Jzn0B&vYY6H3$OSLf1dUyr#DXz{7 zsJg$K%`TDy+rg1KWaB1|5Wmbj{u9=t4OO`Uf?knxts4sIp2*Z$G4YlWRNEw%`p2B0 zjQPN9$9M3Sd7$qnJuRvybAds+CWZCd3$C_33;p{69k9Pz(O1QaZLPSgZ61#B*A53l z*w3e-0(nR7t)eQL7i;#GFV7fz_53anko^Ebqjnn2^z-Q3iFO|G4?jwR9UkXZebp&a zmCBzdqI^;>?AO;9{61{D7CBL^3T6xSKK$_YqsV;?JAwP$mJdJVLo%ytHVL)!O|$n_ zH?s5nbO&4Ujvfxvtiqp``c1N^tpB!$;*`(--;-$lJKWR1GS*h=`x7DO)>KkP*cgY7 z?*A6W_^$$GZh9P zCjj~>899;k!^{^iEzSvOJY_l|_|&buTx4Z5vQ~&_Dr-Dgd4w{S{(-70&%;tAk#lPs z$7WsErl4x&tA5I%MbNUF1^pp{^0Kl1)O^XVHz^=|nhEc&ao9aHpi+|bI3Z`~Q`)EQ zk?&Q2mDnwhy-G<2mWDRjWlGtQOB>7Hy*CT`Dys+?1IOQO^FAJ!kCj!!FFthhEhn7v ze7VkLZ|fnkI`o;A&j`?38t{dF%Ld7$>J+~(8GpG)qQPr)oVR^Z|#v1_$q068ULkU&Bp zMlax51dTccsTVlaR5^XQbPv*kg0@7zW%cIQGV~tphaFxD1)LuvzGFmJ}&h`*^LZL3Gce+ChuwO!=i7$CkfuQ;W!yUlxkKeE(KrPlcVU) zhSxIZW$A|c8ivqj6Qb4qO}=2PM5B7b7cL2M3!pu?Pjz_ZZJ^mU^aYB|rRp61PY~YO ze@qk*Jly!@y638kwk&dMQ|mlN)wE5k!D`ROygd4r#(#|?K-o{#qij(JA*=DldBz`x} zIU~19&vHCO4=$&V)#2$m)=K<_p3g9a{FE)M%-egjDaEzv9@XtPPYcS)h|)#RySZ6u zQ51smWp70SK_1EjMhV}?o$e>2H5E6^7W1AWScz=YGaH+np;jZTIPAqBTkG}fuwd$|{* zn6!h>p43X@DlPEt(C7@7ueUv++#)2$>Hj)6fAcP)NZoePNHJhc-|tx`gSNn%Z?hK7 zezuK!q^I0??o;<~oe1xjpN)}izxF4KmOab;>}1yb$(kh@Q8RPJy{hcSULdj5Gg?{? zBha#ygF-^(b@E60c9eE45032uZN}=9Z_mW-IK?FCWmjdLY%Qa2*NoP6*FLG^c%Xu< zGv^I7)Qme@9>(*-f04h86as$pN9Q|FO8#+Kg9Zm+L@1Cr9t=(i>oce#7Kwl?JeW-> z7$r($`;_+y>5$)f`U|AhZ{=u3z{SLB2WiKp*R?^qN?u*{Uj1d?2n)1)bjwTX=tb?t zl}-l9le*urTeh+TQx*$_DWDqN%rKP7Hp|B|mlhl_n#So1Gg*!Y_xg;HCp(W+Ku%pw zlvd%gMz$O=in}soc+SI!f||H!B|OzZQn}2*EjeYxfM%&^1DP1Db>q&g#$P?pDPdVG z^;}#FDf1i_L&RBk3yVfNFC`k9rFRkn0l9ARzm!DmirD>z_xtl9Mi!J^ts;b+T|0>)qP!ekI45koF|{>(ob;Cyn?;DwHI;=h<57G@lwkd-yRz{0zoPuYG+WHCxWImo)dm zwXH0PgslU@ypFi zdxw;pNgNeUj+AZrk0B-KV@(*Og<+X-?hyQ4ndXzvS0E7lQqxnk=Aa|RRL&TLvo7mh zC$hy!_BtVNvFHL39c(8^NE%7M{W`>$+!T{X=P&xqr#QZ@A?;gcfDd+H+lcUC-kLQF zy+{e57#sWeEBOn5kCc-+kS>L~9HBy$HL9cO@&?T(9FZv@En)1}n3>FG2S!A8znM}j z{YNo=nprnl~)Ku3cVtoKFLy)lP0i`&EgwDoYoVA6uw|(0nYc5b-)& zTH?puK?`NwLewF7UO_xuAXrpqzfDrKB`!V*YR}il&BF0Y z3+%}ytOf^}v_{jJ1nm$)@678GfexwVL_pl#LbV6wQ7sHy?1=s?bs|H1?H+Y2u+v}~ znQD=fuwu?;!_X2B=lmoVh^Cxe176H^DJIBv-NpDH zJaEpvCCLnV*(HdBeTBHf!2Em@wB01&O^6dBD?RQGMUI>Bmuh5p)ibmY-hAM7y4Nd! z?nVS7zTCI46E7{ScR%g8(cK1WMUhR_pPS&|W#G~{A(AWsUG&EW%Y5eG>f)SS7hTd2 zFoCb#Pge=UgB0Ipv9krZGx5A05>T^^0R+a4|BjIO|8Ty+V!U3} zztj-(G=CWW;=^@klLoqMeb7wf|77y%rJJKL6%OjiQGdDmQ11b+L0L4dd8LNIHR>kb z8`M<`S`I6Vuwq`5-#8qZ(_o)tBk`jh_ICxSI4BU6oMV471UA_UbmJ zU8L&hCFK71SM!Z_?>A8lz@IVe?QJNK+;L(ZN9v5c_ogz8I)d07JJt$LRMiHZx&m~_ z3}f`_QKxxq6BMVgl=KQ`7Sh5N6aU@|N;|L7oDh8)y}ylEo)J4{12-SSdcUJq$>rNb zw|&{z*uLl;;?njjPQjSB6S-myj9R;c0zUBE&(d6oK~_dBp);}U0lhN( zI1TH{;rm8DTfqaJ62%07xERYm`jgbc_sN2q`gwomZs_rWvS4&%KbL3C(#-7kszGc; zNcdIC?onH`*fkeHmXbabKO>|+c0+x+2g)8vUAVa)`TKVl)`aqT3>U+!oo3cc3W7$O zMFL*0g%GbX{9-27Qc+bIF5;>~JiF50L0&$6w4#?RW-o+}QApRLi22d)jjk`@KHuCI zq&8XOF>^@ za8knld*=+`kh|@X8DMC)j&GAbcEXD_M^ZzY%fU3y{jSNNLup$!bYI&FcdG+>zG)L1>gu+2Q?~Nnl#p z>_Q3aUNvdI1plCNa4h-`o#yW>a%T3L&5i97NlVsa#`8dG&Qw|gk%USJYY}O6@Jab4 zSlGE5zJ&FX5xf8a0WYxo-j$vLk2jqM*zXTXALqQ0md&zTqta*+cpoRRb^jlTV6>CV zPkIGP(o@rhZ{5?^?Qa3vQSMs~+gJW84HrMjO@jhHq_4&VspE=-gqR8VsuiDE)}~Gn zpfX@q4;KX-Hxos{=!Z~f#^1wsrM}nTJ)x{{i$w4>HB)V{lInk6uq#z6{-LtfvFj_a zw8cCVNU^81kXcPt56=G_%LQ&e!ZuN2Vq;qZh0#f7=6#@3cFA5K5~k9D)>S~-fvyRw znGjEZwXd!gEW?#X67yne@`Q4WjL|hU4+(!_NvVKAu=YU(X>Ceb6rJ?j6bn-J9;adV zSOMXy?E^e1RrQ8<3-KhF9}vEV7b`xux-F1|Xa|Jlg_Wbcc8x!F- ziBUpKRwBH#@9OVLrm(Hx_&a3#$~%iWUYPZP;@f;MMozU?j1ZF+Iu@>$~N mMk`=i=`8<(-!k`nC6AbwP literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-render/render-08.png b/content/en/host-and-deploy/host-on-render/render-08.png new file mode 100644 index 0000000000000000000000000000000000000000..1dc75ae6c5dab4fad21e867cfc8abc8a1d102a6a GIT binary patch literal 5987 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 NG1N8Fsnl{r{uj+DOXvUq literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-render/render-09.png b/content/en/host-and-deploy/host-on-render/render-09.png new file mode 100644 index 0000000000000000000000000000000000000000..48e9404a92e26c9bd4015dad0ec09894ae04499b GIT binary patch literal 8057 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 YC_ZhQXEr&1XM=dk@)~kwG8WMP0wAb>7ytkO literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-render/render-10.png b/content/en/host-and-deploy/host-on-render/render-10.png new file mode 100644 index 0000000000000000000000000000000000000000..4df0dcffdf10b437aa1c25475cf665a26dab1e5d GIT binary patch literal 7484 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 XdmHuZ@T0Yd9}IxCIUHJV>Ye&8_XPN@ literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-vercel/vercel-02.png b/content/en/host-and-deploy/host-on-vercel/vercel-02.png new file mode 100644 index 0000000000000000000000000000000000000000..ef3a788aebb93899116be7a70a99270a8cd49f48 GIT binary patch literal 7228 zcmbt(cQhQ%*EfO?Er{Mrl#pmawCF^%)q4%X>Sc98^iH&7qYG9SO5)uWf~fq>FH@KonfF>i>pp65D08&tY@rN>o%-Wo6}?H*bFQ?8o~I*k-I48X8WI98~8o ze1h&NDJc<~js^z@!(cGgj|*rtdSGCnV;a4+iXQ6Nv9hwdzPT$bEKEsBftD>vN=o*% zZUtC(tgNi8?_WTn(8Zl|>A*Q3A0H7Bk=>1xFVW)#Z3kLfTEE7QsjSD{a@L0zF=uCI zB_$=xbAR~x`FnbL4)@PuDtFAy%|E>FPDn_Y**F^;8%s}5H%M4o*gmVTum297Lm&_i z4h|wdGhK}vxw*OCChf<^#}N?`9v&V$J3HSxP?+uqU#bY-&x6DT5#L8)A_$ax>*uv(?&gS3D%uE#(6)`cf z`jSO?dHK7$JMVξ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∨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 BE>_1-`De8_j9;$!u`0Syp}u&1X6TD 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 literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-vercel/vercel-05.png b/content/en/host-and-deploy/host-on-vercel/vercel-05.png new file mode 100644 index 0000000000000000000000000000000000000000..4ae341aa59b5a1606b13772ccb11e3f872dfec82 GIT binary patch literal 5822 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%0AESGv*4#}J3TMqk^z zmYgAuwFwkr7N#FyZ{T&l{Y%QJ;aY;Ll;KSR0!o*EEqD0+r02#Gf0yzZ){o&gsHfrY zVp}Snr?vtL+hv&4zCSQWt4BBQ-2c>T0+)Grabv?Kvha!ZAdW)b%S&70! zJeBIxrpvR&upDdd=A67mZo`Idh_-eD&lYz yr?aCr<}5RG5vQZN_#enh|EDbfM~vDFvW&cR=0<99=&8U)1wPbKFH?Q-_P+oC0w%!# literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-vercel/vercel-06.png b/content/en/host-and-deploy/host-on-vercel/vercel-06.png new file mode 100644 index 0000000000000000000000000000000000000000..3b34cd44ca06363fba97ba7a07bdb0c674b1ea2c GIT binary patch literal 30267 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 literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-vercel/vercel-07.png b/content/en/host-and-deploy/host-on-vercel/vercel-07.png new file mode 100644 index 0000000000000000000000000000000000000000..ec4355b858ac2f6b1ba1400581aeb9bbaf4680cf GIT binary patch literal 8068 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 literal 0 HcmV?d00001 diff --git a/content/en/host-and-deploy/host-on-vercel/vercel-10.png b/content/en/host-and-deploy/host-on-vercel/vercel-10.png new file mode 100644 index 0000000000000000000000000000000000000000..5fdd0aab6533ce3e2788c68b2c4b5bb705f0d2ca GIT binary patch literal 9097 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 literal 0 HcmV?d00001 diff --git a/content/en/hugo-pipes/introduction.md b/content/en/hugo-pipes/introduction.md index d1b93094f..fa9493f20 100755 --- a/content/en/hugo-pipes/introduction.md +++ b/content/en/hugo-pipes/introduction.md @@ -63,7 +63,7 @@ For improved readability, the Hugo Pipes examples of this documentation will be ## Caching -Hugo Pipes invocations are cached based on the entire *pipe chain*. +Hugo Pipes invocations are cached based on the entire _pipe chain_. An example of a pipe chain is: diff --git a/content/en/installation/bsd.md b/content/en/installation/bsd.md index 2f6519e6d..a4f31bd5f 100644 --- a/content/en/installation/bsd.md +++ b/content/en/installation/bsd.md @@ -66,7 +66,7 @@ doas pkg_add hugo ## Comparison -||Prebuilt binaries|Repository packages|Build from source + |Prebuilt binaries|Repository packages|Build from source :--|:--:|:--:|:--: Easy to install?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: Easy to upgrade?|:heavy_check_mark:|varies|:heavy_check_mark: diff --git a/content/en/installation/linux.md b/content/en/installation/linux.md index 591bf0818..babb759ea 100644 --- a/content/en/installation/linux.md +++ b/content/en/installation/linux.md @@ -174,7 +174,7 @@ sudo xbps-install -S hugo ## Comparison -||Prebuilt binaries|Package managers|Repository packages|Build from source + |Prebuilt binaries|Package managers|Repository packages|Build from source :--|:--:|:--:|:--:|:--: Easy to install?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: Easy to upgrade?|:heavy_check_mark:|:heavy_check_mark:|varies|:heavy_check_mark: diff --git a/content/en/installation/macos.md b/content/en/installation/macos.md index a873b512a..0f1fc0d27 100644 --- a/content/en/installation/macos.md +++ b/content/en/installation/macos.md @@ -34,9 +34,9 @@ sudo port install hugo ## Comparison -||Prebuilt binaries|Package managers|Build from source + |Prebuilt binaries|Package managers|Build from source :--|:--:|:--:|:--: -Easy to install?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +Easy to install?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: Easy to upgrade?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: Easy to downgrade?|:heavy_check_mark:|:heavy_check_mark: [^1]|:heavy_check_mark: Automatic updates?|:x:|:x: [^2]|:x: diff --git a/content/en/installation/windows.md b/content/en/installation/windows.md index a5920d45f..0b7d89f6e 100644 --- a/content/en/installation/windows.md +++ b/content/en/installation/windows.md @@ -58,9 +58,9 @@ winget uninstall --name "Hugo (Extended)" ## Comparison -||Prebuilt binaries|Package managers|Build from source + |Prebuilt binaries|Package managers|Build from source :--|:--:|:--:|:--: -Easy to install?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +Easy to install?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: Easy to upgrade?|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: Easy to downgrade?|:heavy_check_mark:|:heavy_check_mark: [^2]|:heavy_check_mark: Automatic updates?|:x:|:x: [^1]|:x: diff --git a/content/en/methods/page/AllTranslations.md b/content/en/methods/page/AllTranslations.md index 62117b429..ed92cd482 100644 --- a/content/en/methods/page/AllTranslations.md +++ b/content/en/methods/page/AllTranslations.md @@ -1,6 +1,6 @@ --- title: AllTranslations -description: Returns all translations of the given page, including the current language. +description: Returns all translations of the given page, including the current language, sorted by language weight. categories: [] keywords: [] params: diff --git a/content/en/methods/page/Data.md b/content/en/methods/page/Data.md index bb88dbde6..387422901 100644 --- a/content/en/methods/page/Data.md +++ b/content/en/methods/page/Data.md @@ -38,7 +38,7 @@ content/ ## In a taxonomy template -Use these methods on the `Data` object within a taxonomy template. +Use these methods on the `Data` object within a _taxonomy_ template. Singular : (`string`) Returns the singular name of the taxonomy. @@ -68,7 +68,7 @@ Learn more about [taxonomy templates]. ## In a term template -Use these methods on the `Data` object within a term template. +Use these methods on the `Data` object within a _term_ template. Singular : (`string`) Returns the singular name of the taxonomy. diff --git a/content/en/methods/page/Date.md b/content/en/methods/page/Date.md index b6c2042c2..21bf03445 100644 --- a/content/en/methods/page/Date.md +++ b/content/en/methods/page/Date.md @@ -29,6 +29,5 @@ In the example above we explicitly set the date in front matter. With Hugo's def [`time.Format`]: /functions/time/format/ [details]: /configuration/front-matter/#dates -[details]: /configuration/front-matter/#dates [time methods]: /methods/time/ [time.Time]: https://pkg.go.dev/time#Time diff --git a/content/en/methods/page/GitInfo.md b/content/en/methods/page/GitInfo.md index 5fde05b07..2b620103e 100644 --- a/content/en/methods/page/GitInfo.md +++ b/content/en/methods/page/GitInfo.md @@ -5,7 +5,7 @@ categories: [] keywords: [] params: functions_and_methods: - returnType: source.GitInfo + returnType: '*gitmap.GitInfo' signatures: [PAGE.GitInfo] --- @@ -16,7 +16,7 @@ The `GitInfo` method on a `Page` object returns an object with additional method ## Prerequisites -Install [Git], create a repository, and commit your project files. +Install Git, create a repository, and commit your project files. You must also allow Hugo to access your repository. In your site configuration: @@ -117,6 +117,34 @@ hugo --enableGitInfo {{ end }} ``` +### Ancestors + +(`gitmap.GitInfos`) A slice of file-filtered ancestor commits, if any, ordered from most recent to least recent. + +For example, to list the last 5 commits: + +```go-html-template +{{ with .GitInfo }} + {{ range .Ancestors | first 5 }} + {{ .CommitDate.Format "2006-01-02" }}: {{ .Subject }} + {{ end }} +{{ end }} +``` + +To reverse the order: + +```go-html-template +{{ with .GitInfo }} + {{ range .Ancestors.Reverse | first 5 }} + {{ .CommitDate.Format "2006-01-02" }}: {{ .Subject }} + {{ end }} +{{ end }} +``` + +### Parent + +(`*gitmap.GitInfo`) The first file-filtered ancestor commit, if any. + ## Last modified date By default, when `enableGitInfo` is `true`, the `Lastmod` method on a `Page` object returns the Git AuthorDate of the last commit that included the file. @@ -125,26 +153,32 @@ You can change this behavior in your [site configuration]. ## Hosting considerations -When hosting your site in a [CI/CD](g) environment, the step that clones your project repository must perform a deep clone. If the clone is shallow, the Git information for a given file may not be accurate---it may reflect the most recent repository commit, not the commit that last modified the file. +In a [CI/CD](g) environment, the step that clones your project repository must perform a deep clone. If the clone is shallow, the Git information for a given file may be inaccurate. It might incorrectly reflect the most recent repository commit, rather than the commit that actually modified the file. -Some providers perform deep clones by default, others allow you to configure the clone depth, and some only perform shallow clones. +While some providers perform a deep clone by default, others require you to configure the depth yourself. -Hosting service | Default clone depth | Configurable -:-- | :-- | :-- -AWS Amplify | Deep | N/A -Cloudflare Pages | Shallow | Yes [^1] -DigitalOcean App Platform | Deep | N/A -GitHub Pages | Shallow | Yes [^2] -GitLab Pages | Shallow | Yes [^3] -Netlify | Deep | N/A -Render | Shallow | No -Vercel | Shallow | No +Hosting service|Default clone depth|Configurable +:--|:--|:-- +AWS Amplify|Deep|N/A +Cloudflare|Shallow|Yes [^1] +DigitalOcean App Platform|Deep|N/A +GitHub Pages|Shallow|Yes [^2] +GitLab Pages|Shallow|Yes [^3] +Netlify|Deep|N/A +Render|Shallow|Yes [^1] +Vercel|Shallow|Yes [^1] -[^1]: To configure a Cloudflare Pages site for deep cloning, run `git fetch --unshallow` before building the site. +[^1]: To perform a deep clone when hosting on Cloudflare, Render, or Vercel, include this code in the build script after the repository has been cloned: -[^2]: You can configure the GitHub Action to do a deep clone by specifying `fetch-depth: 0` in the applicable "checkout" step of your workflow file, as shown in the Hugo documentation's [example workflow file](/host-and-deploy/host-on-github-pages/#procedure). + ```text + if [ "$(git rev-parse --is-shallow-repository)" = "true" ]; then + git fetch --unshallow + fi + ``` -[^3]: You can configure the GitLab Runner's clone depth [as explained in the GitLab documentation](https://docs.gitlab.com/ee/ci/large_repositories/#shallow-cloning); see also the Hugo documentation's [example workflow file](/host-and-deploy/host-on-gitlab-pages/#configure-gitlab-cicd). +[^2]: To perform a deep clone when hosting on GitHub Pages, set `fetch-depth: 0` in the `checkout` step of the GitHub Action. See [example](/host-and-deploy/host-on-github-pages/#step-7). + +[^3]: To perform a deep clone when hosting on GitLab Pages, set the `GIT_DEPTH` environment variable to `0` in the workflow file. See [example](/host-and-deploy/host-on-gitlab-pages/#configure-gitlab-cicd). [details]: /configuration/front-matter/#dates [gitmailmap]: https://git-scm.com/docs/gitmailmap diff --git a/content/en/methods/page/Page.md b/content/en/methods/page/Page.md index 01abb3103..b7bdf3558 100644 --- a/content/en/methods/page/Page.md +++ b/content/en/methods/page/Page.md @@ -9,25 +9,25 @@ params: signatures: [PAGE.Page] --- -This is a convenience method, useful within partial templates that are called from both [shortcodes](g) and page templates. +This is a convenience method, useful within _partial_ templates that are called from both _shortcode_ and other template types. ```go-html-template {file="layouts/_shortcodes/foo.html"} {{ partial "my-partial.html" . }} ``` -When the shortcode calls the partial, it passes the current [context](g) (the dot). The context includes identifiers such as `Page`, `Params`, `Inner`, and `Name`. +When the _shortcode_ template calls the _partial_ template, it passes the current [context](g) (the dot). The context includes identifiers such as `Page`, `Params`, `Inner`, and `Name`. ```go-html-template {file="layouts/page.html"} {{ partial "my-partial.html" . }} ``` -When the page template calls the partial, it also passes the current context (the dot). But in this case, the dot _is_ the `Page` object. +When the _page_ template calls the _partial_ template, it also passes the current context (the dot). But in this case, the dot _is_ the `Page` object. ```go-html-template {file="layouts/_partials/my-partial.html"} The page title is: {{ .Page.Title }} ``` -To handle both scenarios, the partial template must be able to access the `Page` object with `Page.Page`. +To handle both scenarios, the _partial_ template must be able to access the `Page` object with `Page.Page`. > [!note] > And yes, that means you can do `.Page.Page.Page.Page.Title` too. diff --git a/content/en/methods/page/Paginate.md b/content/en/methods/page/Paginate.md index 7792980e6..337811240 100644 --- a/content/en/methods/page/Paginate.md +++ b/content/en/methods/page/Paginate.md @@ -18,7 +18,7 @@ By default, the number of elements on each pager is determined by your [site con > > The `Paginate` method is more flexible. -You can invoke pagination on the [home template], [section templates], [taxonomy templates], and [term templates]. +You can invoke pagination in [home], [section], [taxonomy], and [term] templates. ```go-html-template {file="layouts/section.html"} {{ $pages := where .Site.RegularPages "Section" "articles" }} @@ -40,8 +40,8 @@ In the example above, we: > [!note] > Please note that the results of pagination are cached. Once you have invoked either the `Paginator` or `Paginate` method, the paginated collection is immutable. Additional invocations of these methods will have no effect. -[home template]: /templates/types/#home -[section templates]: /templates/types/#section +[home]: /templates/types/#home +[section]: /templates/types/#section [site configuration]: /configuration/pagination/ -[taxonomy templates]: /templates/types/#taxonomy -[term templates]: /templates/types/#term +[taxonomy]: /templates/types/#taxonomy +[term]: /templates/types/#term diff --git a/content/en/methods/page/Paginator.md b/content/en/methods/page/Paginator.md index 1518ac95d..02b5d5719 100644 --- a/content/en/methods/page/Paginator.md +++ b/content/en/methods/page/Paginator.md @@ -13,7 +13,7 @@ Pagination is the process of splitting a list page into two or more pagers, wher The number of elements on each pager is determined by your [site configuration]. The default is `10`. -You can invoke pagination on the [home template], [section templates], [taxonomy templates], and [term templates]. Each of these receives a collection of regular pages in [context](g). When you invoke the `Paginator` method, it paginates the page collection received in context. +You can invoke pagination in [home], [section], [taxonomy], and [term] templates. Each of these receives a collection of regular pages in [context](g). When you invoke the `Paginator` method, it paginates the page collection received in context. ```go-html-template {file="layouts/section.html"} {{ range .Paginator.Pages }} @@ -32,9 +32,9 @@ In the example above, the embedded pagination template creates navigation links > [!note] > Please note that the results of pagination are cached. Once you have invoked either the `Paginator` or `Paginate` method, the paginated collection is immutable. Additional invocations of these methods will have no effect. -[home template]: /templates/types/#home -[section templates]: /templates/types/#section +[home]: /templates/types/#home +[section]: /templates/types/#section [site configuration]: /configuration/pagination/ -[taxonomy templates]: /templates/types/#taxonomy -[term templates]: /templates/types/#term +[taxonomy]: /templates/types/#taxonomy +[term]: /templates/types/#term [`Paginate`]: /methods/page/paginate/ diff --git a/content/en/methods/page/Path.md b/content/en/methods/page/Path.md index db4e7d629..df565f716 100644 --- a/content/en/methods/page/Path.md +++ b/content/en/methods/page/Path.md @@ -87,10 +87,10 @@ Methods|Functions|Shortcodes :--|:--|:-- [`Site.GetPage`]|[`urls.Ref`]|[`ref`] [`Page.GetPage`]|[`urls.RelRef`]|[`relref`] -[`Page.Ref`]||| -[`Page.RelRef`]||| -[`Shortcode.Ref`]||| -[`Shortcode.RelRef`]||| +[`Page.Ref`]| |  +[`Page.RelRef`]| |  +[`Shortcode.Ref`]| |  +[`Shortcode.RelRef`]| |  > [!note] > Specify the logical path when using any of these methods, functions, or shortcodes. If you include a file extension or language identifier, Hugo will strip these values before finding the page in the logical tree. diff --git a/content/en/methods/page/Render.md b/content/en/methods/page/Render.md index 4ee09fb6e..cd24419c2 100644 --- a/content/en/methods/page/Render.md +++ b/content/en/methods/page/Render.md @@ -23,9 +23,9 @@ In the example above, note that the template ("summary") is identified by its fi Although similar to the [`partial`] function, there are key differences. -`Render` method|`partial` function| +`Render` method|`partial` function :--|:-- -The `Page` object is automatically passed to the given template. You cannot pass additional context.| You must specify the context, allowing you to pass a combination of objects, slices, maps, and scalars. +The `Page` object is automatically passed to the given template. You cannot pass additional context.|You must specify the context, allowing you to pass a combination of objects, slices, maps, and scalars. The path to the template is determined by the [content type](g).|You must specify the path to the template, relative to the `layouts/_partials` directory. Consider this layout structure: diff --git a/content/en/methods/page/RenderShortcodes.md b/content/en/methods/page/RenderShortcodes.md index 81a78b04b..e440302dc 100644 --- a/content/en/methods/page/RenderShortcodes.md +++ b/content/en/methods/page/RenderShortcodes.md @@ -9,7 +9,7 @@ params: signatures: [PAGE.RenderShortcodes] --- -Use this method in shortcode templates to compose a page from multiple content files, while preserving a global context for footnotes and the table of contents. +Use this method in _shortcode_ templates to compose a page from multiple content files, while preserving a global context for footnotes and the table of contents. For example: diff --git a/content/en/methods/page/Store.md b/content/en/methods/page/Store.md index 0b1049b0a..c5ad6b316 100644 --- a/content/en/methods/page/Store.md +++ b/content/en/methods/page/Store.md @@ -18,7 +18,7 @@ Use the `Store` method on a `Page` object to create a [scratch pad](g) to store ## Determinate values -The `Store` method is often used to set scratch pad values within a shortcode, a partial template called by a shortcode, or by a Markdown render hook. In all three cases, the scratch pad values are indeterminate until Hugo renders the page content. +The `Store` method is often used to set scratch pad values within a _shortcode_ template, a _partial_ template called by a _shortcode_ template, or by a _render hook_ template. In all three cases, the scratch pad values are indeterminate until Hugo renders the page content. If you need to access a scratch pad value from a parent template, and the parent template has not yet rendered the page content, you can trigger content rendering by assigning the returned value to a [noop](g) variable: diff --git a/content/en/methods/page/Translations.md b/content/en/methods/page/Translations.md index 4bab9fe11..c342a8618 100644 --- a/content/en/methods/page/Translations.md +++ b/content/en/methods/page/Translations.md @@ -1,6 +1,6 @@ --- title: Translations -description: Returns all translations of the given page, excluding the current language. +description: Returns all translations of the given page, excluding the current language, sorted by language weight. categories: [] keywords: [] params: diff --git a/content/en/methods/resource/Content.md b/content/en/methods/resource/Content.md index 2c2c12d3a..ff2ad6de8 100644 --- a/content/en/methods/resource/Content.md +++ b/content/en/methods/resource/Content.md @@ -11,7 +11,7 @@ params: {{% include "/_common/methods/resource/global-page-remote-resources.md" %}} -The `Content` method on a `Resource` object returns `template.HTML` when the resource type is `page`, otherwise it returns a `string`. +The `Content` method on a `Resource` object returns `template.HTML` when the [resource type] is `page`, otherwise it returns a `string`. [resource type]: /methods/resource/resourcetype/ diff --git a/content/en/methods/resource/Data.md b/content/en/methods/resource/Data.md index 0709ca50a..01b22823d 100644 --- a/content/en/methods/resource/Data.md +++ b/content/en/methods/resource/Data.md @@ -11,8 +11,6 @@ params: The `Data` method on a resource returned by the [`resources.GetRemote`] function returns information from the HTTP response. -[`resources.GetRemote`]: /functions/resources/getremote/ - ## Example ```go-html-template diff --git a/content/en/methods/resource/Name.md b/content/en/methods/resource/Name.md index c678c96c9..3331bb50d 100644 --- a/content/en/methods/resource/Name.md +++ b/content/en/methods/resource/Name.md @@ -77,6 +77,7 @@ content/ {{ .Name }} → images/Sunrise in Bryce Canyon.jpg {{ end }} ``` + ## Remote resource With a [remote resource](g), the `Name` method returns a hashed file name. diff --git a/content/en/methods/shortcode/IsNamedParams.md b/content/en/methods/shortcode/IsNamedParams.md index c95398313..0574128ec 100644 --- a/content/en/methods/shortcode/IsNamedParams.md +++ b/content/en/methods/shortcode/IsNamedParams.md @@ -11,7 +11,7 @@ params: To support both positional and named arguments when calling a shortcode, use the `IsNamedParams` method to determine how the shortcode was called. -With this shortcode template: +With this _shortcode_ template: ```go-html-template {file="layouts/_shortcodes/myshortcode.html"} {{ if .IsNamedParams }} diff --git a/content/en/methods/shortcode/Ordinal.md b/content/en/methods/shortcode/Ordinal.md index 4c32705c1..b16758952 100644 --- a/content/en/methods/shortcode/Ordinal.md +++ b/content/en/methods/shortcode/Ordinal.md @@ -47,6 +47,6 @@ Hugo renders the page to: ``` > [!note] -> In the shortcode template above, the [`with`] statement is used to create conditional blocks. Remember that the `with` statement binds context (the dot) to its expression. Inside of a `with` block, preface shortcode method calls with a `$` to access the top-level context passed into the template. +> In the _shortcode_ template above, the [`with`] statement is used to create conditional blocks. Remember that the `with` statement binds context (the dot) to its expression. Inside of a `with` block, preface shortcode method calls with a `$` to access the top-level context passed into the template. [`with`]: /functions/go-template/with/ diff --git a/content/en/methods/site/GetPage.md b/content/en/methods/site/GetPage.md index 2a3bd7d59..34f531720 100644 --- a/content/en/methods/site/GetPage.md +++ b/content/en/methods/site/GetPage.md @@ -34,9 +34,9 @@ content/ └── _index.md ``` -This home template: +This _home_ template: -```go-html-template +```go-html-template {file="layouts/home.html"} {{ with .Site.GetPage "/works/paintings" }}

``` + This example will list all taxonomies and their terms, as well as all the content assigned to each of the terms. ```go-html-template {file="layouts/_partials/all-taxonomies.html"} diff --git a/content/en/methods/time/Round.md b/content/en/methods/time/Round.md index 816d41b44..afda0e294 100644 --- a/content/en/methods/time/Round.md +++ b/content/en/methods/time/Round.md @@ -15,7 +15,7 @@ The `Round` method operates on TIME as an absolute duration since the [zero time ```go-html-template {{ $t := time.AsTime "2023-01-27T23:44:58-08:00" }} -{{ $d := time.ParseDuration "1h"}} +{{ $d := time.ParseDuration "1h" }} {{ ($t.Round $d).Format "2006-01-02T15:04:05-00:00" }} → 2023-01-28T00:00:00-00:00 ``` diff --git a/content/en/methods/time/Truncate.md b/content/en/methods/time/Truncate.md index b797afec0..b90c3847f 100644 --- a/content/en/methods/time/Truncate.md +++ b/content/en/methods/time/Truncate.md @@ -13,7 +13,7 @@ The `Truncate` method operates on TIME as an absolute duration since the [zero t ```go-html-template {{ $t := time.AsTime "2023-01-27T23:44:58-08:00" }} -{{ $d := time.ParseDuration "1h"}} +{{ $d := time.ParseDuration "1h" }} {{ ($t.Truncate $d).Format "2006-01-02T15:04:05-00:00" }} → 2023-01-27T23:00:00-00:00 ``` diff --git a/content/en/quick-reference/glossary/raw-string-literal.md b/content/en/quick-reference/glossary/raw-string-literal.md index 7465c6837..a3ceabe10 100644 --- a/content/en/quick-reference/glossary/raw-string-literal.md +++ b/content/en/quick-reference/glossary/raw-string-literal.md @@ -3,4 +3,4 @@ title: raw string literal reference: https://go.dev/ref/spec#String_literals --- -A _raw string literal_ is a character sequences between backticks, as in \`bar\`. Within the backticks, any character may appear except a backtick. Backslashes have no special meaning and the string may contain newlines. Carriage return characters (`\r`) inside raw string literals are discarded from the raw string value. +A _raw string literal_ is a character sequence between backticks, as in \`bar\`. Within the backticks, any character may appear except a backtick. Backslashes have no special meaning and the string may contain newlines. Carriage return characters (`\r`) inside raw string literals are discarded from the raw string value. diff --git a/content/en/quick-reference/syntax-highlighting-styles.md b/content/en/quick-reference/syntax-highlighting-styles.md index 14b313cbc..76aa77bf4 100644 --- a/content/en/quick-reference/syntax-highlighting-styles.md +++ b/content/en/quick-reference/syntax-highlighting-styles.md @@ -11,7 +11,7 @@ Hugo provides several methods to add syntax highlighting to code examples: - Use the [`transform.Highlight`] function within your templates - Use the [`highlight`] shortcode with any [content format](g) -- Use fenced code blocks with the Markdown content format +- Use [fenced code blocks] with the Markdown content format Regardless of method, use any of the syntax highlighting styles below. diff --git a/content/en/render-hooks/_index.md b/content/en/render-hooks/_index.md index a5e6203ff..a957cb4cf 100644 --- a/content/en/render-hooks/_index.md +++ b/content/en/render-hooks/_index.md @@ -1,6 +1,6 @@ --- title: Render hooks -description: Create render hooks to override the rendering of Markdown to HTML. +description: Create render hook templates to override the rendering of Markdown to HTML. categories: [] keywords: [] weight: 10 diff --git a/content/en/render-hooks/blockquotes.md b/content/en/render-hooks/blockquotes.md index 411c6c796..77e7059c7 100755 --- a/content/en/render-hooks/blockquotes.md +++ b/content/en/render-hooks/blockquotes.md @@ -1,7 +1,7 @@ --- title: Blockquote render hooks linkTitle: Blockquotes -description: Create a blockquote render hook to override the rendering of Markdown blockquotes to HTML. +description: Create blockquote render hook templates to override the rendering of Markdown blockquotes to HTML. categories: [] keywords: [] --- @@ -10,7 +10,7 @@ keywords: [] ## Context -Blockquote render hook templates receive the following [context](g): +Blockquote _render hook_ templates receive the following [context](g): AlertType : (`string`) Applicable when [`Type`](#type) is `alert`, this is the alert type converted to lowercase. See the [alerts](#alerts) section below. diff --git a/content/en/render-hooks/code-blocks.md b/content/en/render-hooks/code-blocks.md index 6e0ea011f..526a1232f 100755 --- a/content/en/render-hooks/code-blocks.md +++ b/content/en/render-hooks/code-blocks.md @@ -1,7 +1,7 @@ --- title: Code block render hooks linkTitle: Code blocks -description: Create a code block render hook to override the rendering of Markdown code blocks to HTML. +description: Create code block render hook templates to override the rendering of Markdown code blocks to HTML. categories: [] keywords: [] --- @@ -41,7 +41,7 @@ In the example above, the _highlighting options_ are `lineNos` and `tabWidth`. H ## Context -Code block render hook templates receive the following [context](g): +Code block _render hook_ templates receive the following [context](g): Attributes : (`map`) The generic attributes from the info string. @@ -50,7 +50,7 @@ Inner : (`string`) The content between the leading and trailing code fences, excluding the info string. Options -: (`map`) The highlighting options from the info string. +: (`map`) The highlighting options from the info string. This map is empty if [`Type`](#type) is an empty string or a code language that is not supported by the Chroma syntax highlighter. However, in this case, the highlighting options are available in the [`Attributes`](#attributes) map. Ordinal : (`int`) The zero-based ordinal of the code block on the page. diff --git a/content/en/render-hooks/headings.md b/content/en/render-hooks/headings.md index 5279dff78..44281bb3d 100755 --- a/content/en/render-hooks/headings.md +++ b/content/en/render-hooks/headings.md @@ -1,14 +1,14 @@ --- title: Heading render hooks linkTitle: Headings -description: Create a heading render hook to override the rendering of Markdown headings to HTML. +description: Create heading render hook templates to override the rendering of Markdown headings to HTML. categories: [] keywords: [] --- ## Context -Heading render hook templates receive the following [context](g): +Heading _render hook_ templates receive the following [context](g): Anchor : (`string`) The `id` attribute of the heading element. diff --git a/content/en/render-hooks/images.md b/content/en/render-hooks/images.md index 9f8ef1efb..bee068a0d 100755 --- a/content/en/render-hooks/images.md +++ b/content/en/render-hooks/images.md @@ -1,7 +1,7 @@ --- title: Image render hooks linkTitle: Images -description: Create an image render to hook override the rendering of Markdown images to HTML. +description: Create image render hook templates to override the rendering of Markdown images to HTML. categories: [] keywords: [] --- @@ -20,7 +20,7 @@ These components are passed into the render hook [context](g) as shown below. ## Context -Image render hook templates receive the following context: +Image _render hook_ templates receive the following context: Attributes : (`map`) The [Markdown attributes], available if you configure your site as follows: @@ -97,21 +97,20 @@ Note that the above requires the following site configuration: wrapStandAloneImageWithinParagraph = false {{< /code-toggle >}} -## Default +## Embedded {{< new-in 0.123.0 />}} -Hugo includes an [embedded image render hook] to resolve Markdown image destinations. Disabled by default, you can enable it in your site configuration: +Hugo includes an [embedded image render hook] to resolve Markdown image destinations. You can adjust its behavior in your site configuration. This is the default setting: {{< code-toggle file=hugo >}} [markup.goldmark.renderHooks.image] -enableDefault = true +useEmbedded = 'auto' {{< /code-toggle >}} -A custom render hook, even when provided by a theme or module, will override the embedded render hook regardless of the configuration setting above. +When set to `auto` as shown above, Hugo automatically uses the embedded image render hook for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom image render hooks are defined by your project, modules, or themes, these will be used instead. -> [!note] -> The embedded image render hook is automatically enabled for multilingual single-host sites if [duplication of shared page resources] is disabled. This is the default configuration for multilingual single-host sites. +You can also configure Hugo to `always` use the embedded image render hook, use it only as a `fallback`, or `never` use it. See [details](/configuration/markup/#renderhooksimageuseembedded). The embedded image render hook resolves internal Markdown destinations by looking for a matching [page resource](g), falling back to a matching [global resource](g). Remote destinations are passed through, and the render hook will not throw an error or warning if unable to resolve a destination. diff --git a/content/en/render-hooks/links.md b/content/en/render-hooks/links.md index af0a8f0dd..0e6519e2e 100755 --- a/content/en/render-hooks/links.md +++ b/content/en/render-hooks/links.md @@ -20,7 +20,7 @@ These components are passed into the render hook [context](g) as shown below. ## Context -Link render hook templates receive the following context: +Link _render hook_ templates receive the following context: Destination : (`string`) The link destination. @@ -70,21 +70,20 @@ To include a `rel` attribute set to `external` for external links: {{- /* chomp trailing newline */ -}} ``` -## Default +## Embedded {{< new-in 0.123.0 />}} -Hugo includes an [embedded link render hook] to resolve Markdown link destinations. Disabled by default, you can enable it in your site configuration: +Hugo includes an [embedded link render hook] to resolve Markdown link destinations. You can adjust its behavior in your site configuration. This is the default setting: {{< code-toggle file=hugo >}} [markup.goldmark.renderHooks.link] -enableDefault = true +useEmbedded = 'auto' {{< /code-toggle >}} -A custom render hook, even when provided by a theme or module, will override the embedded render hook regardless of the configuration setting above. +When set to `auto` as shown above, Hugo automatically uses the embedded link render hook for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom link render hooks are defined by your project, modules, or themes, these will be used instead. -> [!note] -> The embedded link render hook is automatically enabled for multilingual single-host sites if [duplication of shared page resources] is disabled. This is the default configuration for multilingual single-host sites. +You can also configure Hugo to `always` use the embedded link render hook, use it only as a `fallback`, or `never` use it. See [details](/configuration/markup/#renderhookslinkuseembedded). The embedded link render hook resolves internal Markdown destinations by looking for a matching page, falling back to a matching [page resource](g), then falling back to a matching [global resource](g). Remote destinations are passed through, and the render hook will not throw an error or warning if unable to resolve a destination. diff --git a/content/en/render-hooks/passthrough.md b/content/en/render-hooks/passthrough.md index ea0df8824..253039316 100755 --- a/content/en/render-hooks/passthrough.md +++ b/content/en/render-hooks/passthrough.md @@ -1,7 +1,7 @@ --- title: Passthrough render hooks linkTitle: Passthrough -description: Create a passthrough render hook to override the rendering of text snippets captured by the Goldmark Passthrough extension. +description: Create passthrough render hook templates to override the rendering of text snippets captured by the Goldmark Passthrough extension. categories: [] keywords: [] --- @@ -47,7 +47,7 @@ To enable custom rendering of passthrough elements, create a passthrough render ## Context -Passthrough render hook templates receive the following [context](g): +Passthrough _render hook_ templates receive the following [context](g): Attributes : (`map`) The [Markdown attributes], available if you configure your site as follows: diff --git a/content/en/render-hooks/tables.md b/content/en/render-hooks/tables.md index 619090797..852f67e11 100755 --- a/content/en/render-hooks/tables.md +++ b/content/en/render-hooks/tables.md @@ -1,7 +1,7 @@ --- title: Table render hooks linkTitle: Tables -description: Create a table render hook to override the rendering of Markdown tables to HTML. +description: Create table render hook templates to override the rendering of Markdown tables to HTML. categories: [] keywords: [] --- @@ -10,7 +10,7 @@ keywords: [] ## Context -Table render hook templates receive the following [context](g): +Table _render hook_ templates receive the following [context](g): Attributes : (`map`) The [Markdown attributes], available if you configure your site as follows: diff --git a/content/en/shortcodes/qr.md b/content/en/shortcodes/qr.md index 27d9ae02f..3cbc5d3fd 100755 --- a/content/en/shortcodes/qr.md +++ b/content/en/shortcodes/qr.md @@ -104,4 +104,4 @@ title [QR code]: https://en.wikipedia.org/wiki/QR_code [related documentation]: /functions/images/qr/ [source code]: {{% eturl qr %}} -[vCard]: https://en.wikipedia.org/wiki/VCard +[vCard]: diff --git a/content/en/shortcodes/ref.md b/content/en/shortcodes/ref.md index b38413c63..0cd5b52dc 100755 --- a/content/en/shortcodes/ref.md +++ b/content/en/shortcodes/ref.md @@ -10,7 +10,11 @@ keywords: [] > To override Hugo's embedded `ref` shortcode, copy the [source code] to a file with the same name in the `layouts/_shortcodes` directory. > [!note] -> When working with Markdown, this shortcode is obsolete. Instead, use a [link render hook] that resolves the link destination using the `GetPage` method on the `Page` object. You can either create your own, or simply enable the [embedded link render hook]. The embedded link render hook is automatically enabled for multilingual single-host projects. +> When working with Markdown this shortcode is obsolete. Instead, to properly resolve Markdown link destinations, use the [embedded link render hook] or create your own. +> +> In its default configuration, Hugo automatically uses the embedded link render hook for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom link render hooks are defined by your project, modules, or themes, these will be used instead. +> +> You can also configure Hugo to `always` use the embedded link render hook, use it only as a `fallback`, or `never` use it. See [details](/configuration/markup/#renderhookslinkuseembedded). ## Usage @@ -55,8 +59,7 @@ Rendered: {{% include "_common/ref-and-relref-error-handling.md" %}} -[content format]: /content-management/formats/ -[embedded link render hook]: /render-hooks/links/#default -[link render hook]: /render-hooks/links/ +[duplication of shared page resources]: /configuration/markup/#duplicateresourcefiles +[embedded link render hook]: /render-hooks/links/#embedded [Markdown notation]: /content-management/shortcodes/#notation [source code]: {{% eturl relref %}} diff --git a/content/en/shortcodes/relref.md b/content/en/shortcodes/relref.md index d4f4c2425..22cdb9f2f 100755 --- a/content/en/shortcodes/relref.md +++ b/content/en/shortcodes/relref.md @@ -10,7 +10,11 @@ keywords: [] > To override Hugo's embedded `relref` shortcode, copy the [source code] to a file with the same name in the `layouts/_shortcodes` directory. > [!note] -> When working with Markdown, this shortcode is obsolete. Instead, use a [link render hook] that resolves the link destination using the `GetPage` method on the `Page` object. You can either create your own, or simply enable the [embedded link render hook]. The embedded link render hook is automatically enabled for multilingual single-host projects. +> When working with Markdown this shortcode is obsolete. Instead, to properly resolve Markdown link destinations, use the [embedded link render hook] or create your own. +> +> In its default configuration, Hugo automatically uses the embedded link render hook for multilingual single-host sites, specifically when the [duplication of shared page resources] feature is disabled. This is the default behavior for such sites. If custom link render hooks are defined by your project, modules, or themes, these will be used instead. +> +> You can also configure Hugo to `always` use the embedded link render hook, use it only as a `fallback`, or `never` use it. See [details](/configuration/markup/#renderhookslinkuseembedded). ## Usage @@ -55,8 +59,7 @@ Rendered: {{% include "_common/ref-and-relref-error-handling.md" %}} -[content format]: /content-management/formats/ -[embedded link render hook]: /render-hooks/links/#default -[link render hook]: /render-hooks/links/ +[duplication of shared page resources]: /configuration/markup/#duplicateresourcefiles +[embedded link render hook]: /render-hooks/links/#embedded [Markdown notation]: /content-management/shortcodes/#notation [source code]: {{% eturl relref %}} diff --git a/content/en/showcase/_template/index.md b/content/en/showcase/_template/index.md index 3103903e1..6a115961b 100644 --- a/content/en/showcase/_template/index.md +++ b/content/en/showcase/_template/index.md @@ -17,7 +17,7 @@ To complete this showcase: 1. Write the story about your site in this file. 1. Add a summary to the `bio.md` file in this directory. 1. Replace the `featured-template.png` with a screenshot of your site. You can rename it, but it must contain the word `featured`. -1. Create a new pull request in https://github.com/gohugoio/hugoDocs/pulls +1. Create a new pull request in The content of this bundle explained: diff --git a/content/en/showcase/ampio-help/bio.md b/content/en/showcase/ampio-help/bio.md index a08b26be7..bc0a9a937 100644 --- a/content/en/showcase/ampio-help/bio.md +++ b/content/en/showcase/ampio-help/bio.md @@ -1,6 +1,6 @@ -__We are Ampio.__ We design and manufacture a building automation system that provides control, comfort, safety and reliability. Visit [our page](http://ampio.com/) to learn more about our solution! +We are Ampio. We design and manufacture a building automation system that provides control, comfort, safety and reliability. Visit [our page](http://ampio.com/) to learn more about our solution! -__Ampio Knowledge Base__ is a service built and maintained with Hugo. It is a self-service support platform for our customers and certified installers. It also contains a complete portfolio of our modules---building blocks of the Ampio building automation system. +Ampio Knowledge Base is a service built and maintained with Hugo. It is a self-service support platform for our customers and certified installers. It also contains a complete portfolio of our modules---building blocks of the Ampio building automation system. The site is built by: diff --git a/content/en/showcase/ampio-help/index.md b/content/en/showcase/ampio-help/index.md index 462452cb1..20e767289 100644 --- a/content/en/showcase/ampio-help/index.md +++ b/content/en/showcase/ampio-help/index.md @@ -15,10 +15,10 @@ Over and above that, we could not overlook the fact that our internal team of ed We started our journey with the following requirements: - - Ease of contribution - - Efficient search capabilities - - The possibility of deployment to simple shared hosting - - Proper support for multilingualism +- Ease of contribution +- Efficient search capabilities +- The possibility of deployment to simple shared hosting +- Proper support for multilingualism ## Dark ages of WordPress diff --git a/content/en/showcase/hartwell-insurance/index.md b/content/en/showcase/hartwell-insurance/index.md index 07ee6182c..1e15510a8 100644 --- a/content/en/showcase/hartwell-insurance/index.md +++ b/content/en/showcase/hartwell-insurance/index.md @@ -8,7 +8,7 @@ byline: "[Trys Mudford](http://www.trysmudford.com), Lead Developer, Tomango" We've just launched a shiny new website for [Hartwell Insurance](https://www.hartwell-insurance.com/). I'm really proud of it. It was tackled in a different way to most previous Tomango site builds, using some fancy new tools and some vintage web standards. -It's a multi-page, single-page (!) website written in Hugo, a static site generator built with performance as a first-class feature. _I've outlined a load of benefits to Hugo & static sites [here](https://why-static.netlify.com/), in case you're interested._ +It's a multi-page, single-page (!) website written in Hugo, a static site generator built with performance as a first-class feature. I've outlined a load of benefits to Hugo and static sites [on a page explaining the benefits of static sites](https://why-static.netlify.com/), in case you're interested. > **In essence, a static site generator pre-renders the whole site into HTML files and serves them like it's 1995.** diff --git a/content/en/showcase/pharmaseal/index.md b/content/en/showcase/pharmaseal/index.md index 3a8da2377..fa8c8a8ab 100644 --- a/content/en/showcase/pharmaseal/index.md +++ b/content/en/showcase/pharmaseal/index.md @@ -10,13 +10,13 @@ We wanted to shake the status quo with PHARMASEAL, opting for a fast and scalabl We had two goals: -**Make it fast** +## Make it fast We wanted to optimize the site as much as possible, so we opted for using Cloudinary, enabling us to take advantage of on-the-fly image manipulation, and thanks to the sheer speed of static sites, we achieved a perfect optimization score with Google audits. Because we're hosting the site through Netlify and our target audience is in America, we are taking advantage of Netlify edge (Their alternative to a CDN). We're talking blazing fast. -**Make it easy** +## Make it easy We're big fans of simplicity, and that's what we delivered with the Forestry building blocks. Every element on the site is built with building blocks in mind, allowing PHARMASEAL to generate multiple pages in the blink of an eye. diff --git a/content/en/templates/introduction.md b/content/en/templates/introduction.md index 7ee4f6cdf..9d94032c9 100644 --- a/content/en/templates/introduction.md +++ b/content/en/templates/introduction.md @@ -9,7 +9,6 @@ weight: 10 {{< newtemplatesystem >}} - {{% glossary-term template %}} Templates use [variables], [functions], and [methods] to transform your content, resources, and data into a published page. @@ -35,7 +34,7 @@ While HTML templates are the most common, you can create templates for any [outp The most important concept to understand before creating a template is _context_, the data passed into each template. The data may be a simple value, or more commonly [objects](g) and associated [methods](g). -For example, a template for a single page receives a `Page` object, and the `Page` object provides methods to return values or perform actions. +For example, a _page_ template receives a `Page` object, and the `Page` object provides methods to return values or perform actions. ### Current context @@ -343,7 +342,7 @@ Use the [`partial`] or [`partialCached`] function to include one or more [partia {{ partialCached "css.html" . }} ``` -Create your partial templates in the layouts/_partials directory. +Create your _partial_ templates in the `layouts/_partials` directory. > [!note] > In the examples above, note that we are passing the current context (the dot) to each of the templates. @@ -508,29 +507,24 @@ In the template example above, each of the keys is a valid identifier. For examp [`end`]: /functions/go-template/end/ [`if`]: /functions/go-template/if/ [`index`]: /functions/collections/indexfunction/ -[`index`]: /functions/collections/indexfunction/ [`or`]: /functions/go-template/or [`Page`]: /methods/page/ [`partial`]: /functions/partials/include/ [`partialCached`]: /functions/partials/includecached/ [`range`]: /functions/go-template/range/ -[`range`]: /functions/go-template/range/ [`safeHTML`]: /functions/safe/html [`Site`]: /methods/site/ [`template`]: /functions/go-template/template/ [`Title`]: /methods/page/title [`with`]: /functions/go-template/with/ -[`with`]: /functions/go-template/with/ [current context]: #current-context [embedded templates]: /templates/embedded/ [front matter]: /content-management/front-matter/ [front matter fields]: /content-management/front-matter/#fields [functions]: /functions/ -[functions]: /functions [go-templates]: /functions/go-template/ [html/template]: https://pkg.go.dev/html/template [methods]: /methods/ -[methods]: /methods/ [partial templates]: /templates/types/#partial [templates]: /templates/ [text/template]: https://pkg.go.dev/text/template diff --git a/content/en/templates/menu.md b/content/en/templates/menu.md index e1eaa07b9..aa0e7c673 100644 --- a/content/en/templates/menu.md +++ b/content/en/templates/menu.md @@ -21,7 +21,7 @@ The example below handles every combination. ## Example -This partial template recursively "walks" a menu structure, rendering a localized, accessible nested list. +This _partial_ template recursively "walks" a menu structure, rendering a localized, accessible nested list. ```go-html-template {file="layouts/_partials/menu.html" copy=true} {{- $page := .page }} diff --git a/content/en/templates/new-templatesystem-overview.md b/content/en/templates/new-templatesystem-overview.md index 93be94bcc..a3b53197b 100644 --- a/content/en/templates/new-templatesystem-overview.md +++ b/content/en/templates/new-templatesystem-overview.md @@ -1,4 +1,3 @@ - --- title: New template system in Hugo v0.146.0 linktitle: New template system @@ -32,7 +31,7 @@ Also, see the [Example folder structure] below for a more concrete example of th ## Changes to template lookup order -We have consolidated the template lookup so it works the same across all shortcodes, render hooks, partials, and page templates. The previous setup was very hard to understand and had a massive number of variants. The new setup aims to feel natural with few surprises. +We have consolidated the template lookup so it works the same across all [template types]. The previous setup was very hard to understand and had a massive number of variants. The new setup aims to feel natural with few surprises. The identifiers used in the template weighting, in order of importance, are: @@ -50,9 +49,9 @@ The identifiers used in the template weighting, in order of importance, are: For templates placed in a `layouts` folder partly or completely matching a [Page path], a closer match upwards will be considered _better_. In the [Example folder structure] below, this means that: -* `layouts/docs/api/_markup/render-link.html` will be used to render links from the Page path `/docs/api` and below. -* `layouts/docs/baseof.html` will be used as the base template for the Page path `/docs` and below. -* `layouts/tags/term.html` will be used for all `term` rendering in the `tags` taxonomy, except for the `blue` term, which will use `layouts/tags/blue/list.html`. +- `layouts/docs/api/_markup/render-link.html` will be used to render links from the Page path `/docs/api` and below. +- `layouts/docs/baseof.html` will be used as the base template for the Page path `/docs` and below. +- `layouts/tags/term.html` will be used for all `term` rendering in the `tags` taxonomy, except for the `blue` term, which will use `layouts/tags/blue/list.html`. ## Example folder structure @@ -90,10 +89,11 @@ layouts └── list.html ``` -[Hugo v0.146.0]: https://github.com/gohugoio/hugo/releases/tag/v0.146.0 -[Page path]: https://gohugo.io/methods/page/path/ -[Page kinds]: https://gohugo.io/methods/page/kind/ -[Example folder structure]: #example-folder-structure - [^type]: The `type` set in front matter will effectively replace the `section` folder in [Page path] when doing lookups. [^internal]: The old way of doing it made it very hard/impossible to, e.g., override `_internal/disqus.html` in a theme. Now you can just create a partial with the same name. + +[Example folder structure]: #example-folder-structure +[Hugo v0.146.0]: https://github.com/gohugoio/hugo/releases/tag/v0.146.0 +[Page kinds]: https://gohugo.io/methods/page/kind/ +[Page path]: https://gohugo.io/methods/page/path/ +[template types]: /templates/types/ diff --git a/content/en/templates/pagination.md b/content/en/templates/pagination.md index 76b9d1fdc..6d4203949 100644 --- a/content/en/templates/pagination.md +++ b/content/en/templates/pagination.md @@ -172,9 +172,9 @@ And this site configuration: path = 'page' {{< /code-toggle >}} -And this section template: +And this _section_ template: -```go-html-template +```go-html-template {file="layouts/section.html"} {{ range (.Paginate .Pages).Pages }}

{{ .LinkTitle }}

{{ end }} @@ -237,5 +237,4 @@ public/ [`Paginator`]: /methods/page/paginator/ [`partial`]: /functions/partials/include/ [grouping methods]: /quick-reference/page-collections/#group -[grouping methods]: /quick-reference/page-collections/#group [source code]: {{% eturl pagination %}} diff --git a/content/en/templates/robots.md b/content/en/templates/robots.md index 2d412d775..807a6027a 100644 --- a/content/en/templates/robots.md +++ b/content/en/templates/robots.md @@ -46,8 +46,7 @@ This template creates a robots.txt file with a `Disallow` directive for each pag > 1. Set `enableRobotsTXT` to `false` in the site configuration. > 1. Create a robots.txt file in the `static` directory. > -> Remember that Hugo copies everything in the [`static` directory][static] to the root of `publishDir` (typically `public`) when you build your site. +> Remember that Hugo copies everything in the static director to the root of `publishDir` (typically `public`) when you build your site. [embedded template]: {{% eturl robots %}} [site configuration]: /configuration/ -[static]: /getting-started/directory-structure/ diff --git a/content/en/templates/shortcode.md b/content/en/templates/shortcode.md index 5e6ad3429..f07206f6a 100644 --- a/content/en/templates/shortcode.md +++ b/content/en/templates/shortcode.md @@ -9,7 +9,6 @@ aliases: [/templates/shortcode-templates/] {{< newtemplatesystem >}} - > [!note] > Before creating custom shortcodes, please review the [shortcodes] page in the [content management] section. Understanding the usage details will help you design and create better templates. @@ -27,7 +26,7 @@ Hugo provides [embedded shortcodes] for many common tasks, but you'll likely nee ## Directory structure -Create shortcode templates within the `layouts/_shortcodes` directory, either at its root or organized into subdirectories. +Create _shortcode_ templates within the `layouts/_shortcodes` directory, either at its root or organized into subdirectories. ```text layouts/ @@ -53,7 +52,7 @@ When calling a shortcode in a subdirectory, specify its path relative to the `_s ## Lookup order -Hugo selects shortcode templates based on the shortcode name, the current output format, and the current language. The examples below are sorted by specificity in descending order. The least specific path is at the bottom of the list. +Hugo selects _shortcode_ templates based on the shortcode name, the current output format, and the current language. The examples below are sorted by specificity in descending order. The least specific path is at the bottom of the list. Shortcode name|Output format|Language|Template path :--|:--|:--|:-- @@ -71,7 +70,7 @@ foo|json|en|`layouts/_shortcodes/foo.json.en.json` ## Methods -Use these methods in your shortcode templates. Refer to each methods's documentation for details and examples. +Use these methods in your _shortcode_ templates. Refer to each methods's documentation for details and examples. {{% list-pages-in-section path=/methods/shortcode %}} diff --git a/content/en/templates/sitemap.md b/content/en/templates/sitemap.md index 2691ae471..8eb358d87 100644 --- a/content/en/templates/sitemap.md +++ b/content/en/templates/sitemap.md @@ -36,17 +36,9 @@ title = 'News' ## Override built-in templates -To override the built-in sitemap.xml template, create a new file in either of these locations: +To override the built-in sitemap.xml template, create a new `layouts/sitemap.xml` file. When ranging through the page collection, access the _change frequency_ and _priority_ with `.Sitemap.ChangeFreq` and `.Sitemap.Priority` respectively. -- `layouts/sitemap.xml` -- `layouts/sitemap.xml` - -When ranging through the page collection, access the _change frequency_ and _priority_ with `.Sitemap.ChangeFreq` and `.Sitemap.Priority` respectively. - -To override the built-in sitemapindex.xml template, create a new file in either of these locations: - -- `layouts/sitemapindex.xml` -- `layouts/sitemapindex.xml` +To override the built-in sitemapindex.xml template, create a new `layouts/sitemapindex.xml` file. ## Disable sitemap generation diff --git a/content/en/templates/types.md b/content/en/templates/types.md index 8c533a56f..19e0e32dd 100644 --- a/content/en/templates/types.md +++ b/content/en/templates/types.md @@ -38,7 +38,8 @@ layouts/ │ ├── page.html │ └── section.html ├── films/ -│ ├── card.html <-- content view +│ ├── view_card.html <-- content view +│ ├── view_li.html <-- content view │ ├── page.html │ └── section.html ├── baseof.html @@ -58,13 +59,23 @@ The purpose of each template type is described below. ## Base -A base template reduces duplicate code by wrapping other templates within a shell. +A _base_ template serves as a foundational layout that other templates can build upon. It typically defines the common structural components of your HTML, such as the `html`, `head`, and `body` elements. It also often includes recurring features like headers, footers, navigation, and script inclusions that appear across multiple pages of your site. By defining these common aspects once in a _base_ template, you avoid redundancy, ensure consistency, and simplify the maintenance of your website. -For example, the base template below calls the [`partial`] function to include partial templates for the `head`, `header`, and `footer` elements of each page, and it calls the [`block`] function to include `home`, `page`, `section`, `taxonomy`, and `term` templates within the `main` element of each page. +Hugo can apply a _base_ template to the following template types: [home](#home), [page](#page), [section](#section), [taxonomy](#taxonomy), [term](#term), [single](#single), [list](#list), and [all](#all). When Hugo parses any of these template types, it will apply a _base_ template only if the template being parsed meets these specific conditions: + +- It must include at least one [`define`] [action](g). +- It can only contain `define` actions, whitespace, and [template comments]. No other content is allowed. + +> [!note] +> If a template doesn't meet all these criteria, Hugo executes it exactly as provided, without applying a _base_ template. + +When Hugo applies a _base_ template, it replaces its [`block`] actions with content from the corresponding `define` actions found in the template to which the base template is applied. + +For example, the _base_ template below calls the [`partial`] function to include `head`, `header`, and `footer` elements. The `block` action acts as a placeholder, and its content will be replaced by a matching `define` action from the template to which it is applied. ```go-html-template {file="layouts/baseof.html"} - + {{ partial "head.html" . }} @@ -73,7 +84,11 @@ For example, the base template below calls the [`partial`] function to include p {{ partial "header.html" . }}
- {{ block "main" . }}{{ end }} + {{ block "main" . }} + This will be replaced with content from the + corresponding "define" action found in the template + to which this base template is applied. + {{ end }}
{{ partial "footer.html" . }} @@ -82,11 +97,18 @@ For example, the base template below calls the [`partial`] function to include p ``` -The `block` construct above is used to define a set of root templates that are then customized by redefining the block templates within. See [details](/functions/go-template/block/) +```go-html-template {file="layouts/home.html"} +{{ define "main" }} + This will replace the content of the "block" action + found in the base template. +{{ end }} +``` ## Home -A home template renders your site's home page. For example, the home template below inherits the site's shell from the [base template] and renders the home page content, such as a list of other pages. +A _home_ template renders your site's home page. + +For example, Hugo applies a _base_ template to the _home_ template below, then renders the page content and a list of the site's regular pages. ```go-html-template {file="layouts/home.html"} {{ define "main" }} @@ -101,9 +123,9 @@ A home template renders your site's home page. For example, the home template be ## Page -A page template renders a regular page. +A _page_ template renders a regular page. -For example, the page template below inherits the site's shell from the [base template] and renders the page title and page content. +For example, Hugo applies a _base_ template to the _page_ template below, then renders the page title and page content. ```go-html-template {file="layouts/page.html"} {{ define "main" }} @@ -114,9 +136,9 @@ For example, the page template below inherits the site's shell from the [base te ## Section -A section template renders a list of pages within a section. +A _section_ template renders a list of pages within a [section](g). -For example, the section template below inherits the site's shell from the [base template] and renders a list of pages in the current section. +For example, Hugo applies a _base_ template to the _section_ template below, then renders the page title, page content, and a list of pages in the current section. ```go-html-template {file="layouts/section.html"} {{ define "main" }} @@ -132,9 +154,9 @@ For example, the section template below inherits the site's shell from the [base ## Taxonomy -A taxonomy template renders a list of terms in a [taxonomy](g). +A _taxonomy_ template renders a list of terms in a [taxonomy](g). -For example, the taxonomy template below inherits the site's shell from the [base template] and renders a list of terms in the current taxonomy. +For example, Hugo applies a _base_ template to the _taxonomy_ template below, then renders the page title, page content, and a list of [terms](g) in the current taxonomy. ```go-html-template {file="layouts/taxonomy.html"} {{ define "main" }} @@ -148,11 +170,11 @@ For example, the taxonomy template below inherits the site's shell from the [bas {{% include "/_common/filter-sort-group.md" %}} -Within a taxonomy template, the [`Data`] object provides these taxonomy-specific methods: +Within a _taxonomy_ template, the [`Data`] object provides these taxonomy-specific methods: - [`Singular`][taxonomy-singular] - [`Plural`][taxonomy-plural] -- [`Terms`]. +- [`Terms`] The `Terms` method returns a [taxonomy object](g), allowing you to call any of its methods including [`Alphabetical`] and [`ByCount`]. For example, use the `ByCount` method to render a list of terms sorted by the number of pages associated with each term: @@ -168,9 +190,9 @@ The `Terms` method returns a [taxonomy object](g), allowing you to call any of i ## Term -A term template renders a list of pages associated with a [term](g). +A _term_ template renders a list of pages associated with a [term](g). -For example, the term template below inherits the site's shell from the [base template] and renders a list of pages associated with the current term. +For example, Hugo applies a _base_ template to the _term_ template below, then renders the page title, page content, and a list of pages associated with the current term. ```go-html-template {file="layouts/term.html"} {{ define "main" }} @@ -184,19 +206,17 @@ For example, the term template below inherits the site's shell from the [base te {{% include "/_common/filter-sort-group.md" %}} -Within a term template, the [`Data`] object provides these term-specific methods: +Within a _term_ template, the [`Data`] object provides these term-specific methods: - [`Singular`][term-singular] - [`Plural`][term-plural] -- [`Term`]. +- [`Term`] ## Single -A single template is a fallback for [page templates](#page). If a page template does not exist, Hugo will look for a single template instead. +A _single_ template is a fallback for a _page_ template. If a _page_ template does not exist, Hugo will look for a _single_ template instead. -Like a page template, a single template renders a regular page. - -For example, the single template below inherits the site's shell from the [base template] and renders the page title and page content. +For example, Hugo applies a _base_ template to the _single_ template below, then renders the page title and page content. ```go-html-template {file="layouts/single.html"} {{ define "main" }} @@ -207,9 +227,9 @@ For example, the single template below inherits the site's shell from the [base ## List -A list template is a fallback for these template types: [home](#home), [section](#section), [taxonomy](#taxonomy), and [term](#term). If one of these template types does not exist, Hugo will look for a list template instead. +A _list_ template is a fallback for [home](#home), [section](#section), [taxonomy](#taxonomy), and [term](#term) templates. If one of these template types does not exist, Hugo will look for a _list_ template instead. -For example, the list template below inherits the site's shell from the [base template] and renders a list of pages: +For example, Hugo applies a _base_ template to the _list_ template below, then renders the page title, page content, and a list of pages. ```go-html-template {file="layouts/list.html"} {{ define "main" }} @@ -223,9 +243,9 @@ For example, the list template below inherits the site's shell from the [base te ## All -An "all" template is a fallback for these template types: [home](#home), [page](#page), [section](#section), [taxonomy](#taxonomy), [term](#term), [single](#single), and [list](#list). If one of these template types does not exist, Hugo will look for an "all" template instead. +An _all_ template is a fallback for [home](#home), [page](#page), [section](#section), [taxonomy](#taxonomy), [term](#term), [single](#single), and [list](#list) templates. If one of these template types does not exist, Hugo will look for an _all_ template instead. -For example, the contrived "all" template below inherits the site's shell from the [base template] and conditionally renders a page based on its page kind: +For example, Hugo applies a _base_ template to the _all_ template below, then conditionally renders a page based on its page kind. ```go-html-template {file="layouts/all.html"} {{ define "main" }} @@ -251,24 +271,24 @@ For example, the contrived "all" template below inherits the site's shell from t ## Partial -A partial template is typically used to render a component of your site, though you may also create partial templates that return values. +A _partial_ template is typically used to render a component of your site, though you may also create _partial_ templates that return values. - -For example, the partial template below renders copyright information: +For example, the _partial_ template below renders copyright information: ```go-html-template {file="layouts/_partials/footer.html"}

Copyright {{ now.Year }}. All rights reserved.

``` -Execute the partial template by calling the [`partial`] or [`partialCached`] function, optionally passing context as the second argument: +Execute the _partial_ template by calling the [`partial`] or [`partialCached`] function, optionally passing context as the second argument: ```go-html-template {file="layouts/baseof.html"} {{ partial "footer.html" . }} ``` -Unlike other template types, partial template selection is based on the file name passed in the partial call. Hugo does not consider the current page kind, content type, logical path, language, or output format when searching for a matching partial template. However, Hugo _does_ apply the same name matching logic it uses for other templates. This means it tries to find the most specific match first, then progressively looks for more general versions if the specific one isn't found. + +Unlike other template types, Hugo does not consider the current page kind, content type, logical path, language, or output format when searching for a matching _partial_ template. However, it _does_ apply the same name matching logic it uses for other template types. This means it tries to find the most specific match first, then progressively looks for more general versions if the specific one isn't found. -For example, with this partial call: +For example, with this call: ```go-html-template {file="layouts/baseof.html"} {{ partial "footer.section.de.html" . }} @@ -281,7 +301,7 @@ Hugo uses this lookup order to find a matching template: 1. `layouts/_partials/footer.de.html` 1. `layouts/_partials/footer.html` -Partials can also be defined inline within a template. However, it's important to note that the template namespace is global; ensuring unique names for these partials is necessary to prevent conflicts. +A _partial_ template can also be defined inline within another template. However, it's important to note that the template namespace is global; ensuring unique names for these _partial_ templates is necessary to prevent conflicts. ```go-html-template Value: {{ partial "my-inline-partial.html" . }} @@ -294,38 +314,40 @@ Value: {{ partial "my-inline-partial.html" . }} ## Content view -A content view template is similar to a partial template, invoked by calling the [`Render`] method on a `Page` object. Unlike partial templates, content view templates: +A _content view_ template is similar to a _partial_ template, invoked by calling the [`Render`] method on a `Page` object. Unlike _partial_ templates, _content view_ templates: - Inherit the context of the current page - Can target any page kind, content type, logical path, language, or output format -For example, the home template below inherits the site's shell from the [base template], and renders a card component for each page within the "films" section of your site. +For example, Hugo applies a _base_ template to the _home_ template below, then renders the page content and a card component for each page within the "films" section of your site. ```go-html-template {file="layouts/home.html"} {{ define "main" }} {{ .Content }}
    {{ range where site.RegularPages "Section" "films" }} - {{ .Render "card" }} + {{ .Render "view_card" }} {{ end }}
{{ end }} ``` -```go-html-template {file="layouts/films/card.html"} +```go-html-template {file="layouts/films/view_card.html"}

{{ .LinkTitle }}

{{ .Summary }}
``` +In the example above, the content view template's name starts with `view_`. While not strictly required, this naming convention helps distinguish content view templates from other templates within the same directory, improving organization and clarity. + ## Render hook -A render hook template overrides the conversion of Markdown to HTML. +A _render hook_ template overrides the conversion of Markdown to HTML. -For example, the render hook template below adds an anchor link to the right of each heading. +For example, the _render hook_ template below adds an anchor link to the right of each heading. -```go-html-template {file="layouts/_markup/heading.html"} +```go-html-template {file="layouts/_markup/render-heading.html"} {{ .Text }} # @@ -336,9 +358,9 @@ Learn more about [render hook templates](/render-hooks/). ## Shortcode -A shortcode template is used to render a component of your site. Unlike [partial templates](#partial) or [content view templates](#content-view), shortcode templates are called from content pages. +A _shortcode_ template is used to render a component of your site. Unlike _partial_ or _content view_ templates, _shortcode_ templates are called from content pages. -For example, the shortcode template below renders an audio element from a [global resource](g). +For example, the _shortcode_ template below renders an audio element from a [global resource](g). ```go-html-template {file="layouts/_shortcodes/audio.html"} {{ with resources.Get (.Get "src") }} @@ -367,15 +389,15 @@ Use other specialized templates to create: [`block`]: /functions/go-template/block/ [`ByCount`]: /methods/taxonomy/bycount/ [`Data`]: /methods/page/data/ +[`define`]: /functions/go-template/define/ [`partial`]: /functions/partials/include/ [`partialCached`]: /functions/partials/includeCached/ [`Render`]: /methods/page/render/ -[`Taxonomy`]: /methods/taxonomy/ -[`Terms`]: /methods/page/data/#terms [`Term`]: /methods/page/data/#term +[`Terms`]: /methods/page/data/#terms [taxonomy-plural]: /methods/page/data/#plural [taxonomy-singular]: /methods/page/data/#singular +[template comments]: /templates/introduction/#comments [template lookup order]: /templates/lookup-order/ [term-plural]: /methods/page/data/#plural-1 [term-singular]: /methods/page/data/#singular-1 -[base template]: #base diff --git a/content/en/tools/editors.md b/content/en/tools/editors.md index c375fcba8..612e06987 100644 --- a/content/en/tools/editors.md +++ b/content/en/tools/editors.md @@ -12,16 +12,16 @@ weight: 10 : Once you go for a static site, you need to think about how you are going to manage your articles. Front matter is a tool that helps you maintain the metadata/front matter of your articles like: creation date, modified date, slug, tile, SEO check, and more. [Hugo Helper](https://marketplace.visualstudio.com/items?itemName=rusnasonov.vscode-hugo) -: Hugo Helper is a plugin for Visual Studio Code that has some useful commands for Hugo. The source code can be found [here](https://github.com/rusnasonov/vscode-hugo). +: Hugo Helper is a plugin for Visual Studio Code that has some useful commands for Hugo. The source code can be found on its [GitHub repository](https://github.com/rusnasonov/vscode-hugo). [Hugo Language and Syntax Support](https://marketplace.visualstudio.com/items?itemName=budparr.language-hugo-vscode) -: Hugo Language and Syntax Support is a Visual Studio Code plugin for Hugo syntax highlighting and snippets. The source code can be found [here](https://github.com/budparr/language-hugo-vscode). +: Hugo Language and Syntax Support is a Visual Studio Code plugin for Hugo syntax highlighting and snippets. The source code can be found on its [GitHub repository](https://github.com/budparr/language-hugo-vscode). [Hugo Themer](https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-hugo-themer) : Hugo Themer is an extension to help you while developing themes. It allows you to easily navigate through your theme files. [Hugofy](https://marketplace.visualstudio.com/items?itemName=akmittal.hugofy) -: Hugofy is a plugin for Visual Studio Code to "make life easier" when developing with Hugo. The source code can be found [here](https://github.com/akmittal/hugofy-vscode). +: Hugofy is a plugin for Visual Studio Code to "make life easier" when developing with Hugo. The source code can be found on its [GitHub repository](https://github.com/akmittal/hugofy-vscode). [Prettier Plugin for Go Templates](https://github.com/NiklasPor/prettier-plugin-go-template) : Format Hugo templates using this [Prettier](https://prettier.io/) plugin. See [installation instructions](https://discourse.gohugo.io/t/38403). @@ -35,7 +35,7 @@ weight: 10 : Emacs major mode for managing hugo blogs. Note that Hugo also supports [Org-mode][formats]. [ox-hugo.el](https://ox-hugo.scripter.co) -: Native Org-mode exporter that exports to Blackfriday Markdown with Hugo front-matter. `ox-hugo` supports two common Org blogging flows --- exporting multiple Org subtrees in a single file to multiple Hugo posts, and exporting a single Org file to a single Hugo post. It also leverages the Org tag and property inheritance features. See [*Why ox-hugo?*](https://ox-hugo.scripter.co/doc/why-ox-hugo/) for more. +: Native Org-mode exporter that exports to Blackfriday Markdown with Hugo front-matter. `ox-hugo` supports two common Org blogging flows --- exporting multiple Org subtrees in a single file to multiple Hugo posts, and exporting a single Org file to a single Hugo post. It also leverages the Org tag and property inheritance features. See [Why ox-hugo?](https://ox-hugo.scripter.co/doc/why-ox-hugo/) for more. ## Sublime Text diff --git a/content/en/tools/front-ends.md b/content/en/tools/front-ends.md index 0c52a4687..90fc8f57c 100644 --- a/content/en/tools/front-ends.md +++ b/content/en/tools/front-ends.md @@ -19,6 +19,9 @@ aliases: [/tools/frontends/] [PubCrank](https://www.pubcrank.com/) : PubCrank is a static site editor which lets you define templates for different front matter layouts in your site. This gives writers an easy-to-use visual interface to create and edit content while maintaining the guardrails that the developer has created. PubCrank is free for local editing. +[Sitepins](https://sitepins.com) +: Sitepins is a Git-based CMS built for static site generators like Hugo. It offers a clean visual editor, media management, role-based permissions, shortcode support, and more. To get started, simply connect your GitHub repository, configure your content folders, and start visually editing your Hugo site with Sitepins. + ## Open-source [Decap CMS](https://decapcms.org/) diff --git a/content/en/tools/migrations.md b/content/en/tools/migrations.md index 103e28b9e..f1c10e6fa 100644 --- a/content/en/tools/migrations.md +++ b/content/en/tools/migrations.md @@ -44,7 +44,7 @@ Alternatively, you can use the [Jekyll import command](/commands/hugo_import_jek : A small utility written in Java that exports the entire WordPress site from the database and resource (e.g., images) files stored locally or remotely. Therefore, migration from the backup files is possible. Supports merging multiple WordPress sites into a single Hugo site. [wp2hugo](https://github.com/ashishb/wp2hugo) -: A Go-based CLI tool to migrate WordPress website to Hugo while preserving original URLs, GUIDs (for feeds), image URLs, code highlights, table of contents, YouTube embeds, Google Maps embeds, and original WordPress navigation categories. +: A Go-based CLI tool to migrate WordPress websites to Hugo. It preserves original URLs, GUIDs, image URLs, code highlights, tables of contents, and WordPress navigation categories. It migrates WordPress custom post types, custom taxonomies, custom fields, and page hierarchy. It supports translated WordPress blogs via Polylang or WPML. It imports a WordPress media library database with original titles and dates. The tool can download all media or only media inserted into pages from the original server. It converts WordPress shortcodes and Gutenberg blocks to Hugo shortcodes including galleries, images, audio, YouTube embeds, Gists, and Google Maps. ## Medium diff --git a/content/en/troubleshooting/faq.md b/content/en/troubleshooting/faq.md index e1a23610c..3e519b0e0 100644 --- a/content/en/troubleshooting/faq.md +++ b/content/en/troubleshooting/faq.md @@ -48,7 +48,7 @@ Why can't I see any of a page's descendants? What is the difference between an `index.md` file and an `_index.md` file? : A directory with an `index.md file` is a [leaf bundle](g). A directory with an `_index.md` file is a [branch bundle](g). See [details](/content-management/page-bundles/). -Why is my partial template not rendered as expected? +Why is my _partial_ template not rendered as expected? : You may have neglected to pass the required [context](g) when calling the partial. For example: ```go-html-template @@ -66,7 +66,7 @@ When I paginate a list page, why is the page collection not filtered as specifie : You are probably invoking the [`Paginate`] or [`Paginator`] method more than once on the same page. See [details](/templates/pagination/). Why are there two ways to call a shortcode? -: Use the `{{%/* shortcode */%}}` notation if the shortcode template, or the content between the opening and closing shortcode tags, contains Markdown. Otherwise use the\ +: Use the `{{%/* shortcode */%}}` notation if the _shortcode_ template, or the content between the opening and closing shortcode tags, contains Markdown. Otherwise use the\ `{{}}` notation. See [details](/content-management/shortcodes/#notation). Can I use environment variables to control configuration? @@ -85,7 +85,7 @@ Why isn't Hugo's development server detecting file changes? In these cases, instead of monitoring native file system events, use the `--poll` command line flag. For example, to poll the project files every 700 milliseconds, use `--poll 700ms`. Why is my page Store missing a value? -: The [`Store`] method on a `Page` object allows you to create a [scratch pad](g) on the given page to store and manipulate data. Values are often set within a shortcode, a partial template called by a shortcode, or by a Markdown render hook. In all three cases, the scratch pad values are not determinate until Hugo renders the page content. +: The [`Store`] method on a `Page` object allows you to create a [scratch pad](g) on the given page to store and manipulate data. Values are often set within a _shortcode_ template, a _partial_ template called by a _shortcode_ template, or by a _render hook_ template. In all three cases, the scratch pad values are not determinate until Hugo renders the page content. If you need to access a scratch pad value from a parent template, and the parent template has not yet rendered the page content, you can trigger content rendering by assigning the returned value to a [noop](g) variable: @@ -106,7 +106,5 @@ Which page methods trigger content rendering? [`Paginator`]: /methods/page/paginator/ [`Store`]: /methods/page/store [forum]: https://discourse.gohugo.io -[forum]: https://discourse.gohugo.io [installation]: /installation/ [requesting help]: https://discourse.gohugo.io/t/requesting-help/9132 -[requesting help]: https://discourse.gohugo.io/t/requesting-help/9132 diff --git a/content/en/troubleshooting/performance.md b/content/en/troubleshooting/performance.md index f22758646..c52dc6966 100644 --- a/content/en/troubleshooting/performance.md +++ b/content/en/troubleshooting/performance.md @@ -69,7 +69,7 @@ maximum duration : The maximum time spent executing the template. cache potential -: Displayed as a percentage, any partial template with a 100% cache potential should be called with the [`partialCached`] function instead of the [`partial`] function. See the [caching](#caching) section below. +: Displayed as a percentage, any _partial_ template with a 100% cache potential should be called with the [`partialCached`] function instead of the [`partial`] function. See the [caching](#caching) section below. percent cached : The number of times the rendered templated was cached divided by the number of times the template was executed. @@ -88,7 +88,7 @@ template ## Caching -Some partial templates such as sidebars or menus are executed many times during a site build. Depending on the content within the partial template and the desired output, the template may benefit from caching to reduce the number of executions. The [`partialCached`] template function provides caching capabilities for partial templates. +Some _partial_ templates such as sidebars or menus are executed many times during a site build. Depending on the content within the _partial_ template and the desired output, the template may benefit from caching to reduce the number of executions. The [`partialCached`] template function provides caching capabilities for _partial_ templates. > [!note] > Note that you can create cached variants of each partial by passing additional arguments to `partialCached` beyond the initial context. See the `partialCached` documentation for more details. diff --git a/data/docs.yaml b/data/docs.yaml index 62c8919a0..f6d2a96ae 100644 --- a/data/docs.yaml +++ b/data/docs.yaml @@ -189,6 +189,9 @@ chroma: - Aliases: - coq Name: Coq + - Aliases: + - core + Name: Core - Aliases: - cr - crystal @@ -515,6 +518,10 @@ chroma: - Aliases: - monkeyc Name: MonkeyC + - Aliases: + - moonscript + - moon + Name: MoonScript - Aliases: - morrowind - mwscript @@ -1253,8 +1260,10 @@ config: renderHooks: image: enableDefault: false + useEmbedded: auto link: enableDefault: false + useEmbedded: auto renderer: hardWraps: false unsafe: false diff --git a/data/page_filters.yaml b/data/page_filters.yaml index 82de6168e..e515f843d 100644 --- a/data/page_filters.yaml +++ b/data/page_filters.yaml @@ -1,4 +1,4 @@ -# Do not delete. Required for layouts/shortcodes/list-pages-in-section.html. +# Do not delete. Required for layouts/_shortcodes/list-pages-in-section.html. # # When calling the list-pages-in-section shortcode, you can specify a page # filter, and whether the pages in the filter should be included or excluded diff --git a/data/sponsors.toml b/data/sponsors.toml index 033042e93..84769a453 100644 --- a/data/sponsors.toml +++ b/data/sponsors.toml @@ -12,10 +12,3 @@ link = "https://www.jetbrains.com/go/?utm_source=OSS&utm_medium=referral&utm_campaign=hugo" logo = "images/sponsors/goland.svg" bgcolor = "#f4f4f4" - -[[banners]] - name = "PinMe" - link = "https://pinme.eth.limo/?s=hugo" - logo = "images/sponsors/logo-pinme.svg" - no_query_params = true - bgcolor = "#fafafa" diff --git a/netlify.toml b/netlify.toml index ad4dd525e..6d028743d 100644 --- a/netlify.toml +++ b/netlify.toml @@ -3,7 +3,7 @@ command = "hugo --gc --minify" [build.environment] - HUGO_VERSION = "0.147.9" + HUGO_VERSION = "0.148.2" [context.production.environment] HUGO_ENV = "production"

lUGciH5Zi~JQICf>`D$6Y6fNr7{5RbFNb|+GP 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 Vk0lA*=3&z&CkOZ`(uqrV{tNF)0Pg?* diff --git a/content/en/host-and-deploy/host-on-keycdn/secret-api-key.png b/content/en/host-and-deploy/host-on-keycdn/secret-api-key.png deleted file mode 100644 index ad99341d5e71e25f77f04745dcbdcc28e30016cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 118836 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 z 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 diff --git a/content/en/host-and-deploy/host-on-keycdn/secret-zone-id.png b/content/en/host-and-deploy/host-on-keycdn/secret-zone-id.png deleted file mode 100644 index 2e5cf5f415516de301b8cd64de6909ecb560785b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113753 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