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: - ampl Name: AMPL - 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: - arturo - art Name: Arturo - Aliases: - atl Name: ATL - 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: - beef Name: Beef - 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: - c3 Name: C3 - 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: - core Name: Core - Aliases: - cr - crystal Name: Crystal - Aliases: - css Name: CSS - Aliases: - csv Name: CSV - 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: - devicetree - dts Name: Devicetree - Aliases: - diff - udiff Name: Diff - Aliases: - django - jinja Name: Django/Jinja - Aliases: - zone - bind Name: dns - Aliases: - docker - dockerfile - containerfile 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: - erb - html+erb - html+ruby - rhtml Name: ERB - 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: - gemfile-lock - gemfilelock Name: Gemfile.lock - Aliases: - gemtext - gmi - gmni - gemini Name: Gemtext - Aliases: - genshi - kid - xml+genshi - xml+kid Name: Genshi - Aliases: - html+genshi - html+kid Name: Genshi HTML - Aliases: - genshitext Name: Genshi Text - Aliases: - pot - po Name: Gettext - 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: - janet Name: Janet - Aliases: - java Name: Java - Aliases: - js - javascript Name: JavaScript - Aliases: - json - jsonl Name: JSON - Aliases: - jsonata Name: JSONata - Aliases: - jsonnet Name: Jsonnet - Aliases: - julia - jl Name: Julia - Aliases: - jungle Name: Jungle - Aliases: - kak - kakoune - kakrc - kakscript Name: Kakoune - Aliases: - kdl Name: KDL - Aliases: - kotlin Name: Kotlin - Aliases: - lateralus - ltl Name: Lateralus - Aliases: - lean4 - lean Name: Lean4 - Aliases: - lighty - lighttpd Name: Lighttpd configuration file - Aliases: - lilypond Name: LilyPond - Aliases: - llvm Name: LLVM - Aliases: null Name: lox - Aliases: - lua Name: Lua - Aliases: - luau Name: Luau - Aliases: - make - makefile - mf - bsdmake Name: Makefile - Aliases: - mako Name: Mako - Aliases: - md - mkd Name: markdown - Aliases: - mess Name: Markless - Aliases: - mason Name: Mason - Aliases: - materialize - mzsql Name: Materialize SQL dialect - Aliases: - mathematica - mma - nb Name: Mathematica - Aliases: - matlab Name: Matlab - Aliases: - mcfunction - mcf Name: MCFunction - Aliases: - meson - meson.build Name: Meson - Aliases: - metal Name: Metal - Aliases: - µcad Name: microcad - Aliases: - minizinc - MZN - mzn Name: MiniZinc - Aliases: - mlir Name: MLIR - Aliases: - modelica Name: Modelica - Aliases: - modula2 - m2 Name: Modula-2 - Aliases: - mojo - 🔥 Name: Mojo - Aliases: - monkeyc Name: MonkeyC - Aliases: - moonbit - mbt Name: MoonBit - Aliases: - moonscript - moon Name: MoonScript - 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: - nsis - nsi - nsh Name: NSIS - Aliases: - nu Name: Nu - 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: - txtpb Name: Protocol Buffer Text Format - Aliases: - prql Name: PRQL - Aliases: - psl Name: PSL - Aliases: - puppet Name: Puppet - Aliases: - python - py - sage - python3 - py3 - starlark 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: - rgbasm Name: RGBDS Assembly - Aliases: - ring Name: Ring - Aliases: - SQLRPGLE - RPG IV Name: RPGLE - 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: - scdoc Name: scdoc - 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: - snbt Name: SNBT - Aliases: - snobol Name: Snobol - Aliases: - sol - solidity Name: Solidity - Aliases: - sp Name: SourcePawn - Aliases: - spade Name: Spade - 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: - templ Name: Templ - Aliases: - termcap Name: Termcap - Aliases: - terminfo Name: Terminfo - Aliases: - terraform - tf - hcl 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: - typst Name: Typst - 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: - wast - wat Name: WebAssembly Text Format - Aliases: - wgsl Name: WebGPU Shading Language - Aliases: - vtt Name: WebVTT - Aliases: - whiley Name: Whiley - Aliases: - xml Name: XML - Aliases: - xorg.conf Name: Xorg - Aliases: - yaml Name: YAML - Aliases: - yaml+jinja - salt - sls - ansible Name: YAML+Jinja - Aliases: - yang Name: YANG - Aliases: - z80 Name: Z80 Assembly - Aliases: - zed Name: Zed - Aliases: - zig Name: Zig styles: - counterpart: '' mode: light name: abap - counterpart: '' mode: light name: algol - counterpart: '' mode: light name: algol_nu - counterpart: '' mode: light name: arduino - counterpart: '' mode: dark name: ashen - counterpart: '' mode: dark name: aura-theme-dark - counterpart: '' mode: dark name: aura-theme-dark-soft - counterpart: '' mode: light name: autumn - counterpart: '' mode: dark name: average - counterpart: '' mode: dark name: base16-snazzy - counterpart: '' mode: light name: borland - counterpart: '' mode: light name: bw - counterpart: '' mode: dark name: catppuccin-frappe - counterpart: catppuccin-mocha mode: light name: catppuccin-latte - counterpart: '' mode: dark name: catppuccin-macchiato - counterpart: catppuccin-latte mode: dark name: catppuccin-mocha - counterpart: '' mode: light name: colorful - counterpart: '' mode: dark name: darcula - counterpart: '' mode: dark name: doom-one - counterpart: '' mode: dark name: doom-one2 - counterpart: '' mode: dark name: dracula - counterpart: '' mode: light name: emacs - counterpart: '' mode: dark name: evergarden - counterpart: '' mode: light name: friendly - counterpart: '' mode: dark name: fruity - counterpart: github-dark mode: light name: github - counterpart: github mode: dark name: github-dark - counterpart: gruvbox-light mode: dark name: gruvbox - counterpart: gruvbox mode: light name: gruvbox-light - counterpart: '' mode: light name: hr_high_contrast - counterpart: '' mode: light name: hrdark - counterpart: '' mode: light name: igor - counterpart: '' mode: dark name: kanagawa-dragon - counterpart: kanagawa-wave mode: light name: kanagawa-lotus - counterpart: kanagawa-lotus mode: dark name: kanagawa-wave - counterpart: '' mode: light name: lovelace - counterpart: '' mode: light name: manni - counterpart: modus-vivendi mode: light name: modus-operandi - counterpart: modus-operandi mode: dark name: modus-vivendi - counterpart: monokailight mode: dark name: monokai - counterpart: monokai mode: light name: monokailight - counterpart: '' mode: light name: murphy - counterpart: '' mode: dark name: native - counterpart: '' mode: dark name: nord - counterpart: '' mode: dark name: nordic - counterpart: '' mode: dark name: onedark - counterpart: '' mode: light name: onesenterprise - counterpart: paraiso-light mode: dark name: paraiso-dark - counterpart: paraiso-dark mode: light name: paraiso-light - counterpart: '' mode: light name: pastie - counterpart: '' mode: light name: perldoc - counterpart: '' mode: light name: pygments - counterpart: '' mode: light name: rainbow_dash - counterpart: rose-pine-dawn mode: dark name: rose-pine - counterpart: rose-pine mode: light name: rose-pine-dawn - counterpart: '' mode: dark name: rose-pine-moon - counterpart: '' mode: light name: rpgle - counterpart: '' mode: dark name: rrt - counterpart: solarized-light mode: dark name: solarized-dark - counterpart: '' mode: dark name: solarized-dark256 - counterpart: solarized-dark mode: light name: solarized-light - counterpart: '' mode: dark name: swapoff - counterpart: '' mode: light name: tango - counterpart: tokyonight-night mode: light name: tokyonight-day - counterpart: '' mode: dark name: tokyonight-moon - counterpart: tokyonight-day mode: dark name: tokyonight-night - counterpart: '' mode: dark name: tokyonight-storm - counterpart: '' mode: light name: trac - counterpart: '' mode: dark name: vim - counterpart: '' mode: light name: vs - counterpart: '' mode: dark name: vulcan - counterpart: '' mode: dark name: witchhazel - counterpart: xcode-dark mode: light name: xcode - counterpart: xcode mode: dark name: xcode-dark config: HTTPCache: cache: for: excludes: - '**' includes: null polls: - disable: true for: excludes: null includes: - '**' high: 0s low: 0s respectCacheControlNoStoreInRequest: true respectCacheControlNoStoreInResponse: false archeTypeDir: archetypes assetDir: assets author: {} baseURL: '' build: buildStats: disableClasses: false disableIDs: false disableTags: false enable: false cacheBusters: - source: '(postcss|tailwind)\.config\.(js|mjs|cjs)' target: (css|styles|scss|sass) noJSConfigInAssets: false useResourceCacheWhen: fallback buildDrafts: false buildExpired: false buildFuture: false cacheDir: '' caches: assets: dir: :resourceDir/_gen maxAge: -1 getresource: dir: :cacheDir/:project maxAge: -1 images: dir: :resourceDir/_gen maxAge: -1 misc: dir: :cacheDir/:project maxAge: -1 modulegitinfo: dir: :cacheDir/modules maxAge: 24h modulequeries: dir: :cacheDir/modules maxAge: 24h modules: dir: :cacheDir/modules maxAge: -1 canonifyURLs: false capitalizeListTitles: true cascade: null cleanDestinationDir: false contentDir: content contentTypes: text/asciidoc: {} text/html: {} text/markdown: {} text/org: {} text/pandoc: {} text/rst: {} copyright: '' dataDir: data defaultContentLanguage: en defaultContentLanguageInSubdir: false defaultContentRole: guest defaultContentRoleInSubdir: false defaultContentVersion: '' defaultContentVersionInSubdir: false defaultOutputFormat: html deployment: confirm: false dryRun: false force: false invalidateCDN: true matchers: null maxDeletes: 256 order: null target: '' targets: null workers: 10 disableAliases: false disableDefaultLanguageRedirect: false disableDefaultSiteRedirect: 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: null ignoreLogs: null ignoreVendorPaths: '' imaging: anchor: smart avif: compression: lossy encoderSpeed: 10 hint: photo quality: 60 bgColor: ffffff exif: disableDate: false disableLatLong: false excludeFields: GPS|Exif|Exposure[M|P|B]|Contrast|Resolution|Sharp|JPEG|Metering|Sensing|Saturation|ColorSpace|Flash|WhiteBalance includeFields: '' jpeg: quality: 75 meta: fields: - '! *{GPS,Exif,Exposure[MPB],Contrast,Resolution,Sharp,JPEG,Metering,Sensing,Saturation,ColorSpace,Flash,WhiteBalance}*' sources: - exif - iptc resampleFilter: box webp: compression: lossy hint: photo method: 2 quality: 75 useSharpYuv: false languages: en: direction: '' disabled: false label: '' locale: '' title: '' weight: 0 layoutDir: layouts locale: '' 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: backlinkHTML: '↩︎' enable: true enableAutoIDPrefix: false 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 autoDefinitionTermID: false autoHeadingID: true autoIDType: github wrapStandAloneImageWithinParagraph: true renderHooks: image: enableDefault: false useEmbedded: auto link: enableDefault: false useEmbedded: auto 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 style: monokai tabWidth: 4 wrapperClass: highlight 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/avif: delimiter: . suffixes: - avif image/bmp: delimiter: . suffixes: - bmp image/gif: delimiter: . suffixes: - gif image/heic: delimiter: . suffixes: - heic image/heif: delimiter: . suffixes: - heif 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-gotmpl: delimiter: . suffixes: - gotmpl 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 precision: 0 version: 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: keepComments: false keepNamespaces: - '' - x-bind precision: 0 xml: keepWhitespace: false module: auth: '' hugoVersion: extended: false max: '' min: '' imports: null mounts: - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null source: content target: content - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null source: data target: data - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null source: layouts target: layouts - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null source: i18n target: i18n - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null source: archetypes target: archetypes - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null source: assets target: assets - disableWatch: false files: null sites: complements: languages: null roles: null versions: null matrix: languages: null roles: null versions: null 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: '404': baseName: '' isHTML: true isPlainText: false mediaType: text/html noUgly: false notAlternative: true path: '' permalinkable: true protocol: '' rel: '' root: false ugly: true weight: 0 alias: baseName: '' isHTML: true isPlainText: false mediaType: text/html noUgly: false notAlternative: false path: '' permalinkable: false protocol: '' rel: '' root: false ugly: true weight: 0 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 gotmpl: baseName: '' isHTML: false isPlainText: true mediaType: text/x-gotmpl noUgly: false notAlternative: true path: '' permalinkable: false protocol: '' rel: '' 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 sitemapindex: baseName: sitemap isHTML: false isPlainText: false mediaType: application/xml noUgly: false notAlternative: false path: '' permalinkable: false protocol: '' rel: sitemap root: true 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 pagination: disableAliases: false pagerSize: 10 path: page panicOnWarning: false params: {} permalinks: null pluralizeListTitles: true printI18nWarnings: false printPathWarnings: false printUnusedTemplates: false privacy: disqus: disable: false googleAnalytics: disable: false respectDoNotTrack: true instagram: disable: false simple: false vimeo: disable: false enableDNT: false simple: false x: 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 roles: guest: weight: 0 sectionPagesMenu: '' security: allowContent: - '! ^text/html$' enableInlineShortcodes: false exec: allow: - ^(dart-)?sass(-embedded)?$ - ^go$ - ^git$ - ^node$ - ^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|PROGRAMDATA)$' funcs: getenv: - ^HUGO_ - ^CI$ http: mediaTypes: null methods: - (?i)GET|POST urls: - (?i)^https?://[a-z0-9] - '! ^https?://\d+\.' - '! (?i)localhost' - '! (?i)^https?://[^/?#]*@' node: permissions: allowAddons: - tailwindcss allowChildProcess: - tailwindcss allowRead: - . allowWorker: - tailwindcss allowWrite: [] disable: false segments: {} server: headers: null redirects: - force: false from: /** fromHeaders: null fromRe: '' status: 404 to: /404.html services: disqus: shortname: '' googleAnalytics: id: '' rss: limit: -1 x: disableInlineCSS: false sitemap: changeFreq: '' disable: false filename: sitemap.xml priority: -1 social: null staticDir: - static staticDir0: null staticDir1: null staticDir10: null staticDir2: null staticDir3: null staticDir4: null staticDir5: null staticDir6: null staticDir7: null staticDir8: null staticDir9: null summaryLength: 70 taxonomies: category: categories tag: tags templateMetrics: false templateMetricsHints: false theme: null themesDir: themes timeZone: '' timeout: 60s title: '' titleCaseStyle: AP uglyURLs: {} versions: v1.0.0: weight: 0 workingDir: '' config_helpers: mergeStrategy: build: _merge: none caches: _merge: none cascade: _merge: none contenttypes: _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 roles: _merge: none security: _merge: none segments: _merge: none server: _merge: none services: _merge: none sitemap: _merge: none taxonomies: _merge: none versions: _merge: none output: layouts: {} 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. This construct allows template constructs like this: {{ $pages = $pages | append $p2 $p1 }} Note that with 2 arguments where both are slices of the same type, the first slice will be appended to the second: {{ $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 any of the others. All elements of ls must be slices or arrays of comparable types. The reasoning behind this rather clumsy API is so we can do this in the templates: {{ $c := .Pages | complement $last4 }} Examples: - - '{{ slice "a" "b" "c" "d" "e" "f" | complement (slice "b" "c") (slice "d" "e") }}' - '[a f]' D: Aliases: null Args: - seed - 'n' - hi Description: 'D returns a sorted slice of unique random integers in the half-open interval\n[0, hi) using the provided seed value. The number of elements in the\nresulting slice is n or hi, whichever is less.\n\nIf n <= hi, it returns a sorted random sample of size n using J. S. Vitter’s\nMethod D for sequential random sampling.\n\nIf n > hi, it returns the full, sorted range [0, hi) of size hi.\n\nIf n == 0 or hi == 0, it returns an empty slice.\n\nReference:\n\n\tJ. S. Vitter, "An efficient algorithm for sequential random sampling," ACM Trans. Math. Softw., vol. 11, no. 1, pp. 37–57, 1985.\n\tSee also: https://getkerf.wordpress.com/2016/03/30/the-best-algorithm-no-one-knows-about/' Examples: [] 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 returns a URL query string composed of the given key-value pairs, encoded and 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: - l Description: Reverse creates a copy of the list l and reverses it. Examples: [] Seq: Aliases: - seq Args: - args Description: |- Seq creates a sequence of integers from args. It's named and used as GNU's seq. Examples: 3 => 1, 2, 3 1 2 4 => 1, 3 -3 => -1, -2, -3 1 4 => 1, 2, 3, 4 1 -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: - collator - first - others Description: |- LtCollate returns the boolean truth of arg1 < arg2 && arg1 < arg3 && arg1 < arg4. The provided collator will be used for string comparisons. This is for internal use. Examples: [] Ne: Aliases: - ne Args: - first - others Description: Ne returns the boolean truth of arg1 != arg2 && arg1 != arg3 && arg1 != arg4. Examples: [] crypto: 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: Build: Aliases: null Args: - args Description: |- Build processes the given CSS Resource with ESBuild. Note that this method is identical to the one in the js Namespace. Examples: [] PostCSS: Aliases: - postCSS Args: - args Description: PostCSS processes the given Resource with PostCSS. Examples: [] Quoted: Aliases: null Args: - v Description: Quoted returns a string that needs to be quoted in CSS. Examples: [] Sass: Aliases: - toCSS Args: - args Description: Sass processes the given Resource with SASS. Examples: [] TailwindCSS: Aliases: null Args: - args Description: TailwindCSS processes the given Resource with tailwindcss. Examples: [] Unquoted: Aliases: null Args: - v Description: Unquoted returns a string that does not need to be quoted in CSS. 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 }}\n{{ $m.Set "Hugo" "Rocks!" }}\n{{ $m.Values | debug.Dump | safeHTML }}' - '{\n "Hugo": "Rocks!"\n}' TestDeprecationErr: Aliases: null Args: - item - alternative Description: Internal template func, used in tests only. Examples: [] TestDeprecationInfo: Aliases: null Args: - item - alternative Description: Internal template func, used in tests only. Examples: [] TestDeprecationWarn: Aliases: null Args: - item - alternative Description: Internal template func, used in tests only. Examples: [] Timer: Aliases: null Args: - name Description: '' Examples: [] VisualizeSpaces: Aliases: null Args: - val Description: VisualizeSpaces returns a string with spaces replaced by a visible string. Examples: [] diagrams: Goat: Aliases: null Args: - v Description: Goat creates a new SVG diagram from input v. Examples: [] 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" " ") }}' - '[\n "A",\n "B",\n "C"\n]' 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: - m - format - args Description: Errormf is experimental and subject to change at any time. Examples: [] 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: - m - format - args Description: Warnmf is experimental and subject to change at any time. Examples: [] 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: Data: Aliases: null Args: null Description: '' Examples: null Deps: Aliases: null Args: null Description: '' Examples: null Environment: Aliases: null Args: null Description: '' Examples: null ForEeachIdentityByName: 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 Sites: 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: - args Description: Filter applies the given filters to the image given as the last element in args. Examples: [] 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 Mask: 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 QR: Aliases: null Args: - args Description: |- QR encodes the given text into a QR code using the specified options, returning an image resource. Examples: [] 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: [] Batch: Aliases: null Args: - id Description: |- Batch creates a new Batcher with the given ID. Repeated calls with the same ID will return the same Batcher. The ID will be used to name the root directory of the batch. Forward slashes in the ID is allowed. Examples: [] Build: Aliases: null Args: - args Description: Build processes the given JavaScript Resource with ESBuild. Examples: [] 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\noptions parameter is a space-delimited string of characters to represent\nnegativity, the decimal point, and grouping. The default value is `- . ,`.\nThe second options parameter defines an alternate delimiting character.\n\nNote that numbers are rounded up at 5 or greater.\nSo, with precision set to 0, 1.5 becomes `2`, and 1.4 becomes `1`.\n\nFor 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: - p2 - p1 Description: Merge creates a union of pages from two languages. Examples: [] 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: 'Counter increments and returns a global counter.\nThis was originally added to be used in tests where now.UnixNano did not\nhave the needed precision (especially on Windows).\nNote that given the parallel nature of Hugo, you cannot use this to get sequences of numbers,\nand the counter will reset on new builds.\n{"identifiers": ["now.UnixNano"] }' Examples: [] 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' MaxInt64: Aliases: null Args: null Description: MaxInt64 returns the maximum value for a signed 64-bit integer. Examples: - - '{{ math.MaxInt64 }}' - '9223372036854775807' 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: - inputs Description: Product returns the product of all numbers in inputs. Any slices in inputs are flattened. Examples: [] 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: - inputs Description: Sum returns the sum of all numbers in inputs. Any slices in inputs are flattened. Examples: [] 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: - i Description: Stat returns the os.FileInfo structure describing file. Examples: [] 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" . }}' - Hugo Rocks! IncludeCached: Aliases: - partialCached Args: - ctx - name - context - variants Description: |- IncludeCached executes and caches partial templates. The cache is created with name+variants as the key. Note that ctx is provided by Hugo, not the end user. Examples: [] path: Base: Aliases: null Args: - path Description: |- Base returns the last element of path. Trailing slashes are removed before extracting the last element. If the path is empty, Base returns ".". If the path consists entirely of slashes, Base returns "/". The input path is passed into filepath.ToSlash converting any Windows slashes to forward slashes. Examples: [] BaseName: Aliases: null Args: - path Description: |- BaseName returns the last element of path, removing the extension if present. Trailing slashes are removed before extracting the last element. If the path is empty, Base returns ".". If the path consists entirely of slashes, Base returns "/". The input path is passed into filepath.ToSlash converting any Windows slashes to forward slashes. Examples: [] Clean: Aliases: null Args: - path Description: |- Clean replaces the separators used with standard slashes and then extraneous slashes are removed. Examples: [] Dir: Aliases: null Args: - path Description: |- Dir returns all but the last element of path, typically the path's directory. After dropping the final element using Split, the path is Cleaned and trailing slashes are removed. If the path is empty, Dir returns ".". If the path consists entirely of slashes followed by non-slash bytes, Dir returns a single slash. In any other case, the returned path does not end in a slash. The input path is passed into filepath.ToSlash converting any Windows slashes to forward slashes. Examples: [] Ext: Aliases: null Args: - path Description: |- Ext returns the file name extension used by path. The extension is the suffix beginning at the final dot in the final slash-separated element of path; it is empty if there is no dot. The input path is passed into filepath.ToSlash converting any Windows slashes to forward slashes. Examples: [] Join: Aliases: null Args: - elements Description: |- Join joins any number of path elements into a single path, adding a separating slash if necessary. All the input path elements are passed into filepath.ToSlash converting any Windows slashes to forward slashes. The result is Cleaned; in particular, all empty strings are ignored. Examples: - - '{{ slice "my/path" "filename.txt" | path.Join }}' - my/path/filename.txt - - '{{ path.Join "my" "path" "filename.txt" }}' - my/path/filename.txt - - '{{ "my/path/filename.txt" | path.Ext }}' - .txt - - '{{ "my/path/filename.txt" | path.Base }}' - filename.txt - - '{{ "my/path/filename.txt" | path.Dir }}' - my/path Split: Aliases: null Args: - path Description: |- Split splits path immediately following the final slash, separating it into a directory and file name component. If there is no slash in path, Split returns an empty dir and file set to path. The input path is passed into filepath.ToSlash converting any Windows slashes to forward slashes. The returned values have the property that path = dir+file. Examples: - - '{{ "/my/path/filename.txt" | path.Split }}' - /my/path/|filename.txt - - '{{ "/my/path/filename.txt" | path.Split }}' - /my/path/|filename.txt reflect: IsImageResource: Aliases: null Args: null Description: '' Examples: null IsImageResourceProcessable: Aliases: null Args: null Description: '' Examples: null IsImageResourceWithMeta: Aliases: null Args: null Description: '' Examples: null IsMap: Aliases: null Args: - v Description: IsMap reports whether v is a map. Examples: - - '{{ if reflect.IsMap (dict "a" 1) }}Map{{ end }}' - Map IsPage: Aliases: null Args: null Description: '' Examples: null IsResource: Aliases: null Args: null Description: '' Examples: null IsSite: Aliases: null Args: null Description: '' Examples: null IsSlice: Aliases: null Args: - v Description: IsSlice reports whether v is a slice. Examples: - - '{{ if reflect.IsSlice (slice 1 2 3) }}Slice{{ end }}' - Slice resources: ByType: Aliases: null Args: - typ Description: ByType returns resources of a given resource type (e.g. "image"). Examples: [] Concat: Aliases: null Args: - targetPathIn - r Description: |- Concat concatenates a slice of Resource objects. These resources must (currently) be of the same Media Type. Examples: [] Copy: Aliases: null Args: - s - r Description: Copy copies r to the new targetPath in s. Examples: [] ExecuteAsTemplate: Aliases: null Args: - ctx - args Description: |- ExecuteAsTemplate creates a Resource from a Go template, parsed and executed with the given data, and published to the relative target path. Examples: [] Fingerprint: Aliases: - fingerprint Args: - args Description: |- Fingerprint transforms the given Resource with a MD5 hash of the content in the RelPermalink and Permalink. Examples: [] FromString: Aliases: null Args: - targetPathIn - contentIn Description: FromString creates a Resource from a string published to the relative target path. Examples: [] Get: Aliases: null Args: - filename Description: |- Get locates the filename given in Hugo's assets filesystem and creates a Resource object that can be used for further transformations. Examples: [] GetMatch: Aliases: null Args: null Description: '' Examples: null GetRemote: Aliases: null Args: - args Description: 'GetRemote gets the URL (via HTTP(s)) in the first argument in args and creates Resource object that can be used for\nfurther transformations.\n\nA second argument may be provided with an option map.\n\nNote: This method does not return any error as a second return value,\nfor any error situations the error can be checked in .Err.' Examples: [] Match: Aliases: null Args: - pattern Description: |- Match gets all resources matching the given base path prefix, e.g "*.png" will match all png files. The "*" does not match path delimiters (/), so if you organize your resources in sub-folders, you need to be explicit about it, e.g.: "images/*.png". To match any PNG image anywhere in the bundle you can do "**.png", and to match all PNG images below the images folder, use "images/**.jpg". The matching is case insensitive. Match matches by using the files name with path relative to the file system root with Unix style slashes (/) and no leading slash, e.g. "images/logo.png". See https://github.com/gobwas/glob for the full rules set. It looks for files in the assets file system. See Match for a more complete explanation about the rules used. Examples: [] Minify: Aliases: - minify Args: - r Description: |- Minify minifies the given Resource using the MediaType to pick the correct minifier. Examples: [] PostProcess: Aliases: null Args: - r Description: PostProcess processes r after the build. Examples: [] safe: CSS: Aliases: - safeCSS Args: - s Description: CSS returns the string s as html/template CSS content. Examples: - - '{{ "Bat&Man" | safeCSS | safeCSS }}' - Bat&Man HTML: Aliases: - safeHTML Args: - s Description: HTML returns the string s as html/template HTML content. Examples: - - '{{ "Bat&Man" | safeHTML | safeHTML }}' - Bat&Man - - '{{ "Bat&Man" | safeHTML }}' - Bat&Man HTMLAttr: Aliases: - safeHTMLAttr Args: - s Description: HTMLAttr returns the string s as html/template HTMLAttr content. Examples: [] JS: Aliases: - safeJS Args: - s Description: JS returns the given string as a html/template JS content. Examples: - - '{{ "(1*2)" | safeJS | safeJS }}' - (1*2) JSStr: Aliases: - safeJSStr Args: - s Description: JSStr returns the given string as a html/template JSStr content. Examples: [] URL: Aliases: - safeURL Args: - s Description: URL returns the string s as html/template URL content. Examples: - - '{{ "http://gohugo.io" | safeURL | safeURL }}' - http://gohugo.io site: AllPages: Aliases: null Args: null Description: '' Examples: null BaseURL: Aliases: null Args: null Description: '' Examples: null BuildDrafts: Aliases: null Args: null Description: '' Examples: null CheckReady: Aliases: null Args: null Description: '' Examples: null Config: Aliases: null Args: null Description: '' Examples: null Copyright: Aliases: null Args: null Description: '' Examples: null Current: Aliases: null Args: null Description: '' Examples: null Data: Aliases: null Args: null Description: '' Examples: null Dimension: Aliases: null Args: null Description: '' Examples: null ForEeachIdentityByName: Aliases: null Args: null Description: '' Examples: null GetPage: Aliases: null Args: null Description: '' Examples: null Home: Aliases: null Args: null Description: '' Examples: null Hugo: Aliases: null Args: null Description: '' Examples: null IsDefault: Aliases: null Args: null Description: '' Examples: null Key: Aliases: null Args: null Description: '' Examples: null Language: Aliases: null Args: null Description: '' Examples: null LanguageCode: Aliases: null Args: null Description: '' Examples: null LanguagePrefix: Aliases: null Args: null Description: '' Examples: null Languages: Aliases: null Args: null Description: '' Examples: null Lastmod: Aliases: null Args: null Description: '' Examples: null MainSections: Aliases: null Args: null Description: '' Examples: null Menus: Aliases: null Args: null Description: '' Examples: null Pages: Aliases: null Args: null Description: '' Examples: null Param: Aliases: null Args: null Description: '' Examples: null Params: Aliases: null Args: null Description: '' Examples: null RegularPages: Aliases: null Args: null Description: '' Examples: null Role: Aliases: null Args: null Description: '' Examples: null Sections: Aliases: null Args: null Description: '' Examples: null ServerPort: Aliases: null Args: null Description: '' Examples: null Sites: Aliases: null Args: null Description: '' Examples: null Store: Aliases: null Args: null Description: '' Examples: null String: Aliases: null Args: null Description: '' Examples: null Taxonomies: Aliases: null Args: null Description: '' Examples: null Title: Aliases: null Args: null Description: '' Examples: null Version: Aliases: null Args: null Description: '' Examples: null strings: Chomp: Aliases: - chomp Args: - s Description: Chomp returns a copy of s with all trailing newline characters removed. Examples: - - '{{ chomp "

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: - s Description: 'ContainsNonSpace reports whether s contains any non-space characters as defined\nby Unicode''s White Space property,\n{"newIn": "0.111.0" }' Examples: [] 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: - oldname - old - newname - new Description: |- Diff returns an anchored diff of the two texts old and new in the “unified diff” format. If old and new are identical, Diff returns an empty string. Examples: [] 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 `(.+?)` `
  • Foo
  • Bar
  • ` | print | safeHTML }}' - '[[Foo #foo Foo] [Bar #bar Bar]]' FirstUpper: Aliases: null Args: - s Description: FirstUpper converts s making the first character upper case. Examples: - - '{{ "hugo rocks!" | strings.FirstUpper }}' - Hugo rocks! HasPrefix: Aliases: - hasPrefix Args: - s - prefix Description: HasPrefix tests whether the input s begins with prefix. Examples: - - '{{ hasPrefix "Hugo" "Hu" }}' - 'true' - - '{{ hasPrefix "Hugo" "Fu" }}' - 'false' HasSuffix: Aliases: - hasSuffix Args: - s - suffix Description: HasSuffix tests whether the input s begins with suffix. Examples: - - '{{ hasSuffix "Hugo" "go" }}' - 'true' - - '{{ hasSuffix "Hugo" "du" }}' - 'false' Repeat: Aliases: null Args: - 'n' - s Description: Repeat returns a new string consisting of n copies of the string s. Examples: - - '{{ "yo" | strings.Repeat 4 }}' - yoyoyoyo Replace: Aliases: - replace Args: - s - old - new - limit Description: |- Replace returns a copy of the string s with all occurrences of old replaced with new. The number of replacements can be limited with an optional fourth parameter. Examples: - - '{{ replace "Batman and Robin" "Robin" "Catwoman" }}' - Batman and Catwoman - - '{{ replace "aabbaabb" "a" "z" 2 }}' - zzbbaabb ReplacePairs: Aliases: null Args: - args Description: |- ReplacePairs returns a copy of a string with multiple replacements performed in a single pass. The last argument is the source string. Preceding arguments are old/new string pairs, either as a slice or as individual arguments. Examples: - - '{{ "aab" | strings.ReplacePairs "a" "b" "b" "c" }}' - bbc - - '{{ "aab" | strings.ReplacePairs (slice "a" "b" "b" "c") }}' - bbc ReplaceRE: Aliases: - replaceRE Args: - pattern - repl - s - 'n' Description: |- ReplaceRE returns a copy of s, replacing all matches of the regular expression pattern with the replacement text repl. The number of replacements can be limited with an optional fourth parameter. Examples: - - '{{ replaceRE "a+b" "X" "aabbaabbab" }}' - XbXbX - - '{{ replaceRE "a+b" "X" "aabbaabbab" 1 }}' - Xbaabbab RuneCount: Aliases: null Args: - s Description: RuneCount returns the number of runes in s. Examples: [] SliceString: Aliases: - slicestr Args: - a - startEnd Description: |- SliceString slices a string by specifying a half-open range with two indices, start and end. 1 and 4 creates a slice including elements 1 through 3. The end index can be omitted, it defaults to the string's length. Examples: - - '{{ slicestr "BatMan" 0 3 }}' - Bat - - '{{ slicestr "BatMan" 3 }}' - Man Split: Aliases: - split Args: - a - delimiter Description: Split slices an input string into all substrings separated by delimiter. Examples: [] Substr: Aliases: - substr Args: - a - nums Description: 'Substr extracts parts of a string, beginning at the character at the specified\nposition, and returns the specified number of characters.\n\nIt normally takes two parameters: start and length.\nIt can also take one parameter: start, i.e. length is omitted, in which case\nthe substring starting from start until the end of the string will be returned.\n\nTo extract characters from the end of the string, use a negative start number.\n\nIn addition, borrowing from the extended behavior described at http://php.net/substr,\nif length is given and is negative, then that many characters will be omitted from\nthe end of string.' Examples: - - '{{ substr "BatMan" 0 -3 }}' - Bat - - '{{ substr "BatMan" 3 3 }}' - Man Title: Aliases: - title Args: - s Description: |- Title returns a copy of the input s with all Unicode letters that begin words mapped to their title case. Examples: - - '{{ title "Bat man" }}' - Bat Man - - '{{ title "somewhere over the rainbow" }}' - Somewhere Over the Rainbow ToLower: Aliases: - lower Args: - s Description: |- ToLower returns a copy of the input s with all Unicode letters mapped to their lower case. Examples: - - '{{ lower "BatMan" }}' - batman ToUpper: Aliases: - upper Args: - s Description: |- ToUpper returns a copy of the input s with all Unicode letters mapped to their upper case. Examples: - - '{{ upper "BatMan" }}' - BATMAN Trim: Aliases: - trim Args: - s - cutset Description: |- Trim returns converts the strings s removing all leading and trailing characters defined contained. Examples: - - '{{ trim "++Batman--" "+-" }}' - Batman TrimLeft: Aliases: null Args: - cutset - s Description: |- TrimLeft returns a slice of the string s with all leading characters contained in cutset removed. Examples: - - '{{ "aabbaa" | strings.TrimLeft "a" }}' - bbaa TrimPrefix: Aliases: null Args: - prefix - s Description: |- TrimPrefix returns s without the provided leading prefix string. If s doesn't start with prefix, s is returned unchanged. Examples: - - '{{ "aabbaa" | strings.TrimPrefix "a" }}' - abbaa - - '{{ "aabbaa" | strings.TrimPrefix "aa" }}' - bbaa TrimRight: Aliases: null Args: - cutset - s Description: |- TrimRight returns a slice of the string s with all trailing characters contained in cutset removed. Examples: - - '{{ "aabbaa" | strings.TrimRight "a" }}' - aabb TrimSpace: Aliases: null Args: - s Description: |- TrimSpace returns the given string, removing leading and trailing whitespace as defined by Unicode. Examples: [] TrimSuffix: Aliases: null Args: - suffix - s Description: |- TrimSuffix returns s without the provided trailing suffix string. If s doesn't end with suffix, s is returned unchanged. Examples: - - '{{ "aabbaa" | strings.TrimSuffix "a" }}' - aabba - - '{{ "aabbaa" | strings.TrimSuffix "aa" }}' - aabb Truncate: Aliases: - truncate Args: - s - options Description: Truncate truncates the string in s to the specified length. Examples: - - '{{ "this is a very long text" | truncate 10 " ..." }}' - this is a ... - - '{{ "With [Markdown](/markdown) inside." | markdownify | truncate 14 }}' - With Markdown … templates: Current: Aliases: null Args: - ctx Description: Get information about the currently executing template. Examples: [] Defer: Aliases: null Args: - ctx - args Description: Defer defers the execution of a template block. Examples: [] DoDefer: Aliases: - doDefer Args: - ctx - id - optsv Description: |- DoDefer defers the execution of a template block. For internal use only. Examples: [] Exists: Aliases: null Args: - name Description: |- Exists returns whether the template with the given name exists. Note that this is the Unix-styled relative path including filename suffix, e.g. partials/header.html Examples: - - '{{ if (templates.Exists "_partials/header.html") }}Yes!{{ end }}' - Yes! - - '{{ if not (templates.Exists "_partials/doesnotexist.html") }}No!{{ end }}' - No! Inner: Aliases: - inner Args: - ctx - data Description: |- Inner executes the inner content of a partial decorator. Note that there is only one inner block per partial decorator, but inner may be called multiple times with, typically, different data. Examples: [] time: AsTime: Aliases: null Args: - v - args Description: |- AsTime converts the textual representation of the datetime string into a time.Time interface. Examples: - - '{{ (time "2015-01-21").Year }}' - '2015' Duration: Aliases: - duration Args: - unit - number Description: |- Duration converts the given number to a time.Duration. Unit is one of nanosecond/ns, microsecond/us/µs, millisecond/ms, second/s, minute/m or hour/h. Examples: - - '{{ mul 60 60 | duration "second" }}' - 1h0m0s Format: Aliases: - dateFormat Args: - layout - v Description: |- Format converts the textual representation of the datetime string in v into time.Time if needed and formats it with the given layout. Examples: - - 'dateFormat: {{ dateFormat "Monday, Jan 2, 2006" "2015-01-21" }}' - 'dateFormat: Wednesday, Jan 21, 2015' In: Aliases: null Args: - timeZoneName - t Description: |- In returns the time t in the IANA time zone specified by timeZoneName. If timeZoneName is "" or "UTC", the time is returned in UTC. If timeZoneName is "Local", the time is returned in the system's local time zone. Otherwise, timeZoneName must be a valid IANA location name (e.g., "Europe/Oslo"). Examples: [] Now: Aliases: - now Args: null Description: Now returns the current local time or `clock` time Examples: [] ParseDuration: Aliases: null Args: - s Description: 'ParseDuration parses the duration string s.\nA duration string is a possibly signed sequence of\ndecimal numbers, each with optional fraction and a unit suffix,\nsuch as "300ms", "-1.5h" or "2h45m".\nValid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".\nSee https://golang.org/pkg/time/#ParseDuration' Examples: - - '{{ "1h12m10s" | time.ParseDuration }}' - 1h12m10s transform: CanHighlight: Aliases: null Args: - language Description: CanHighlight returns whether the given code language is supported by the Chroma highlighter. Examples: [] Emojify: Aliases: - emojify Args: - s Description: |- Emojify returns a copy of s with all emoji codes replaced with actual emojis. See http://www.emoji-cheat-sheet.com/ Examples: - - '{{ "I :heart: Hugo" | emojify }}' - I ❤️ Hugo HTMLEscape: Aliases: - htmlEscape Args: - s Description: HTMLEscape returns a copy of s with reserved HTML characters escaped. Examples: - - '{{ htmlEscape "Cathal Garvey & The Sunshine Band " | safeHTML }}' - Cathal Garvey & The Sunshine Band <cathal@foo.bar> - - '{{ htmlEscape "Cathal Garvey & The Sunshine Band " }}' - Cathal Garvey &amp; The Sunshine Band &lt;cathal@foo.bar&gt; - - '{{ htmlEscape "Cathal Garvey & The Sunshine Band " | htmlUnescape | safeHTML }}' - Cathal Garvey & The Sunshine Band HTMLToMarkdown: Aliases: null Args: - ctx - args Description: |- This was added in Hugo v0.151.0 and should be considered experimental for now. We need to test this out in the wild for a while before committing to this API, and there will eventually be more options here. Examples: [] HTMLUnescape: Aliases: - htmlUnescape Args: - s Description: |- HTMLUnescape returns a copy of s with HTML escape requences converted to plain text. Examples: - - '{{ htmlUnescape "Cathal Garvey & The Sunshine Band <cathal@foo.bar>" | safeHTML }}' - Cathal Garvey & The Sunshine Band - - '{{ "Cathal Garvey &amp; The Sunshine Band &lt;cathal@foo.bar&gt;" | htmlUnescape | htmlUnescape | safeHTML }}' - Cathal Garvey & The Sunshine Band - - '{{ "Cathal Garvey &amp; The Sunshine Band &lt;cathal@foo.bar&gt;" | htmlUnescape | htmlUnescape }}' - Cathal Garvey & The Sunshine Band <cathal@foo.bar> - - '{{ htmlUnescape "Cathal Garvey & The Sunshine Band <cathal@foo.bar>" | htmlEscape | safeHTML }}' - Cathal Garvey & The Sunshine Band <cathal@foo.bar> Highlight: Aliases: - highlight Args: - s - args Description: |- Highlight returns a copy of CODE as an HTML string with syntax highlighting applied. transform.Highlight CODE [LANG] [OPTIONS] LANG is optional; it can also be set via the type option in OPTIONS, which makes this work the same way as HighlightCodeBlock. Examples: [] HighlightCodeBlock: Aliases: null Args: - ctx - opts Description: HighlightCodeBlock highlights a code block on the form received in the codeblock render hooks. Examples: [] Markdownify: Aliases: - markdownify Args: - ctx - s Description: Markdownify renders s from Markdown to HTML. Examples: - - '{{ .Title | markdownify }}' - BatMan Plainify: Aliases: - plainify Args: - s Description: Plainify returns a copy of s with all HTML tags removed. Examples: - - '{{ plainify "Hello world, gophers!" }}' - Hello world, gophers! PortableText: Aliases: null Args: - v Description: |- PortableText converts the portable text in v to Markdown. We may add more options in the future. Examples: [] Remarshal: Aliases: null Args: - format - data Description: |- Remarshal is used in the Hugo documentation to convert configuration examples from YAML to JSON, TOML (and possibly the other way around). The is primarily a helper for the Hugo docs site. It is not a general purpose YAML to TOML converter etc., and may change without notice if it serves a purpose in the docs. Format is one of json, yaml or toml. Examples: - - '{{ "title = \"Hello World\"" | transform.Remarshal "json" | safeHTML }}' - '{\n "title": "Hello World"\n}\n' ToMath: Aliases: null Args: - ctx - args Description: |- ToMath converts a LaTeX string to math in the given format, default MathML. This uses KaTeX to render the math, see https://katex.org/. Examples: [] Unmarshal: Aliases: - unmarshal Args: - args Description: |- Unmarshal unmarshals the data given, which can be either a string, json.RawMessage or a Resource. Supported formats are JSON, TOML, YAML, and CSV. You can optionally provide an options map as the first argument. Examples: - - '{{ "hello = \"Hello World\"" | transform.Unmarshal }}' - map[hello:Hello World] - - '{{ "hello = \"Hello World\"" | resources.FromString "data/greetings.toml" | transform.Unmarshal }}' - map[hello:Hello World] XMLEscape: Aliases: null Args: - s Description: |- XMLEscape returns the given string, removing disallowed characters then escaping the result to its XML equivalent. Examples: - - '{{ transform.XMLEscape "

    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: - rawurl Description: |- Parse parses rawurl into a URL structure. The rawurl may be relative or absolute. Examples: [] PathEscape: Aliases: null Args: - s Description: |- PathEscape returns the given string, applying percent-encoding to special characters and reserved delimiters so it can be safely used as a segment within a URL path. Examples: [] PathUnescape: Aliases: null Args: - s Description: |- PathUnescape returns the given string, replacing all percent-encoded sequences with the corresponding unescaped characters. Examples: [] 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: []