chroma: lexers: - Aliases: - abap Name: ABAP - Aliases: - abnf Name: ABNF - Aliases: - as - actionscript Name: ActionScript - Aliases: - as3 - actionscript3 Name: ActionScript 3 - Aliases: - ada - ada95 - ada2005 Name: Ada - Aliases: - agda Name: Agda - Aliases: - al Name: AL - Aliases: - alloy Name: Alloy - Aliases: - ng2 Name: Angular2 - Aliases: - antlr Name: ANTLR - Aliases: - apacheconf - aconf - apache Name: ApacheConf - Aliases: - apl Name: APL - Aliases: - applescript Name: AppleScript - Aliases: - aql Name: ArangoDB AQL - Aliases: - arduino Name: Arduino - Aliases: - armasm Name: ArmAsm - Aliases: - autohotkey - ahk Name: AutoHotkey - Aliases: - autoit Name: AutoIt - Aliases: - awk - gawk - mawk - nawk Name: Awk - Aliases: - ballerina Name: Ballerina - Aliases: - bash - sh - ksh - zsh - shell Name: Bash - Aliases: - bash-session - console - shell-session Name: Bash Session - Aliases: - bat - batch - dosbatch - winbatch Name: Batchfile - Aliases: - bib - bibtex Name: BibTeX - Aliases: - bicep Name: Bicep - Aliases: - blitzbasic - b3d - bplus Name: BlitzBasic - Aliases: - bnf Name: BNF - Aliases: - bqn Name: BQN - Aliases: - brainfuck - bf Name: Brainfuck - Aliases: - c Name: C - Aliases: - csharp - c# Name: C# - Aliases: - cpp - c++ Name: C++ - Aliases: - caddyfile - caddy Name: Caddyfile - Aliases: - caddyfile-directives - caddyfile-d - caddy-d Name: Caddyfile Directives - Aliases: - capnp Name: Cap'n Proto - Aliases: - cassandra - cql Name: Cassandra CQL - Aliases: - ceylon Name: Ceylon - Aliases: - cfengine3 - cf3 Name: CFEngine3 - Aliases: - cfs Name: cfstatement - Aliases: - chai - chaiscript Name: ChaiScript - Aliases: - chapel - chpl Name: Chapel - Aliases: - cheetah - spitfire Name: Cheetah - Aliases: - clojure - clj - edn Name: Clojure - Aliases: - cmake Name: CMake - Aliases: - cobol Name: COBOL - Aliases: - coffee-script - coffeescript - coffee Name: CoffeeScript - Aliases: - common-lisp - cl - lisp Name: Common Lisp - Aliases: - coq Name: Coq - Aliases: - cr - crystal Name: Crystal - Aliases: - css Name: CSS - Aliases: - cue Name: CUE - Aliases: - cython - pyx - pyrex Name: Cython - Aliases: - d Name: D - Aliases: - dart Name: Dart - Aliases: - dax Name: Dax - Aliases: - desktop - desktop_entry Name: Desktop file - Aliases: - diff - udiff Name: Diff - Aliases: - django - jinja Name: Django/Jinja - Aliases: - zone - bind Name: dns - Aliases: - docker - dockerfile Name: Docker - Aliases: - dtd Name: DTD - Aliases: - dylan Name: Dylan - Aliases: - ebnf Name: EBNF - Aliases: - elixir - ex - exs Name: Elixir - Aliases: - elm Name: Elm - Aliases: - emacs - elisp - emacs-lisp Name: EmacsLisp - Aliases: - erlang Name: Erlang - Aliases: - factor Name: Factor - Aliases: - fennel - fnl Name: Fennel - Aliases: - fish - fishshell Name: Fish - Aliases: - forth Name: Forth - Aliases: - fortran - f90 Name: Fortran - Aliases: - fortranfixed Name: FortranFixed - Aliases: - fsharp Name: FSharp - Aliases: - gas - asm Name: GAS - Aliases: - gdscript - gd Name: GDScript - Aliases: - gdscript3 - gd3 Name: GDScript3 - Aliases: - genshi - kid - xml+genshi - xml+kid Name: Genshi - Aliases: - html+genshi - html+kid Name: Genshi HTML - Aliases: - genshitext Name: Genshi Text - Aliases: - cucumber - Cucumber - gherkin - Gherkin Name: Gherkin - Aliases: - gleam> Name: Gleam - Aliases: - glsl Name: GLSL - Aliases: - gnuplot Name: Gnuplot - Aliases: - go - golang Name: Go - Aliases: - go-html-template Name: Go HTML Template - Aliases: - go-template Name: Go Template - Aliases: - go-text-template Name: Go Text Template - Aliases: - graphql - graphqls - gql Name: GraphQL - Aliases: - groff - nroff - man Name: Groff - Aliases: - groovy Name: Groovy - Aliases: - handlebars - hbs Name: Handlebars - Aliases: - hare Name: Hare - Aliases: - haskell - hs Name: Haskell - Aliases: - hx - haxe - hxsl Name: Haxe - Aliases: - hcl Name: HCL - Aliases: - hexdump Name: Hexdump - Aliases: - hlb Name: HLB - Aliases: - hlsl Name: HLSL - Aliases: - holyc Name: HolyC - Aliases: - html Name: HTML - Aliases: - http Name: HTTP - Aliases: - hylang Name: Hy - Aliases: - idris - idr Name: Idris - Aliases: - igor - igorpro Name: Igor - Aliases: - ini - cfg - dosini Name: INI - Aliases: - io Name: Io - Aliases: - iscdhcpd Name: ISCdhcpd - Aliases: - j Name: J - Aliases: - java Name: Java - Aliases: - js - javascript Name: JavaScript - Aliases: - json Name: JSON - Aliases: - julia - jl Name: Julia - Aliases: - jungle Name: Jungle - Aliases: - kotlin Name: Kotlin - Aliases: - lighty - lighttpd Name: Lighttpd configuration file - Aliases: - llvm Name: LLVM - Aliases: - lua Name: Lua - Aliases: - make - makefile - mf - bsdmake Name: Makefile - Aliases: - mako Name: Mako - Aliases: - md - mkd Name: markdown - Aliases: - mason Name: Mason - Aliases: - materialize - mzsql Name: Materialize SQL dialect - Aliases: - mathematica - mma - nb Name: Mathematica - Aliases: - matlab Name: Matlab - Aliases: - mcfunction Name: mcfunction - Aliases: - meson - meson.build Name: Meson - Aliases: - metal Name: Metal - Aliases: - minizinc - MZN - mzn Name: MiniZinc - Aliases: - mlir Name: MLIR - Aliases: - modula2 - m2 Name: Modula-2 - Aliases: - monkeyc Name: MonkeyC - Aliases: - morrowind - mwscript Name: MorrowindScript - Aliases: - myghty Name: Myghty - Aliases: - mysql - mariadb Name: MySQL - Aliases: - nasm Name: NASM - Aliases: - natural Name: Natural - Aliases: - ndisasm Name: NDISASM - Aliases: - newspeak Name: Newspeak - Aliases: - nginx Name: Nginx configuration file - Aliases: - nim - nimrod Name: Nim - Aliases: - nixos - nix Name: Nix - Aliases: - objective-c - objectivec - obj-c - objc Name: Objective-C - Aliases: - objectpascal Name: ObjectPascal - Aliases: - ocaml Name: OCaml - Aliases: - octave Name: Octave - Aliases: - odin Name: Odin - Aliases: - ones - onesenterprise - 1S - 1S:Enterprise Name: OnesEnterprise - Aliases: - openedge - abl - progress - openedgeabl Name: OpenEdge ABL - Aliases: - openscad Name: OpenSCAD - Aliases: - org - orgmode Name: Org Mode - Aliases: - pacmanconf Name: PacmanConf - Aliases: - perl - pl Name: Perl - Aliases: - php - php3 - php4 - php5 Name: PHP - Aliases: - phtml Name: PHTML - Aliases: - pig Name: Pig - Aliases: - pkgconfig Name: PkgConfig - Aliases: - plpgsql Name: PL/pgSQL - Aliases: - text - plain - no-highlight Name: plaintext - Aliases: - plutus-core - plc Name: Plutus Core - Aliases: - pony Name: Pony - Aliases: - postgresql - postgres Name: PostgreSQL SQL dialect - Aliases: - postscript - postscr Name: PostScript - Aliases: - pov Name: POVRay - Aliases: - powerquery - pq Name: PowerQuery - Aliases: - powershell - posh - ps1 - psm1 - psd1 - pwsh Name: PowerShell - Aliases: - prolog Name: Prolog - Aliases: - promela Name: Promela - Aliases: - promql Name: PromQL - Aliases: - java-properties Name: properties - Aliases: - protobuf - proto Name: Protocol Buffer - Aliases: - prql Name: PRQL - Aliases: - psl Name: PSL - Aliases: - puppet Name: Puppet - Aliases: - python - py - sage - python3 - py3 Name: Python - Aliases: - python2 - py2 Name: Python 2 - Aliases: - qbasic - basic Name: QBasic - Aliases: - qml - qbs Name: QML - Aliases: - splus - s - r Name: R - Aliases: - racket - rkt Name: Racket - Aliases: - ragel Name: Ragel - Aliases: - perl6 - pl6 - raku Name: Raku - Aliases: - jsx - react Name: react - Aliases: - reason - reasonml Name: ReasonML - Aliases: - registry Name: reg - Aliases: - rego Name: Rego - Aliases: - rst - rest - restructuredtext Name: reStructuredText - Aliases: - rexx - arexx Name: Rexx - Aliases: - spec Name: RPMSpec - Aliases: - rb - ruby - duby Name: Ruby - Aliases: - rust - rs Name: Rust - Aliases: - sas Name: SAS - Aliases: - sass Name: Sass - Aliases: - scala Name: Scala - Aliases: - scheme - scm Name: Scheme - Aliases: - scilab Name: Scilab - Aliases: - scss Name: SCSS - Aliases: - sed - gsed - ssed Name: Sed - Aliases: - sieve Name: Sieve - Aliases: - smali Name: Smali - Aliases: - smalltalk - squeak - st Name: Smalltalk - Aliases: - smarty Name: Smarty - Aliases: - snobol Name: Snobol - Aliases: - sol - solidity Name: Solidity - Aliases: - sp Name: SourcePawn - Aliases: - sparql Name: SPARQL - Aliases: - sql Name: SQL - Aliases: - squidconf - squid.conf - squid Name: SquidConf - Aliases: - sml Name: Standard ML - Aliases: null Name: stas - Aliases: - stylus Name: Stylus - Aliases: - svelte Name: Svelte - Aliases: - swift Name: Swift - Aliases: - systemd Name: SYSTEMD - Aliases: - systemverilog - sv Name: systemverilog - Aliases: - tablegen Name: TableGen - Aliases: - tal - uxntal Name: Tal - Aliases: - tasm Name: TASM - Aliases: - tcl Name: Tcl - Aliases: - tcsh - csh Name: Tcsh - Aliases: - termcap Name: Termcap - Aliases: - terminfo Name: Terminfo - Aliases: - terraform - tf Name: Terraform - Aliases: - tex - latex Name: TeX - Aliases: - thrift Name: Thrift - Aliases: - toml Name: TOML - Aliases: - tradingview - tv Name: TradingView - Aliases: - tsql - t-sql Name: Transact-SQL - Aliases: - turing Name: Turing - Aliases: - turtle Name: Turtle - Aliases: - twig Name: Twig - Aliases: - ts - tsx - typescript Name: TypeScript - Aliases: - typoscript Name: TypoScript - Aliases: - typoscriptcssdata Name: TypoScriptCssData - Aliases: - typoscripthtmldata Name: TypoScriptHtmlData - Aliases: null Name: ucode - Aliases: - v - vlang Name: V - Aliases: - vsh - vshell Name: V shell - Aliases: - vala - vapi Name: Vala - Aliases: - vb.net - vbnet Name: VB.net - Aliases: - verilog - v Name: verilog - Aliases: - vhdl Name: VHDL - Aliases: - vhs - tape - cassette Name: VHS - Aliases: - vim Name: VimL - Aliases: - vue - vuejs Name: vue - Aliases: null Name: WDTE - Aliases: - wgsl Name: WebGPU Shading Language - Aliases: - whiley Name: Whiley - Aliases: - xml Name: XML - Aliases: - xorg.conf Name: Xorg - Aliases: - yaml Name: YAML - Aliases: - yang Name: YANG - Aliases: - z80 Name: Z80 Assembly - Aliases: - zed Name: Zed - Aliases: - zig Name: Zig config: HTTPCache: cache: for: excludes: - '**' includes: null polls: - disable: true for: excludes: null includes: - '**' high: 0s low: 0s archeTypeDir: archetypes assetDir: assets author: {} baseURL: "" build: buildStats: disableClasses: false disableIDs: false disableTags: false enable: false cacheBusters: - source: (postcss|tailwind)\.config\.js target: (css|styles|scss|sass) noJSConfigInAssets: false useResourceCacheWhen: fallback buildDrafts: false buildExpired: false buildFuture: false cacheDir: "" caches: assets: dir: :resourceDir/_gen maxAge: -1 getcsv: dir: :cacheDir/:project maxAge: -1 getjson: dir: :cacheDir/:project maxAge: -1 getresource: dir: :cacheDir/:project maxAge: -1 images: dir: :resourceDir/_gen maxAge: -1 misc: dir: :cacheDir/:project maxAge: -1 modules: dir: :cacheDir/modules maxAge: -1 canonifyURLs: false capitalizeListTitles: true cascade: [] cleanDestinationDir: false contentDir: content copyright: "" dataDir: data defaultContentLanguage: en defaultContentLanguageInSubdir: false deployment: confirm: false dryRun: false force: false invalidateCDN: true matchers: null maxDeletes: 256 order: null target: "" targets: null workers: 10 disableAliases: false disableHugoGeneratorInject: false disableKinds: null disableLanguages: null disableLiveReload: false disablePathToLower: false enableEmoji: false enableGitInfo: false enableMissingTranslationPlaceholders: false enableRobotsTXT: false environment: production frontmatter: date: - date - publishdate - pubdate - published - lastmod - modified expiryDate: - expirydate - unpublishdate lastmod: - :git - lastmod - modified - date - publishdate - pubdate - published publishDate: - publishdate - pubdate - published - date hasCJKLanguage: false i18nDir: i18n ignoreCache: false ignoreFiles: [] ignoreLogs: null ignoreVendorPaths: "" imaging: bgColor: '#ffffff' hint: photo quality: 75 resampleFilter: box languageCode: "" languages: en: disabled: false languageCode: "" languageDirection: "" languageName: "" title: "" weight: 0 layoutDir: layouts mainSections: null markup: asciidocExt: attributes: {} backend: html5 extensions: [] failureLevel: fatal noHeaderOrFooter: true preserveTOC: false safeMode: unsafe sectionNumbers: false trace: false verbose: false workingFolderCurrent: false defaultMarkdownHandler: goldmark goldmark: duplicateResourceFiles: false extensions: cjk: eastAsianLineBreaks: false eastAsianLineBreaksStyle: simple enable: false escapedSpace: false definitionList: true extras: delete: enable: false insert: enable: false mark: enable: false subscript: enable: false superscript: enable: false footnote: true linkify: true linkifyProtocol: https passthrough: delimiters: block: [] inline: [] enable: false strikethrough: true table: true taskList: true typographer: apostrophe: '’' disable: false ellipsis: '…' emDash: '—' enDash: '–' leftAngleQuote: '«' leftDoubleQuote: '“' leftSingleQuote: '‘' rightAngleQuote: '»' rightDoubleQuote: '”' rightSingleQuote: '’' parser: attribute: block: false title: true autoHeadingID: true autoHeadingIDType: github wrapStandAloneImageWithinParagraph: true renderHooks: image: enableDefault: false link: enableDefault: false renderer: hardWraps: false unsafe: false xhtml: false highlight: anchorLineNos: false codeFences: true guessSyntax: false hl_Lines: "" hl_inline: false lineAnchors: "" lineNoStart: 1 lineNos: false lineNumbersInTable: true noClasses: true noHl: false style: monokai tabWidth: 4 tableOfContents: endLevel: 3 ordered: false startLevel: 2 mediaTypes: application/json: delimiter: . suffixes: - json application/manifest+json: delimiter: . suffixes: - webmanifest application/octet-stream: delimiter: . application/pdf: delimiter: . suffixes: - pdf application/rss+xml: delimiter: . suffixes: - xml - rss application/toml: delimiter: . suffixes: - toml application/wasm: delimiter: . suffixes: - wasm application/xml: delimiter: . suffixes: - xml application/yaml: delimiter: . suffixes: - yaml - yml font/otf: delimiter: . suffixes: - otf font/ttf: delimiter: . suffixes: - ttf image/bmp: delimiter: . suffixes: - bmp image/gif: delimiter: . suffixes: - gif image/jpeg: delimiter: . suffixes: - jpg - jpeg - jpe - jif - jfif image/png: delimiter: . suffixes: - png image/svg+xml: delimiter: . suffixes: - svg image/tiff: delimiter: . suffixes: - tif - tiff image/webp: delimiter: . suffixes: - webp text/asciidoc: delimiter: . suffixes: - adoc - asciidoc - ad text/calendar: delimiter: . suffixes: - ics text/css: delimiter: . suffixes: - css text/csv: delimiter: . suffixes: - csv text/html: delimiter: . suffixes: - html - htm text/javascript: delimiter: . suffixes: - js - jsm - mjs text/jsx: delimiter: . suffixes: - jsx text/markdown: delimiter: . suffixes: - md - mdown - markdown text/org: delimiter: . suffixes: - org text/pandoc: delimiter: . suffixes: - pandoc - pdc text/plain: delimiter: . suffixes: - txt text/rst: delimiter: . suffixes: - rst text/tsx: delimiter: . suffixes: - tsx text/typescript: delimiter: . suffixes: - ts text/x-sass: delimiter: . suffixes: - sass text/x-scss: delimiter: . suffixes: - scss video/3gpp: delimiter: . suffixes: - 3gpp - 3gp video/mp4: delimiter: . suffixes: - mp4 video/mpeg: delimiter: . suffixes: - mpg - mpeg video/ogg: delimiter: . suffixes: - ogv video/webm: delimiter: . suffixes: - webm video/x-msvideo: delimiter: . suffixes: - avi menus: {} minify: disableCSS: false disableHTML: false disableJS: false disableJSON: false disableSVG: false disableXML: false minifyOutput: false tdewolff: css: inline: false keepCSS2: true precision: 0 html: keepComments: false keepConditionalComments: false keepDefaultAttrVals: true keepDocumentTags: true keepEndTags: true keepQuotes: false keepSpecialComments: true keepWhitespace: false templateDelims: - "" - "" js: keepVarNames: false precision: 0 version: 2022 json: keepNumbers: false precision: 0 svg: inline: false keepComments: false precision: 0 xml: keepWhitespace: false module: hugoVersion: extended: false max: "" min: "" imports: null mounts: - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: content target: content - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: data target: data - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: layouts target: layouts - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: i18n target: i18n - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: archetypes target: archetypes - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: assets target: assets - disableWatch: false excludeFiles: null includeFiles: null lang: "" source: static target: static noProxy: none noVendor: "" params: null private: '*.*' proxy: direct replacements: null vendorClosest: false workspace: "off" newContentEditor: "" noBuildLock: false noChmod: false noTimes: false outputFormats: amp: baseName: index isHTML: true isPlainText: false mediaType: text/html noUgly: false notAlternative: false path: amp permalinkable: true protocol: "" rel: amphtml root: false ugly: false weight: 0 calendar: baseName: index isHTML: false isPlainText: true mediaType: text/calendar noUgly: false notAlternative: false path: "" permalinkable: false protocol: webcal:// rel: alternate root: false ugly: false weight: 0 css: baseName: styles isHTML: false isPlainText: true mediaType: text/css noUgly: false notAlternative: true path: "" permalinkable: false protocol: "" rel: stylesheet root: false ugly: false weight: 0 csv: baseName: index isHTML: false isPlainText: true mediaType: text/csv noUgly: false notAlternative: false path: "" permalinkable: false protocol: "" rel: alternate root: false ugly: false weight: 0 html: baseName: index isHTML: true isPlainText: false mediaType: text/html noUgly: false notAlternative: false path: "" permalinkable: true protocol: "" rel: canonical root: false ugly: false weight: 10 json: baseName: index isHTML: false isPlainText: true mediaType: application/json noUgly: false notAlternative: false path: "" permalinkable: false protocol: "" rel: alternate root: false ugly: false weight: 0 markdown: baseName: index isHTML: false isPlainText: true mediaType: text/markdown noUgly: false notAlternative: false path: "" permalinkable: false protocol: "" rel: alternate root: false ugly: false weight: 0 robots: baseName: robots isHTML: false isPlainText: true mediaType: text/plain noUgly: false notAlternative: false path: "" permalinkable: false protocol: "" rel: alternate root: true ugly: false weight: 0 rss: baseName: index isHTML: false isPlainText: false mediaType: application/rss+xml noUgly: true notAlternative: false path: "" permalinkable: false protocol: "" rel: alternate root: false ugly: false weight: 0 sitemap: baseName: sitemap isHTML: false isPlainText: false mediaType: application/xml noUgly: false notAlternative: false path: "" permalinkable: false protocol: "" rel: sitemap root: false ugly: true weight: 0 webappmanifest: baseName: manifest isHTML: false isPlainText: true mediaType: application/manifest+json noUgly: false notAlternative: true path: "" permalinkable: false protocol: "" rel: manifest root: false ugly: false weight: 0 outputs: home: - html - rss page: - html rss: - rss section: - html - rss taxonomy: - html - rss term: - html - rss page: nextPrevInSectionSortOrder: desc nextPrevSortOrder: desc paginate: 0 paginatePath: "" pagination: disableAliases: false pagerSize: 10 path: page panicOnWarning: false params: {} permalinks: page: {} section: {} taxonomy: {} term: {} pluralizeListTitles: true printI18nWarnings: false printPathWarnings: false printUnusedTemplates: false privacy: disqus: disable: false googleAnalytics: disable: false respectDoNotTrack: false instagram: disable: false simple: false twitter: disable: false enableDNT: false simple: false vimeo: disable: false enableDNT: false simple: false youTube: disable: false privacyEnhanced: false publishDir: public refLinksErrorLevel: "" refLinksNotFoundURL: "" related: includeNewer: false indices: - applyFilter: false cardinalityThreshold: 0 name: keywords pattern: "" toLower: false type: basic weight: 100 - applyFilter: false cardinalityThreshold: 0 name: date pattern: "" toLower: false type: basic weight: 10 - applyFilter: false cardinalityThreshold: 0 name: tags pattern: "" toLower: false type: basic weight: 80 threshold: 80 toLower: false relativeURLs: false removePathAccents: false renderSegments: null resourceDir: resources sectionPagesMenu: "" security: enableInlineShortcodes: false exec: allow: - ^(dart-)?sass(-embedded)?$ - ^go$ - ^git$ - ^npx$ - ^postcss$ - ^tailwindcss$ osEnv: - (?i)^((HTTPS?|NO)_PROXY|PATH(EXT)?|APPDATA|TE?MP|TERM|GO\w+|(XDG_CONFIG_)?HOME|USERPROFILE|SSH_AUTH_SOCK|DISPLAY|LANG|SYSTEMDRIVE)$ funcs: getenv: - ^HUGO_ - ^CI$ http: mediaTypes: null methods: - (?i)GET|POST urls: - .* segments: {} server: headers: null redirects: - force: false from: '**' status: 404 to: /404.html services: disqus: shortname: "" googleAnalytics: id: "" instagram: accessToken: "" disableInlineCSS: false rss: limit: -1 twitter: disableInlineCSS: false sitemap: changeFreq: "" disable: false filename: sitemap.xml priority: -1 social: null staticDir: - static staticDir0: null staticDir1: null staticDir2: null staticDir3: null staticDir4: null staticDir5: null staticDir6: null staticDir7: null staticDir8: null staticDir9: null staticDir10: null summaryLength: 70 taxonomies: category: categories tag: tags templateMetrics: false templateMetricsHints: false theme: null themesDir: themes timeZone: "" timeout: 30s title: "" titleCaseStyle: AP uglyURLs: false workingDir: "" config_helpers: mergeStrategy: build: _merge: none caches: _merge: none cascade: _merge: none deployment: _merge: none frontmatter: _merge: none httpcache: _merge: none imaging: _merge: none languages: _merge: none en: _merge: none menus: _merge: shallow params: _merge: deep markup: _merge: none mediatypes: _merge: shallow menus: _merge: shallow minify: _merge: none module: _merge: none outputformats: _merge: shallow outputs: _merge: none page: _merge: none pagination: _merge: none params: _merge: deep permalinks: _merge: none privacy: _merge: none related: _merge: none security: _merge: none segments: _merge: none server: _merge: none services: _merge: none sitemap: _merge: none taxonomies: _merge: none output: layouts: - Example: Single page in "posts" section Kind: page OutputFormat: html Suffix: html Template Lookup Order: - layouts/posts/single.html.html - layouts/posts/single.html - layouts/_default/single.html.html - layouts/_default/single.html - Example: Base template for single page in "posts" section Kind: page OutputFormat: html Suffix: html Template Lookup Order: - layouts/posts/single-baseof.html.html - layouts/posts/baseof.html.html - layouts/posts/single-baseof.html - layouts/posts/baseof.html - layouts/_default/single-baseof.html.html - layouts/_default/baseof.html.html - layouts/_default/single-baseof.html - layouts/_default/baseof.html - Example: Single page in "posts" section with layout set to "demolayout" Kind: page OutputFormat: html Suffix: html Template Lookup Order: - layouts/posts/demolayout.html.html - layouts/posts/single.html.html - layouts/posts/demolayout.html - layouts/posts/single.html - layouts/_default/demolayout.html.html - layouts/_default/single.html.html - layouts/_default/demolayout.html - layouts/_default/single.html - Example: Base template for single page in "posts" section with layout set to "demolayout" Kind: page OutputFormat: html Suffix: html Template Lookup Order: - layouts/posts/demolayout-baseof.html.html - layouts/posts/single-baseof.html.html - layouts/posts/baseof.html.html - layouts/posts/demolayout-baseof.html - layouts/posts/single-baseof.html - layouts/posts/baseof.html - layouts/_default/demolayout-baseof.html.html - layouts/_default/single-baseof.html.html - layouts/_default/baseof.html.html - layouts/_default/demolayout-baseof.html - layouts/_default/single-baseof.html - layouts/_default/baseof.html - Example: AMP single page in "posts" section Kind: page OutputFormat: amp Suffix: html Template Lookup Order: - layouts/posts/single.amp.html - layouts/posts/single.html - layouts/_default/single.amp.html - layouts/_default/single.html - Example: AMP single page in "posts" section, French language Kind: page OutputFormat: amp Suffix: html Template Lookup Order: - layouts/posts/single.fr.amp.html - layouts/posts/single.amp.html - layouts/posts/single.fr.html - layouts/posts/single.html - layouts/_default/single.fr.amp.html - layouts/_default/single.amp.html - layouts/_default/single.fr.html - layouts/_default/single.html - Example: Home page Kind: home OutputFormat: html Suffix: html Template Lookup Order: - layouts/index.html.html - layouts/home.html.html - layouts/list.html.html - layouts/index.html - layouts/home.html - layouts/list.html - layouts/_default/index.html.html - layouts/_default/home.html.html - layouts/_default/list.html.html - layouts/_default/index.html - layouts/_default/home.html - layouts/_default/list.html - Example: Base template for home page Kind: home OutputFormat: html Suffix: html Template Lookup Order: - layouts/index-baseof.html.html - layouts/home-baseof.html.html - layouts/list-baseof.html.html - layouts/baseof.html.html - layouts/index-baseof.html - layouts/home-baseof.html - layouts/list-baseof.html - layouts/baseof.html - layouts/_default/index-baseof.html.html - layouts/_default/home-baseof.html.html - layouts/_default/list-baseof.html.html - layouts/_default/baseof.html.html - layouts/_default/index-baseof.html - layouts/_default/home-baseof.html - layouts/_default/list-baseof.html - layouts/_default/baseof.html - Example: Home page with type set to "demotype" Kind: home OutputFormat: html Suffix: html Template Lookup Order: - layouts/demotype/index.html.html - layouts/demotype/home.html.html - layouts/demotype/list.html.html - layouts/demotype/index.html - layouts/demotype/home.html - layouts/demotype/list.html - layouts/index.html.html - layouts/home.html.html - layouts/list.html.html - layouts/index.html - layouts/home.html - layouts/list.html - layouts/_default/index.html.html - layouts/_default/home.html.html - layouts/_default/list.html.html - layouts/_default/index.html - layouts/_default/home.html - layouts/_default/list.html - Example: Base template for home page with type set to "demotype" Kind: home OutputFormat: html Suffix: html Template Lookup Order: - layouts/demotype/index-baseof.html.html - layouts/demotype/home-baseof.html.html - layouts/demotype/list-baseof.html.html - layouts/demotype/baseof.html.html - layouts/demotype/index-baseof.html - layouts/demotype/home-baseof.html - layouts/demotype/list-baseof.html - layouts/demotype/baseof.html - layouts/index-baseof.html.html - layouts/home-baseof.html.html - layouts/list-baseof.html.html - layouts/baseof.html.html - layouts/index-baseof.html - layouts/home-baseof.html - layouts/list-baseof.html - layouts/baseof.html - layouts/_default/index-baseof.html.html - layouts/_default/home-baseof.html.html - layouts/_default/list-baseof.html.html - layouts/_default/baseof.html.html - layouts/_default/index-baseof.html - layouts/_default/home-baseof.html - layouts/_default/list-baseof.html - layouts/_default/baseof.html - Example: Home page with layout set to "demolayout" Kind: home OutputFormat: html Suffix: html Template Lookup Order: - layouts/demolayout.html.html - layouts/index.html.html - layouts/home.html.html - layouts/list.html.html - layouts/demolayout.html - layouts/index.html - layouts/home.html - layouts/list.html - layouts/_default/demolayout.html.html - layouts/_default/index.html.html - layouts/_default/home.html.html - layouts/_default/list.html.html - layouts/_default/demolayout.html - layouts/_default/index.html - layouts/_default/home.html - layouts/_default/list.html - Example: AMP home, French language Kind: home OutputFormat: amp Suffix: html Template Lookup Order: - layouts/index.fr.amp.html - layouts/home.fr.amp.html - layouts/list.fr.amp.html - layouts/index.amp.html - layouts/home.amp.html - layouts/list.amp.html - layouts/index.fr.html - layouts/home.fr.html - layouts/list.fr.html - layouts/index.html - layouts/home.html - layouts/list.html - layouts/_default/index.fr.amp.html - layouts/_default/home.fr.amp.html - layouts/_default/list.fr.amp.html - layouts/_default/index.amp.html - layouts/_default/home.amp.html - layouts/_default/list.amp.html - layouts/_default/index.fr.html - layouts/_default/home.fr.html - layouts/_default/list.fr.html - layouts/_default/index.html - layouts/_default/home.html - layouts/_default/list.html - Example: JSON home Kind: home OutputFormat: json Suffix: json Template Lookup Order: - layouts/index.json.json - layouts/home.json.json - layouts/list.json.json - layouts/index.json - layouts/home.json - layouts/list.json - layouts/_default/index.json.json - layouts/_default/home.json.json - layouts/_default/list.json.json - layouts/_default/index.json - layouts/_default/home.json - layouts/_default/list.json - Example: RSS home Kind: home OutputFormat: rss Suffix: xml Template Lookup Order: - layouts/index.rss.xml - layouts/home.rss.xml - layouts/rss.xml - layouts/list.rss.xml - layouts/index.xml - layouts/home.xml - layouts/list.xml - layouts/_default/index.rss.xml - layouts/_default/home.rss.xml - layouts/_default/rss.xml - layouts/_default/list.rss.xml - layouts/_default/index.xml - layouts/_default/home.xml - layouts/_default/list.xml - layouts/_internal/_default/rss.xml - Example: Section list for "posts" Kind: section OutputFormat: html Suffix: html Template Lookup Order: - layouts/posts/posts.html.html - layouts/posts/section.html.html - layouts/posts/list.html.html - layouts/posts/posts.html - layouts/posts/section.html - layouts/posts/list.html - layouts/section/posts.html.html - layouts/section/section.html.html - layouts/section/list.html.html - layouts/section/posts.html - layouts/section/section.html - layouts/section/list.html - layouts/_default/posts.html.html - layouts/_default/section.html.html - layouts/_default/list.html.html - layouts/_default/posts.html - layouts/_default/section.html - layouts/_default/list.html - Example: Section list for "posts" with type set to "blog" Kind: section OutputFormat: html Suffix: html Template Lookup Order: - layouts/blog/posts.html.html - layouts/blog/section.html.html - layouts/blog/list.html.html - layouts/blog/posts.html - layouts/blog/section.html - layouts/blog/list.html - layouts/posts/posts.html.html - layouts/posts/section.html.html - layouts/posts/list.html.html - layouts/posts/posts.html - layouts/posts/section.html - layouts/posts/list.html - layouts/section/posts.html.html - layouts/section/section.html.html - layouts/section/list.html.html - layouts/section/posts.html - layouts/section/section.html - layouts/section/list.html - layouts/_default/posts.html.html - layouts/_default/section.html.html - layouts/_default/list.html.html - layouts/_default/posts.html - layouts/_default/section.html - layouts/_default/list.html - Example: Section list for "posts" with layout set to "demolayout" Kind: section OutputFormat: html Suffix: html Template Lookup Order: - layouts/posts/demolayout.html.html - layouts/posts/posts.html.html - layouts/posts/section.html.html - layouts/posts/list.html.html - layouts/posts/demolayout.html - layouts/posts/posts.html - layouts/posts/section.html - layouts/posts/list.html - layouts/section/demolayout.html.html - layouts/section/posts.html.html - layouts/section/section.html.html - layouts/section/list.html.html - layouts/section/demolayout.html - layouts/section/posts.html - layouts/section/section.html - layouts/section/list.html - layouts/_default/demolayout.html.html - layouts/_default/posts.html.html - layouts/_default/section.html.html - layouts/_default/list.html.html - layouts/_default/demolayout.html - layouts/_default/posts.html - layouts/_default/section.html - layouts/_default/list.html - Example: Section list for "posts" Kind: section OutputFormat: rss Suffix: xml Template Lookup Order: - layouts/posts/section.rss.xml - layouts/posts/rss.xml - layouts/posts/list.rss.xml - layouts/posts/section.xml - layouts/posts/list.xml - layouts/section/section.rss.xml - layouts/section/rss.xml - layouts/section/list.rss.xml - layouts/section/section.xml - layouts/section/list.xml - layouts/_default/section.rss.xml - layouts/_default/rss.xml - layouts/_default/list.rss.xml - layouts/_default/section.xml - layouts/_default/list.xml - layouts/_internal/_default/rss.xml - Example: Taxonomy list for "categories" Kind: taxonomy OutputFormat: html Suffix: html Template Lookup Order: - layouts/categories/category.terms.html.html - layouts/categories/terms.html.html - layouts/categories/taxonomy.html.html - layouts/categories/list.html.html - layouts/categories/category.terms.html - layouts/categories/terms.html - layouts/categories/taxonomy.html - layouts/categories/list.html - layouts/category/category.terms.html.html - layouts/category/terms.html.html - layouts/category/taxonomy.html.html - layouts/category/list.html.html - layouts/category/category.terms.html - layouts/category/terms.html - layouts/category/taxonomy.html - layouts/category/list.html - layouts/taxonomy/category.terms.html.html - layouts/taxonomy/terms.html.html - layouts/taxonomy/taxonomy.html.html - layouts/taxonomy/list.html.html - layouts/taxonomy/category.terms.html - layouts/taxonomy/terms.html - layouts/taxonomy/taxonomy.html - layouts/taxonomy/list.html - layouts/_default/category.terms.html.html - layouts/_default/terms.html.html - layouts/_default/taxonomy.html.html - layouts/_default/list.html.html - layouts/_default/category.terms.html - layouts/_default/terms.html - layouts/_default/taxonomy.html - layouts/_default/list.html - Example: Taxonomy list for "categories" Kind: taxonomy OutputFormat: rss Suffix: xml Template Lookup Order: - layouts/categories/category.terms.rss.xml - layouts/categories/terms.rss.xml - layouts/categories/taxonomy.rss.xml - layouts/categories/rss.xml - layouts/categories/list.rss.xml - layouts/categories/category.terms.xml - layouts/categories/terms.xml - layouts/categories/taxonomy.xml - layouts/categories/list.xml - layouts/category/category.terms.rss.xml - layouts/category/terms.rss.xml - layouts/category/taxonomy.rss.xml - layouts/category/rss.xml - layouts/category/list.rss.xml - layouts/category/category.terms.xml - layouts/category/terms.xml - layouts/category/taxonomy.xml - layouts/category/list.xml - layouts/taxonomy/category.terms.rss.xml - layouts/taxonomy/terms.rss.xml - layouts/taxonomy/taxonomy.rss.xml - layouts/taxonomy/rss.xml - layouts/taxonomy/list.rss.xml - layouts/taxonomy/category.terms.xml - layouts/taxonomy/terms.xml - layouts/taxonomy/taxonomy.xml - layouts/taxonomy/list.xml - layouts/_default/category.terms.rss.xml - layouts/_default/terms.rss.xml - layouts/_default/taxonomy.rss.xml - layouts/_default/rss.xml - layouts/_default/list.rss.xml - layouts/_default/category.terms.xml - layouts/_default/terms.xml - layouts/_default/taxonomy.xml - layouts/_default/list.xml - layouts/_internal/_default/rss.xml - Example: Term list for "categories" Kind: term OutputFormat: html Suffix: html Template Lookup Order: - layouts/categories/term.html.html - layouts/categories/category.html.html - layouts/categories/taxonomy.html.html - layouts/categories/list.html.html - layouts/categories/term.html - layouts/categories/category.html - layouts/categories/taxonomy.html - layouts/categories/list.html - layouts/term/term.html.html - layouts/term/category.html.html - layouts/term/taxonomy.html.html - layouts/term/list.html.html - layouts/term/term.html - layouts/term/category.html - layouts/term/taxonomy.html - layouts/term/list.html - layouts/taxonomy/term.html.html - layouts/taxonomy/category.html.html - layouts/taxonomy/taxonomy.html.html - layouts/taxonomy/list.html.html - layouts/taxonomy/term.html - layouts/taxonomy/category.html - layouts/taxonomy/taxonomy.html - layouts/taxonomy/list.html - layouts/category/term.html.html - layouts/category/category.html.html - layouts/category/taxonomy.html.html - layouts/category/list.html.html - layouts/category/term.html - layouts/category/category.html - layouts/category/taxonomy.html - layouts/category/list.html - layouts/_default/term.html.html - layouts/_default/category.html.html - layouts/_default/taxonomy.html.html - layouts/_default/list.html.html - layouts/_default/term.html - layouts/_default/category.html - layouts/_default/taxonomy.html - layouts/_default/list.html - Example: Term list for "categories" Kind: term OutputFormat: rss Suffix: xml Template Lookup Order: - layouts/categories/term.rss.xml - layouts/categories/category.rss.xml - layouts/categories/taxonomy.rss.xml - layouts/categories/rss.xml - layouts/categories/list.rss.xml - layouts/categories/term.xml - layouts/categories/category.xml - layouts/categories/taxonomy.xml - layouts/categories/list.xml - layouts/term/term.rss.xml - layouts/term/category.rss.xml - layouts/term/taxonomy.rss.xml - layouts/term/rss.xml - layouts/term/list.rss.xml - layouts/term/term.xml - layouts/term/category.xml - layouts/term/taxonomy.xml - layouts/term/list.xml - layouts/taxonomy/term.rss.xml - layouts/taxonomy/category.rss.xml - layouts/taxonomy/taxonomy.rss.xml - layouts/taxonomy/rss.xml - layouts/taxonomy/list.rss.xml - layouts/taxonomy/term.xml - layouts/taxonomy/category.xml - layouts/taxonomy/taxonomy.xml - layouts/taxonomy/list.xml - layouts/category/term.rss.xml - layouts/category/category.rss.xml - layouts/category/taxonomy.rss.xml - layouts/category/rss.xml - layouts/category/list.rss.xml - layouts/category/term.xml - layouts/category/category.xml - layouts/category/taxonomy.xml - layouts/category/list.xml - layouts/_default/term.rss.xml - layouts/_default/category.rss.xml - layouts/_default/taxonomy.rss.xml - layouts/_default/rss.xml - layouts/_default/list.rss.xml - layouts/_default/term.xml - layouts/_default/category.xml - layouts/_default/taxonomy.xml - layouts/_default/list.xml - layouts/_internal/_default/rss.xml tpl: funcs: cast: ToFloat: Aliases: - float Args: - v Description: ToFloat converts v to a float. Examples: - - '{{ "1234" | float | printf "%T" }}' - float64 ToInt: Aliases: - int Args: - v Description: ToInt converts v to an int. Examples: - - '{{ "1234" | int | printf "%T" }}' - int ToString: Aliases: - string Args: - v Description: ToString converts v to a string. Examples: - - '{{ 1234 | string | printf "%T" }}' - string collections: After: Aliases: - after Args: - "n" - l Description: After returns all the items after the first n items in list l. Examples: [] Append: Aliases: - append Args: - args Description: "Append appends args up to the last one to the slice in the last argument.\nThis construct allows template constructs like this:\n\n\t{{ $pages = $pages | append $p2 $p1 }}\n\nNote that with 2 arguments where both are slices of the same type,\nthe first slice will be appended to the second:\n\n\t{{ $pages = $pages | append .Site.RegularPages }}" Examples: [] Apply: Aliases: - apply Args: - ctx - c - fname - args Description: Apply takes an array or slice c and returns a new slice with the function fname applied over it. Examples: [] Complement: Aliases: - complement Args: - ls Description: "Complement gives the elements in the last element of ls that are not in\nany of the others.\n\nAll elements of ls must be slices or arrays of comparable types.\n\nThe reasoning behind this rather clumsy API is so we can do this in the templates:\n\n\t{{ $c := .Pages | complement $last4 }}" Examples: - - '{{ slice "a" "b" "c" "d" "e" "f" | complement (slice "b" "c") (slice "d" "e") }}' - '[a f]' Delimit: Aliases: - delimit Args: - ctx - l - sep - last Description: |- Delimit takes a given list l and returns a string delimited by sep. If last is passed to the function, it will be used as the final delimiter. Examples: - - '{{ delimit (slice "A" "B" "C") ", " " and " }}' - A, B and C Dictionary: Aliases: - dict Args: - values Description: |- Dictionary creates a new map from the given parameters by treating values as key-value pairs. The number of values must be even. The keys can be string slices, which will create the needed nested structure. Examples: [] First: Aliases: - first Args: - limit - l Description: First returns the first limit items in list l. Examples: [] Group: Aliases: - group Args: - key - items Description: |- Group groups a set of items by the given key. This is currently only supported for Pages. Examples: [] In: Aliases: - in Args: - l - v Description: In returns whether v is in the list l. l may be an array or slice. Examples: - - '{{ if in "this string contains a substring" "substring" }}Substring found!{{ end }}' - Substring found! Index: Aliases: - index Args: - item - args Description: |- Index returns the result of indexing its first argument by the following arguments. Thus "index x 1 2 3" is, in Go syntax, x[1][2][3]. Each indexed item must be a map, slice, or array. Adapted from Go stdlib src/text/template/funcs.go. We deviate from the stdlib mostly because of https://github.com/golang/go/issues/14751. Examples: [] Intersect: Aliases: - intersect Args: - l1 - l2 Description: |- Intersect returns the common elements in the given sets, l1 and l2. l1 and l2 must be of the same type and may be either arrays or slices. Examples: [] IsSet: Aliases: - isSet - isset Args: - c - key Description: |- IsSet returns whether a given array, channel, slice, or map in c has the given key defined. Examples: [] KeyVals: Aliases: - keyVals Args: - key - values Description: KeyVals creates a key and values wrapper. Examples: - - '{{ keyVals "key" "a" "b" }}' - 'key: [a b]' Last: Aliases: - last Args: - limit - l Description: Last returns the last limit items in the list l. Examples: [] Merge: Aliases: - merge Args: - params Description: |- Merge creates a copy of the final parameter in params and merges the preceding parameters into it in reverse order. Currently only maps are supported. Key handling is case insensitive. Examples: - - '{{ dict "title" "Hugo Rocks!" | collections.Merge (dict "title" "Default Title" "description" "Yes, Hugo Rocks!") | sort }}' - '[Yes, Hugo Rocks! Hugo Rocks!]' - - '{{ merge (dict "title" "Default Title" "description" "Yes, Hugo Rocks!") (dict "title" "Hugo Rocks!") | sort }}' - '[Yes, Hugo Rocks! Hugo Rocks!]' - - '{{ merge (dict "title" "Default Title" "description" "Yes, Hugo Rocks!") (dict "title" "Hugo Rocks!") (dict "extra" "For reals!") | sort }}' - '[Yes, Hugo Rocks! For reals! Hugo Rocks!]' NewScratch: Aliases: - newScratch Args: null Description: |- NewScratch creates a new Scratch which can be used to store values in a thread safe way. Examples: - - '{{ $scratch := newScratch }}{{ $scratch.Add "b" 2 }}{{ $scratch.Add "b" 2 }}{{ $scratch.Get "b" }}' - "4" Querify: Aliases: - querify Args: - params Description: Querify encodes the given params in URL-encoded form ("bar=baz&foo=quux") sorted by key. Examples: - - '{{ (querify "foo" 1 "bar" 2 "baz" "with spaces" "qux" "this&that=those") | safeHTML }}' - bar=2&baz=with+spaces&foo=1&qux=this%26that%3Dthose - - Search - Search - - '{{ slice "foo" 1 "bar" 2 | querify | safeHTML }}' - bar=2&foo=1 Reverse: Aliases: null Args: null Description: "" Examples: null Seq: Aliases: - seq Args: - args Description: "Seq creates a sequence of integers from args. It's named and used as GNU's seq.\n\nExamples:\n\n\t3 => 1, 2, 3\n\t1 2 4 => 1, 3\n\t-3 => -1, -2, -3\n\t1 4 => 1, 2, 3, 4\n\t1 -2 => 1, 0, -1, -2" Examples: - - '{{ seq 3 }}' - '[1 2 3]' Shuffle: Aliases: - shuffle Args: - l Description: Shuffle returns list l in a randomized order. Examples: [] Slice: Aliases: - slice Args: - args Description: Slice returns a slice of all passed arguments. Examples: - - '{{ slice "B" "C" "A" | sort }}' - '[A B C]' Sort: Aliases: - sort Args: - ctx - l - args Description: Sort returns a sorted copy of the list l. Examples: [] SymDiff: Aliases: - symdiff Args: - s2 - s1 Description: |- SymDiff returns the symmetric difference of s1 and s2. Arguments must be either a slice or an array of comparable types. Examples: - - '{{ slice 1 2 3 | symdiff (slice 3 4) }}' - '[1 2 4]' Union: Aliases: - union Args: - l1 - l2 Description: |- Union returns the union of the given sets, l1 and l2. l1 and l2 must be of the same type and may be either arrays or slices. If l1 and l2 aren't of the same type then l1 will be returned. If either l1 or l2 is nil then the non-nil list will be returned. Examples: - - '{{ union (slice 1 2 3) (slice 3 4 5) }}' - '[1 2 3 4 5]' Uniq: Aliases: - uniq Args: - l Description: Uniq returns a new list with duplicate elements in the list l removed. Examples: - - '{{ slice 1 2 3 2 | uniq }}' - '[1 2 3]' Where: Aliases: - where Args: - ctx - c - key - args Description: Where returns a filtered subset of collection c. Examples: [] compare: Conditional: Aliases: - cond Args: - cond - v1 - v2 Description: |- Conditional can be used as a ternary operator. It returns v1 if cond is true, else v2. Examples: - - '{{ cond (eq (add 2 2) 4) "2+2 is 4" "what?" | safeHTML }}' - 2+2 is 4 Default: Aliases: - default Args: - defaultv - givenv Description: |- Default checks whether a givenv is set and returns the default value defaultv if it is not. "Set" in this context means non-zero for numeric types and times; non-zero length for strings, arrays, slices, and maps; any boolean or struct value; or non-nil for any other types. Examples: - - '{{ "Hugo Rocks!" | default "Hugo Rules!" }}' - Hugo Rocks! - - '{{ "" | default "Hugo Rules!" }}' - Hugo Rules! Eq: Aliases: - eq Args: - first - others Description: Eq returns the boolean truth of arg1 == arg2 || arg1 == arg3 || arg1 == arg4. Examples: - - '{{ if eq .Section "blog" }}current-section{{ end }}' - current-section Ge: Aliases: - ge Args: - first - others Description: Ge returns the boolean truth of arg1 >= arg2 && arg1 >= arg3 && arg1 >= arg4. Examples: - - '{{ if ge hugo.Version "0.80" }}Reasonable new Hugo version!{{ end }}' - Reasonable new Hugo version! Gt: Aliases: - gt Args: - first - others Description: Gt returns the boolean truth of arg1 > arg2 && arg1 > arg3 && arg1 > arg4. Examples: [] Le: Aliases: - le Args: - first - others Description: Le returns the boolean truth of arg1 <= arg2 && arg1 <= arg3 && arg1 <= arg4. Examples: [] Lt: Aliases: - lt Args: - first - others Description: Lt returns the boolean truth of arg1 < arg2 && arg1 < arg3 && arg1 < arg4. Examples: [] LtCollate: Aliases: null Args: null Description: "" Examples: null Ne: Aliases: - ne Args: - first - others Description: Ne returns the boolean truth of arg1 != arg2 && arg1 != arg3 && arg1 != arg4. Examples: [] crypto: FNV32a: Aliases: null Args: null Description: "" Examples: null HMAC: Aliases: - hmac Args: - h - k - m - e Description: HMAC returns a cryptographic hash that uses a key to sign a message. Examples: - - '{{ hmac "sha256" "Secret key" "Hello world, gophers!" }}' - b6d11b6c53830b9d87036272ca9fe9d19306b8f9d8aa07b15da27d89e6e34f40 MD5: Aliases: - md5 Args: - v Description: MD5 hashes the v and returns its MD5 checksum. Examples: - - '{{ md5 "Hello world, gophers!" }}' - b3029f756f98f79e7f1b7f1d1f0dd53b - - '{{ crypto.MD5 "Hello world, gophers!" }}' - b3029f756f98f79e7f1b7f1d1f0dd53b SHA1: Aliases: - sha1 Args: - v Description: SHA1 hashes v and returns its SHA1 checksum. Examples: - - '{{ sha1 "Hello world, gophers!" }}' - c8b5b0e33d408246e30f53e32b8f7627a7a649d4 SHA256: Aliases: - sha256 Args: - v Description: SHA256 hashes v and returns its SHA256 checksum. Examples: - - '{{ sha256 "Hello world, gophers!" }}' - 6ec43b78da9669f50e4e422575c54bf87536954ccd58280219c393f2ce352b46 css: PostCSS: Aliases: - postCSS Args: - args Description: PostCSS processes the given Resource with PostCSS. Examples: [] Quoted: Aliases: null Args: null Description: "" Examples: null Sass: Aliases: - toCSS Args: - args Description: Sass processes the given Resource with SASS. Examples: [] TailwindCSS: Aliases: null Args: null Description: "" Examples: null Unquoted: Aliases: null Args: null Description: "" Examples: null data: GetCSV: Aliases: - getCSV Args: - sep - args Description: |- GetCSV expects the separator sep and one or n-parts of a URL to a resource which can either be a local or a remote one. The data separator can be a comma, semi-colon, pipe, etc, but only one character. If you provide multiple parts for the URL they will be joined together to the final URL. GetCSV returns nil or a slice slice to use in a short code. Examples: [] GetJSON: Aliases: - getJSON Args: - args Description: |- GetJSON expects one or n-parts of a URL in args to a resource which can either be a local or a remote one. If you provide multiple parts they will be joined together to the final URL. GetJSON returns nil or parsed JSON to use in a short code. Examples: [] debug: Dump: Aliases: null Args: - val Description: |- Dump returns a object dump of val as a string. Note that not every value passed to Dump will print so nicely, but we'll improve on that. We recommend using the "go" Chroma lexer to format the output nicely. Also note that the output from Dump may change from Hugo version to the next, so don't depend on a specific output. Examples: - - |- {{ $m := newScratch }} {{ $m.Set "Hugo" "Rocks!" }} {{ $m.Values | debug.Dump | safeHTML }} - |- { "Hugo": "Rocks!" } TestDeprecationErr: Aliases: null Args: null Description: "" Examples: null TestDeprecationInfo: Aliases: null Args: null Description: "" Examples: null TestDeprecationWarn: Aliases: null Args: null Description: "" Examples: null Timer: Aliases: null Args: null Description: "" Examples: null VisualizeSpaces: Aliases: null Args: null Description: "" Examples: null diagrams: Goat: Aliases: null Args: null Description: "" Examples: null encoding: Base64Decode: Aliases: - base64Decode Args: - content Description: Base64Decode returns the base64 decoding of the given content. Examples: - - '{{ "SGVsbG8gd29ybGQ=" | base64Decode }}' - Hello world - - '{{ 42 | base64Encode | base64Decode }}' - "42" Base64Encode: Aliases: - base64Encode Args: - content Description: Base64Encode returns the base64 encoding of the given content. Examples: - - '{{ "Hello world" | base64Encode }}' - SGVsbG8gd29ybGQ= Jsonify: Aliases: - jsonify Args: - args Description: |- Jsonify encodes a given object to JSON. To pretty print the JSON, pass a map or dictionary of options as the first value in args. 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. Examples: - - '{{ (slice "A" "B" "C") | jsonify }}' - '["A","B","C"]' - - '{{ (slice "A" "B" "C") | jsonify (dict "indent" " ") }}' - |- [ "A", "B", "C" ] fmt: Errorf: Aliases: - errorf Args: - format - args Description: |- Errorf formats args according to a format specifier and logs an ERROR. It returns an empty string. Examples: - - '{{ errorf "%s." "failed" }}' - "" Erroridf: Aliases: - erroridf Args: - id - format - args Description: |- Erroridf formats args according to a format specifier and logs an ERROR and an information text that the error with the given id can be suppressed in config. It returns an empty string. Examples: - - '{{ erroridf "my-err-id" "%s." "failed" }}' - "" Errormf: Aliases: null Args: null Description: "" Examples: null Print: Aliases: - print Args: - args Description: Print returns a string representation of args. Examples: - - '{{ print "works!" }}' - works! Printf: Aliases: - printf Args: - format - args Description: Printf returns string representation of args formatted with the layout in format. Examples: - - '{{ printf "%s!" "works" }}' - works! Println: Aliases: - println Args: - args Description: Println returns string representation of args ending with a newline. Examples: - - '{{ println "works!" }}' - | works! Warnf: Aliases: - warnf Args: - format - args Description: |- Warnf formats args according to a format specifier and logs a WARNING. It returns an empty string. Examples: - - '{{ warnf "%s." "warning" }}' - "" Warnidf: Aliases: - warnidf Args: - id - format - args Description: |- Warnidf formats args according to a format specifier and logs an WARNING and an information text that the warning with the given id can be suppressed in config. It returns an empty string. Examples: - - '{{ warnidf "my-warn-id" "%s." "warning" }}' - "" Warnmf: Aliases: null Args: null Description: "" Examples: null hash: FNV32a: Aliases: null Args: - v Description: FNV32a hashes v using fnv32a algorithm. Examples: - - '{{ hash.FNV32a "Hugo Rocks!!" }}' - "1515779328" XxHash: Aliases: - xxhash Args: - v Description: XxHash returns the xxHash of the input string. Examples: - - '{{ hash.XxHash "The quick brown fox jumps over the lazy dog" }}' - 0b242d361fda71bc hugo: Deps: Aliases: null Args: null Description: "" Examples: null Generator: Aliases: null Args: null Description: "" Examples: null IsDevelopment: Aliases: null Args: null Description: "" Examples: null IsExtended: Aliases: null Args: null Description: "" Examples: null IsMultiHost: Aliases: null Args: null Description: "" Examples: null IsMultihost: Aliases: null Args: null Description: "" Examples: null IsMultilingual: Aliases: null Args: null Description: "" Examples: null IsProduction: Aliases: null Args: null Description: "" Examples: null IsServer: Aliases: null Args: null Description: "" Examples: null Store: Aliases: null Args: null Description: "" Examples: null Version: Aliases: null Args: null Description: "" Examples: null WorkingDir: Aliases: null Args: null Description: "" Examples: null images: AutoOrient: Aliases: null Args: null Description: "" Examples: null Brightness: Aliases: null Args: null Description: "" Examples: null ColorBalance: Aliases: null Args: null Description: "" Examples: null Colorize: Aliases: null Args: null Description: "" Examples: null Config: Aliases: - imageConfig Args: - path Description: |- Config returns the image.Config for the specified path relative to the working directory. Examples: [] Contrast: Aliases: null Args: null Description: "" Examples: null Dither: Aliases: null Args: null Description: "" Examples: null Filter: Aliases: null Args: null Description: "" Examples: null Gamma: Aliases: null Args: null Description: "" Examples: null GaussianBlur: Aliases: null Args: null Description: "" Examples: null Grayscale: Aliases: null Args: null Description: "" Examples: null Hue: Aliases: null Args: null Description: "" Examples: null Invert: Aliases: null Args: null Description: "" Examples: null Opacity: Aliases: null Args: null Description: "" Examples: null Overlay: Aliases: null Args: null Description: "" Examples: null Padding: Aliases: null Args: null Description: "" Examples: null Pixelate: Aliases: null Args: null Description: "" Examples: null Process: Aliases: null Args: null Description: "" Examples: null Saturation: Aliases: null Args: null Description: "" Examples: null Sepia: Aliases: null Args: null Description: "" Examples: null Sigmoid: Aliases: null Args: null Description: "" Examples: null Text: Aliases: null Args: null Description: "" Examples: null UnsharpMask: Aliases: null Args: null Description: "" Examples: null inflect: Humanize: Aliases: - humanize Args: - v Description: |- Humanize returns the humanized form of v. If v is either an integer or a string containing an integer value, the behavior is to add the appropriate ordinal. Examples: - - '{{ humanize "my-first-post" }}' - My first post - - '{{ humanize "myCamelPost" }}' - My camel post - - '{{ humanize "52" }}' - 52nd - - '{{ humanize 103 }}' - 103rd Pluralize: Aliases: - pluralize Args: - v Description: Pluralize returns the plural form of the single word in v. Examples: - - '{{ "cat" | pluralize }}' - cats Singularize: Aliases: - singularize Args: - v Description: Singularize returns the singular form of a single word in v. Examples: - - '{{ "cats" | singularize }}' - cat js: Babel: Aliases: - babel Args: - args Description: Babel processes the given Resource with Babel. Examples: [] Build: Aliases: null Args: null Description: "" Examples: null lang: FormatAccounting: Aliases: null Args: - precision - currency - number Description: |- FormatAccounting returns the currency representation of number for the given currency and precision for the current language in accounting notation. The return value is formatted with at least two decimal places. Examples: - - '{{ 512.5032 | lang.FormatAccounting 2 "NOK" }}' - NOK512.50 FormatCurrency: Aliases: null Args: - precision - currency - number Description: |- FormatCurrency returns the currency representation of number for the given currency and precision for the current language. The return value is formatted with at least two decimal places. Examples: - - '{{ 512.5032 | lang.FormatCurrency 2 "USD" }}' - $512.50 FormatNumber: Aliases: null Args: - precision - number Description: FormatNumber formats number with the given precision for the current language. Examples: - - '{{ 512.5032 | lang.FormatNumber 2 }}' - "512.50" FormatNumberCustom: Aliases: null Args: - precision - number - options Description: |- FormatNumberCustom formats a number with the given precision. The first options parameter is a space-delimited string of characters to represent negativity, the decimal point, and grouping. The default value is `- . ,`. The second options parameter defines an alternate delimiting character. Note that numbers are rounded up at 5 or greater. So, with precision set to 0, 1.5 becomes `2`, and 1.4 becomes `1`. For a simpler function that adapts to the current language, see FormatNumber. Examples: - - '{{ lang.FormatNumberCustom 2 12345.6789 }}' - 12,345.68 - - '{{ lang.FormatNumberCustom 2 12345.6789 "- , ." }}' - 12.345,68 - - '{{ lang.FormatNumberCustom 6 -12345.6789 "- ." }}' - "-12345.678900" - - '{{ lang.FormatNumberCustom 0 -12345.6789 "- . ," }}' - -12,346 - - '{{ lang.FormatNumberCustom 0 -12345.6789 "-|.| " "|" }}' - -12 346 - - '{{ -98765.4321 | lang.FormatNumberCustom 2 }}' - -98,765.43 FormatPercent: Aliases: null Args: - precision - number Description: |- FormatPercent formats number with the given precision for the current language. Note that the number is assumed to be a percentage. Examples: - - '{{ 512.5032 | lang.FormatPercent 2 }}' - 512.50% Merge: Aliases: null Args: null Description: "" Examples: null Translate: Aliases: - i18n - T Args: - ctx - id - args Description: Translate returns a translated string for id. Examples: [] math: Abs: Aliases: null Args: - "n" Description: Abs returns the absolute value of n. Examples: - - '{{ math.Abs -2.1 }}' - "2.1" Acos: Aliases: null Args: - "n" Description: Acos returns the arccosine, in radians, of n. Examples: - - '{{ math.Acos 1 }}' - "0" Add: Aliases: - add Args: - inputs Description: Add adds the multivalued addends n1 and n2 or more values. Examples: - - '{{ add 1 2 }}' - "3" Asin: Aliases: null Args: - "n" Description: Asin returns the arcsine, in radians, of n. Examples: - - '{{ math.Asin 1 }}' - "1.5707963267948966" Atan: Aliases: null Args: - "n" Description: Atan returns the arctangent, in radians, of n. Examples: - - '{{ math.Atan 1 }}' - "0.7853981633974483" Atan2: Aliases: null Args: - "n" - m Description: Atan2 returns the arc tangent of n/m, using the signs of the two to determine the quadrant of the return value. Examples: - - '{{ math.Atan2 1 2 }}' - "0.4636476090008061" Ceil: Aliases: null Args: - "n" Description: Ceil returns the least integer value greater than or equal to n. Examples: - - '{{ math.Ceil 2.1 }}' - "3" Cos: Aliases: null Args: - "n" Description: Cos returns the cosine of the radian argument n. Examples: - - '{{ math.Cos 1 }}' - "0.5403023058681398" Counter: Aliases: null Args: null Description: "" Examples: null Div: Aliases: - div Args: - inputs Description: Div divides n1 by n2. Examples: - - '{{ div 6 3 }}' - "2" Floor: Aliases: null Args: - "n" Description: Floor returns the greatest integer value less than or equal to n. Examples: - - '{{ math.Floor 1.9 }}' - "1" Log: Aliases: null Args: - "n" Description: Log returns the natural logarithm of the number n. Examples: - - '{{ math.Log 1 }}' - "0" Max: Aliases: null Args: - inputs Description: Max returns the greater of all numbers in inputs. Any slices in inputs are flattened. Examples: - - '{{ math.Max 1 2 }}' - "2" Min: Aliases: null Args: - inputs Description: Min returns the smaller of all numbers in inputs. Any slices in inputs are flattened. Examples: - - '{{ math.Min 1 2 }}' - "1" Mod: Aliases: - mod Args: - n1 - n2 Description: Mod returns n1 % n2. Examples: - - '{{ mod 15 3 }}' - "0" ModBool: Aliases: - modBool Args: - n1 - n2 Description: ModBool returns the boolean of n1 % n2. If n1 % n2 == 0, return true. Examples: - - '{{ modBool 15 3 }}' - "true" Mul: Aliases: - mul Args: - inputs Description: Mul multiplies the multivalued numbers n1 and n2 or more values. Examples: - - '{{ mul 2 3 }}' - "6" Pi: Aliases: null Args: null Description: Pi returns the mathematical constant pi. Examples: - - '{{ math.Pi }}' - "3.141592653589793" Pow: Aliases: - pow Args: - n1 - n2 Description: Pow returns n1 raised to the power of n2. Examples: - - '{{ math.Pow 2 3 }}' - "8" Product: Aliases: null Args: null Description: "" Examples: null Rand: Aliases: null Args: null Description: Rand returns, as a float64, a pseudo-random number in the half-open interval [0.0,1.0). Examples: - - '{{ math.Rand }}' - "0.6312770459590062" Round: Aliases: null Args: - "n" Description: Round returns the integer nearest to n, rounding half away from zero. Examples: - - '{{ math.Round 1.5 }}' - "2" Sin: Aliases: null Args: - "n" Description: Sin returns the sine of the radian argument n. Examples: - - '{{ math.Sin 1 }}' - "0.8414709848078965" Sqrt: Aliases: null Args: - "n" Description: Sqrt returns the square root of the number n. Examples: - - '{{ math.Sqrt 81 }}' - "9" Sub: Aliases: - sub Args: - inputs Description: Sub subtracts multivalued. Examples: - - '{{ sub 3 2 }}' - "1" Sum: Aliases: null Args: null Description: "" Examples: null Tan: Aliases: null Args: - "n" Description: Tan returns the tangent of the radian argument n. Examples: - - '{{ math.Tan 1 }}' - "1.557407724654902" ToDegrees: Aliases: null Args: - "n" Description: ToDegrees converts radians into degrees. Examples: - - '{{ math.ToDegrees 1.5707963267948966 }}' - "90" ToRadians: Aliases: null Args: - "n" Description: ToRadians converts degrees into radians. Examples: - - '{{ math.ToRadians 90 }}' - "1.5707963267948966" openapi3: Unmarshal: Aliases: null Args: null Description: "" Examples: [] os: FileExists: Aliases: - fileExists Args: - i Description: FileExists checks whether a file exists under the given path. Examples: - - '{{ fileExists "foo.txt" }}' - "false" Getenv: Aliases: - getenv Args: - key Description: |- Getenv retrieves the value of the environment variable named by the key. It returns the value, which will be empty if the variable is not present. Examples: [] ReadDir: Aliases: - readDir Args: - i Description: ReadDir lists the directory contents relative to the configured WorkingDir. Examples: - - '{{ range (readDir "files") }}{{ .Name }}{{ end }}' - README.txt ReadFile: Aliases: - readFile Args: - i Description: |- ReadFile reads the file named by filename relative to the configured WorkingDir. It returns the contents as a string. There is an upper size limit set at 1 megabytes. Examples: - - '{{ readFile "files/README.txt" }}' - Hugo Rocks! Stat: Aliases: null Args: null Description: "" Examples: null partials: Include: Aliases: - partial Args: - ctx - name - contextList Description: |- Include executes the named partial. If the partial contains a return statement, that value will be returned. Else, the rendered output will be returned: A string if the partial is a text/template, or template.HTML when html/template. Note that ctx is provided by Hugo, not the end user. Examples: - - '{{ partial "header.html" . }}' -
Blockhead
\n" | safeHTML }}' -Blockhead
Contains: Aliases: null Args: - s - substr Description: Contains reports whether substr is in s. Examples: - - '{{ strings.Contains "abc" "b" }}' - "true" - - '{{ strings.Contains "abc" "d" }}' - "false" ContainsAny: Aliases: null Args: - s - chars Description: ContainsAny reports whether any Unicode code points in chars are within s. Examples: - - '{{ strings.ContainsAny "abc" "bcd" }}' - "true" - - '{{ strings.ContainsAny "abc" "def" }}' - "false" ContainsNonSpace: Aliases: null Args: null Description: "" Examples: null Count: Aliases: null Args: - substr - s Description: |- Count counts the number of non-overlapping instances of substr in s. If substr is an empty string, Count returns 1 + the number of Unicode code points in s. Examples: - - '{{ "aabab" | strings.Count "a" }}' - "3" CountRunes: Aliases: - countrunes Args: - s Description: CountRunes returns the number of runes in s, excluding whitespace. Examples: [] CountWords: Aliases: - countwords Args: - s Description: CountWords returns the approximate word count in s. Examples: [] Diff: Aliases: null Args: null Description: "" Examples: null FindRE: Aliases: - findRE Args: - expr - content - limit Description: |- FindRE returns a list of strings that match the regular expression. By default all matches will be included. The number of matches can be limited with an optional third parameter. Examples: - - '{{ findRE "[G|g]o" "Hugo is a static side generator written in Go." 1 }}' - '[go]' FindRESubmatch: Aliases: - findRESubmatch Args: - expr - content - limit Description: |- FindRESubmatch returns a slice of all successive matches of the regular expression in content. Each element is a slice of strings holding the text of the leftmost match of the regular expression and the matches, if any, of its subexpressions. By default all matches will be included. The number of matches can be limited with the optional limit parameter. A return value of nil indicates no match. Examples: - - '{{ findRESubmatch `(.+?)` `abc
" }}' - '<p>abc</p>' urls: AbsLangURL: Aliases: - absLangURL Args: - s Description: |- AbsLangURL the string s and converts it to an absolute URL according to a page's position in the project directory structure and the current language. Examples: [] AbsURL: Aliases: - absURL Args: - s Description: AbsURL takes the string s and converts it to an absolute URL. Examples: [] Anchorize: Aliases: - anchorize Args: - s Description: |- Anchorize creates sanitized anchor name version of the string s that is compatible with how your configured markdown renderer does it. Examples: - - '{{ "This is a title" | anchorize }}' - this-is-a-title JoinPath: Aliases: null Args: - elements Description: |- JoinPath joins the provided elements into a URL string and cleans the result of any ./ or ../ elements. If the argument list is empty, JoinPath returns an empty string. Examples: - - '{{ urls.JoinPath "https://example.org" "foo" }}' - https://example.org/foo - - '{{ urls.JoinPath (slice "a" "b") }}' - a/b Parse: Aliases: null Args: null Description: "" Examples: null Ref: Aliases: - ref Args: - p - args Description: Ref returns the absolute URL path to a given content item from Page p. Examples: [] RelLangURL: Aliases: - relLangURL Args: - s Description: |- RelLangURL takes the string s and prepends the relative path according to a page's position in the project directory structure and the current language. Examples: [] RelRef: Aliases: - relref Args: - p - args Description: RelRef returns the relative URL path to a given content item from Page p. Examples: [] RelURL: Aliases: - relURL Args: - s Description: |- RelURL takes the string s and prepends the relative path according to a page's position in the project directory structure. Examples: [] URLize: Aliases: - urlize Args: - s Description: URLize returns the strings s formatted as an URL. Examples: []