hugo

Fork of github.com/gohugoio/hugo with reverse pagination support

git clone git://git.shimmy1996.com/hugo.git

docs.json (140930B)

    1 {
    2   "chroma": {
    3     "lexers": [
    4       {
    5         "Name": "ABAP",
    6         "Aliases": [
    7           "abap"
    8         ]
    9       },
   10       {
   11         "Name": "ABNF",
   12         "Aliases": [
   13           "abnf"
   14         ]
   15       },
   16       {
   17         "Name": "ActionScript",
   18         "Aliases": [
   19           "as",
   20           "actionscript"
   21         ]
   22       },
   23       {
   24         "Name": "ActionScript 3",
   25         "Aliases": [
   26           "as3",
   27           "actionscript3"
   28         ]
   29       },
   30       {
   31         "Name": "Ada",
   32         "Aliases": [
   33           "ada",
   34           "ada95",
   35           "ada2005"
   36         ]
   37       },
   38       {
   39         "Name": "AL",
   40         "Aliases": [
   41           "al"
   42         ]
   43       },
   44       {
   45         "Name": "Angular2",
   46         "Aliases": [
   47           "ng2"
   48         ]
   49       },
   50       {
   51         "Name": "ANTLR",
   52         "Aliases": [
   53           "antlr"
   54         ]
   55       },
   56       {
   57         "Name": "ApacheConf",
   58         "Aliases": [
   59           "apacheconf",
   60           "aconf",
   61           "apache"
   62         ]
   63       },
   64       {
   65         "Name": "APL",
   66         "Aliases": [
   67           "apl"
   68         ]
   69       },
   70       {
   71         "Name": "AppleScript",
   72         "Aliases": [
   73           "applescript"
   74         ]
   75       },
   76       {
   77         "Name": "Arduino",
   78         "Aliases": [
   79           "arduino"
   80         ]
   81       },
   82       {
   83         "Name": "ArmAsm",
   84         "Aliases": [
   85           "armasm"
   86         ]
   87       },
   88       {
   89         "Name": "Awk",
   90         "Aliases": [
   91           "awk",
   92           "gawk",
   93           "mawk",
   94           "nawk"
   95         ]
   96       },
   97       {
   98         "Name": "Ballerina",
   99         "Aliases": [
  100           "ballerina"
  101         ]
  102       },
  103       {
  104         "Name": "Base Makefile",
  105         "Aliases": [
  106           "make",
  107           "makefile",
  108           "mf",
  109           "bsdmake"
  110         ]
  111       },
  112       {
  113         "Name": "Bash",
  114         "Aliases": [
  115           "bash",
  116           "sh",
  117           "ksh",
  118           "zsh",
  119           "shell"
  120         ]
  121       },
  122       {
  123         "Name": "BashSession",
  124         "Aliases": [
  125           "bash-session",
  126           "console",
  127           "shell-session"
  128         ]
  129       },
  130       {
  131         "Name": "Batchfile",
  132         "Aliases": [
  133           "bat",
  134           "batch",
  135           "dosbatch",
  136           "winbatch"
  137         ]
  138       },
  139       {
  140         "Name": "BibTeX",
  141         "Aliases": [
  142           "bib",
  143           "bibtex"
  144         ]
  145       },
  146       {
  147         "Name": "Bicep",
  148         "Aliases": [
  149           "bicep"
  150         ]
  151       },
  152       {
  153         "Name": "BlitzBasic",
  154         "Aliases": [
  155           "blitzbasic",
  156           "b3d",
  157           "bplus"
  158         ]
  159       },
  160       {
  161         "Name": "BNF",
  162         "Aliases": [
  163           "bnf"
  164         ]
  165       },
  166       {
  167         "Name": "Brainfuck",
  168         "Aliases": [
  169           "brainfuck",
  170           "bf"
  171         ]
  172       },
  173       {
  174         "Name": "C",
  175         "Aliases": [
  176           "c"
  177         ]
  178       },
  179       {
  180         "Name": "C#",
  181         "Aliases": [
  182           "csharp",
  183           "c#"
  184         ]
  185       },
  186       {
  187         "Name": "C++",
  188         "Aliases": [
  189           "cpp",
  190           "c++"
  191         ]
  192       },
  193       {
  194         "Name": "Caddyfile",
  195         "Aliases": [
  196           "caddyfile",
  197           "caddy"
  198         ]
  199       },
  200       {
  201         "Name": "Caddyfile Directives",
  202         "Aliases": [
  203           "caddyfile-directives",
  204           "caddyfile-d",
  205           "caddy-d"
  206         ]
  207       },
  208       {
  209         "Name": "Cap'n Proto",
  210         "Aliases": [
  211           "capnp"
  212         ]
  213       },
  214       {
  215         "Name": "Cassandra CQL",
  216         "Aliases": [
  217           "cassandra",
  218           "cql"
  219         ]
  220       },
  221       {
  222         "Name": "Ceylon",
  223         "Aliases": [
  224           "ceylon"
  225         ]
  226       },
  227       {
  228         "Name": "CFEngine3",
  229         "Aliases": [
  230           "cfengine3",
  231           "cf3"
  232         ]
  233       },
  234       {
  235         "Name": "cfstatement",
  236         "Aliases": [
  237           "cfs"
  238         ]
  239       },
  240       {
  241         "Name": "ChaiScript",
  242         "Aliases": [
  243           "chai",
  244           "chaiscript"
  245         ]
  246       },
  247       {
  248         "Name": "Cheetah",
  249         "Aliases": [
  250           "cheetah",
  251           "spitfire"
  252         ]
  253       },
  254       {
  255         "Name": "Clojure",
  256         "Aliases": [
  257           "clojure",
  258           "clj"
  259         ]
  260       },
  261       {
  262         "Name": "CMake",
  263         "Aliases": [
  264           "cmake"
  265         ]
  266       },
  267       {
  268         "Name": "COBOL",
  269         "Aliases": [
  270           "cobol"
  271         ]
  272       },
  273       {
  274         "Name": "CoffeeScript",
  275         "Aliases": [
  276           "coffee-script",
  277           "coffeescript",
  278           "coffee"
  279         ]
  280       },
  281       {
  282         "Name": "Common Lisp",
  283         "Aliases": [
  284           "common-lisp",
  285           "cl",
  286           "lisp"
  287         ]
  288       },
  289       {
  290         "Name": "Common Lisp",
  291         "Aliases": [
  292           "common-lisp",
  293           "cl",
  294           "lisp"
  295         ]
  296       },
  297       {
  298         "Name": "Coq",
  299         "Aliases": [
  300           "coq"
  301         ]
  302       },
  303       {
  304         "Name": "Crystal",
  305         "Aliases": [
  306           "cr",
  307           "crystal"
  308         ]
  309       },
  310       {
  311         "Name": "CSS",
  312         "Aliases": [
  313           "css"
  314         ]
  315       },
  316       {
  317         "Name": "Cython",
  318         "Aliases": [
  319           "cython",
  320           "pyx",
  321           "pyrex"
  322         ]
  323       },
  324       {
  325         "Name": "D",
  326         "Aliases": [
  327           "d"
  328         ]
  329       },
  330       {
  331         "Name": "Dart",
  332         "Aliases": [
  333           "dart"
  334         ]
  335       },
  336       {
  337         "Name": "Diff",
  338         "Aliases": [
  339           "diff",
  340           "udiff"
  341         ]
  342       },
  343       {
  344         "Name": "Django/Jinja",
  345         "Aliases": [
  346           "django",
  347           "jinja"
  348         ]
  349       },
  350       {
  351         "Name": "Docker",
  352         "Aliases": [
  353           "docker",
  354           "dockerfile"
  355         ]
  356       },
  357       {
  358         "Name": "DTD",
  359         "Aliases": [
  360           "dtd"
  361         ]
  362       },
  363       {
  364         "Name": "Dylan",
  365         "Aliases": [
  366           "dylan"
  367         ]
  368       },
  369       {
  370         "Name": "EBNF",
  371         "Aliases": [
  372           "ebnf"
  373         ]
  374       },
  375       {
  376         "Name": "Elixir",
  377         "Aliases": [
  378           "elixir",
  379           "ex",
  380           "exs"
  381         ]
  382       },
  383       {
  384         "Name": "Elm",
  385         "Aliases": [
  386           "elm"
  387         ]
  388       },
  389       {
  390         "Name": "EmacsLisp",
  391         "Aliases": [
  392           "emacs",
  393           "elisp",
  394           "emacs-lisp"
  395         ]
  396       },
  397       {
  398         "Name": "EmacsLisp",
  399         "Aliases": [
  400           "emacs",
  401           "elisp",
  402           "emacs-lisp"
  403         ]
  404       },
  405       {
  406         "Name": "Erlang",
  407         "Aliases": [
  408           "erlang"
  409         ]
  410       },
  411       {
  412         "Name": "Factor",
  413         "Aliases": [
  414           "factor"
  415         ]
  416       },
  417       {
  418         "Name": "Fennel",
  419         "Aliases": [
  420           "fennel",
  421           "fnl"
  422         ]
  423       },
  424       {
  425         "Name": "Fish",
  426         "Aliases": [
  427           "fish",
  428           "fishshell"
  429         ]
  430       },
  431       {
  432         "Name": "Forth",
  433         "Aliases": [
  434           "forth"
  435         ]
  436       },
  437       {
  438         "Name": "Fortran",
  439         "Aliases": [
  440           "fortran"
  441         ]
  442       },
  443       {
  444         "Name": "FortranFixed",
  445         "Aliases": [
  446           "fortranfixed"
  447         ]
  448       },
  449       {
  450         "Name": "FSharp",
  451         "Aliases": [
  452           "fsharp"
  453         ]
  454       },
  455       {
  456         "Name": "GAS",
  457         "Aliases": [
  458           "gas",
  459           "asm"
  460         ]
  461       },
  462       {
  463         "Name": "GDScript",
  464         "Aliases": [
  465           "gdscript",
  466           "gd"
  467         ]
  468       },
  469       {
  470         "Name": "Genshi",
  471         "Aliases": [
  472           "genshi",
  473           "kid",
  474           "xml+genshi",
  475           "xml+kid"
  476         ]
  477       },
  478       {
  479         "Name": "Genshi HTML",
  480         "Aliases": [
  481           "html+genshi",
  482           "html+kid"
  483         ]
  484       },
  485       {
  486         "Name": "Genshi Text",
  487         "Aliases": [
  488           "genshitext"
  489         ]
  490       },
  491       {
  492         "Name": "Gherkin",
  493         "Aliases": [
  494           "cucumber",
  495           "Cucumber",
  496           "gherkin",
  497           "Gherkin"
  498         ]
  499       },
  500       {
  501         "Name": "GLSL",
  502         "Aliases": [
  503           "glsl"
  504         ]
  505       },
  506       {
  507         "Name": "Gnuplot",
  508         "Aliases": [
  509           "gnuplot"
  510         ]
  511       },
  512       {
  513         "Name": "Go",
  514         "Aliases": [
  515           "go",
  516           "golang"
  517         ]
  518       },
  519       {
  520         "Name": "Go HTML Template",
  521         "Aliases": [
  522           "go-html-template"
  523         ]
  524       },
  525       {
  526         "Name": "Go HTML Template",
  527         "Aliases": [
  528           "go-html-template"
  529         ]
  530       },
  531       {
  532         "Name": "Go Text Template",
  533         "Aliases": [
  534           "go-text-template"
  535         ]
  536       },
  537       {
  538         "Name": "GraphQL",
  539         "Aliases": [
  540           "graphql",
  541           "graphqls",
  542           "gql"
  543         ]
  544       },
  545       {
  546         "Name": "Groff",
  547         "Aliases": [
  548           "groff",
  549           "nroff",
  550           "man"
  551         ]
  552       },
  553       {
  554         "Name": "Groovy",
  555         "Aliases": [
  556           "groovy"
  557         ]
  558       },
  559       {
  560         "Name": "Handlebars",
  561         "Aliases": [
  562           "handlebars",
  563           "hbs"
  564         ]
  565       },
  566       {
  567         "Name": "Haskell",
  568         "Aliases": [
  569           "haskell",
  570           "hs"
  571         ]
  572       },
  573       {
  574         "Name": "Haxe",
  575         "Aliases": [
  576           "hx",
  577           "haxe",
  578           "hxsl"
  579         ]
  580       },
  581       {
  582         "Name": "HCL",
  583         "Aliases": [
  584           "hcl"
  585         ]
  586       },
  587       {
  588         "Name": "Hexdump",
  589         "Aliases": [
  590           "hexdump"
  591         ]
  592       },
  593       {
  594         "Name": "HLB",
  595         "Aliases": [
  596           "hlb"
  597         ]
  598       },
  599       {
  600         "Name": "HTML",
  601         "Aliases": [
  602           "html"
  603         ]
  604       },
  605       {
  606         "Name": "HTTP",
  607         "Aliases": [
  608           "http"
  609         ]
  610       },
  611       {
  612         "Name": "Hy",
  613         "Aliases": [
  614           "hylang"
  615         ]
  616       },
  617       {
  618         "Name": "Idris",
  619         "Aliases": [
  620           "idris",
  621           "idr"
  622         ]
  623       },
  624       {
  625         "Name": "Igor",
  626         "Aliases": [
  627           "igor",
  628           "igorpro"
  629         ]
  630       },
  631       {
  632         "Name": "INI",
  633         "Aliases": [
  634           "ini",
  635           "cfg",
  636           "dosini"
  637         ]
  638       },
  639       {
  640         "Name": "Io",
  641         "Aliases": [
  642           "io"
  643         ]
  644       },
  645       {
  646         "Name": "J",
  647         "Aliases": [
  648           "j"
  649         ]
  650       },
  651       {
  652         "Name": "Java",
  653         "Aliases": [
  654           "java"
  655         ]
  656       },
  657       {
  658         "Name": "JavaScript",
  659         "Aliases": [
  660           "js",
  661           "javascript"
  662         ]
  663       },
  664       {
  665         "Name": "JSON",
  666         "Aliases": [
  667           "json"
  668         ]
  669       },
  670       {
  671         "Name": "Julia",
  672         "Aliases": [
  673           "julia",
  674           "jl"
  675         ]
  676       },
  677       {
  678         "Name": "Jungle",
  679         "Aliases": [
  680           "jungle"
  681         ]
  682       },
  683       {
  684         "Name": "Kotlin",
  685         "Aliases": [
  686           "kotlin"
  687         ]
  688       },
  689       {
  690         "Name": "Lighttpd configuration file",
  691         "Aliases": [
  692           "lighty",
  693           "lighttpd"
  694         ]
  695       },
  696       {
  697         "Name": "LLVM",
  698         "Aliases": [
  699           "llvm"
  700         ]
  701       },
  702       {
  703         "Name": "Lua",
  704         "Aliases": [
  705           "lua"
  706         ]
  707       },
  708       {
  709         "Name": "Mako",
  710         "Aliases": [
  711           "mako"
  712         ]
  713       },
  714       {
  715         "Name": "markdown",
  716         "Aliases": [
  717           "md",
  718           "mkd"
  719         ]
  720       },
  721       {
  722         "Name": "Mason",
  723         "Aliases": [
  724           "mason"
  725         ]
  726       },
  727       {
  728         "Name": "Mathematica",
  729         "Aliases": [
  730           "mathematica",
  731           "mma",
  732           "nb"
  733         ]
  734       },
  735       {
  736         "Name": "Matlab",
  737         "Aliases": [
  738           "matlab"
  739         ]
  740       },
  741       {
  742         "Name": "mcfunction",
  743         "Aliases": [
  744           "mcfunction"
  745         ]
  746       },
  747       {
  748         "Name": "Meson",
  749         "Aliases": [
  750           "meson",
  751           "meson.build"
  752         ]
  753       },
  754       {
  755         "Name": "Metal",
  756         "Aliases": [
  757           "metal"
  758         ]
  759       },
  760       {
  761         "Name": "MiniZinc",
  762         "Aliases": [
  763           "minizinc",
  764           "MZN",
  765           "mzn"
  766         ]
  767       },
  768       {
  769         "Name": "MLIR",
  770         "Aliases": [
  771           "mlir"
  772         ]
  773       },
  774       {
  775         "Name": "Modula-2",
  776         "Aliases": [
  777           "modula2",
  778           "m2"
  779         ]
  780       },
  781       {
  782         "Name": "MonkeyC",
  783         "Aliases": [
  784           "monkeyc"
  785         ]
  786       },
  787       {
  788         "Name": "MorrowindScript",
  789         "Aliases": [
  790           "morrowind",
  791           "mwscript"
  792         ]
  793       },
  794       {
  795         "Name": "Myghty",
  796         "Aliases": [
  797           "myghty"
  798         ]
  799       },
  800       {
  801         "Name": "MySQL",
  802         "Aliases": [
  803           "mysql",
  804           "mariadb"
  805         ]
  806       },
  807       {
  808         "Name": "NASM",
  809         "Aliases": [
  810           "nasm"
  811         ]
  812       },
  813       {
  814         "Name": "Newspeak",
  815         "Aliases": [
  816           "newspeak"
  817         ]
  818       },
  819       {
  820         "Name": "Nginx configuration file",
  821         "Aliases": [
  822           "nginx"
  823         ]
  824       },
  825       {
  826         "Name": "Nim",
  827         "Aliases": [
  828           "nim",
  829           "nimrod"
  830         ]
  831       },
  832       {
  833         "Name": "Nix",
  834         "Aliases": [
  835           "nixos",
  836           "nix"
  837         ]
  838       },
  839       {
  840         "Name": "Objective-C",
  841         "Aliases": [
  842           "objective-c",
  843           "objectivec",
  844           "obj-c",
  845           "objc"
  846         ]
  847       },
  848       {
  849         "Name": "OCaml",
  850         "Aliases": [
  851           "ocaml"
  852         ]
  853       },
  854       {
  855         "Name": "Octave",
  856         "Aliases": [
  857           "octave"
  858         ]
  859       },
  860       {
  861         "Name": "OnesEnterprise",
  862         "Aliases": [
  863           "ones",
  864           "onesenterprise",
  865           "1S",
  866           "1S:Enterprise"
  867         ]
  868       },
  869       {
  870         "Name": "OpenEdge ABL",
  871         "Aliases": [
  872           "openedge",
  873           "abl",
  874           "progress",
  875           "openedgeabl"
  876         ]
  877       },
  878       {
  879         "Name": "OpenSCAD",
  880         "Aliases": [
  881           "openscad"
  882         ]
  883       },
  884       {
  885         "Name": "Org Mode",
  886         "Aliases": [
  887           "org",
  888           "orgmode"
  889         ]
  890       },
  891       {
  892         "Name": "PacmanConf",
  893         "Aliases": [
  894           "pacmanconf"
  895         ]
  896       },
  897       {
  898         "Name": "Perl",
  899         "Aliases": [
  900           "perl",
  901           "pl"
  902         ]
  903       },
  904       {
  905         "Name": "PHP",
  906         "Aliases": [
  907           "php",
  908           "php3",
  909           "php4",
  910           "php5"
  911         ]
  912       },
  913       {
  914         "Name": "PHTML",
  915         "Aliases": [
  916           "phtml"
  917         ]
  918       },
  919       {
  920         "Name": "Pig",
  921         "Aliases": [
  922           "pig"
  923         ]
  924       },
  925       {
  926         "Name": "PkgConfig",
  927         "Aliases": [
  928           "pkgconfig"
  929         ]
  930       },
  931       {
  932         "Name": "PL/pgSQL",
  933         "Aliases": [
  934           "plpgsql"
  935         ]
  936       },
  937       {
  938         "Name": "plaintext",
  939         "Aliases": [
  940           "text",
  941           "plain",
  942           "no-highlight"
  943         ]
  944       },
  945       {
  946         "Name": "Plutus Core",
  947         "Aliases": [
  948           "plutus-core",
  949           "plc"
  950         ]
  951       },
  952       {
  953         "Name": "Pony",
  954         "Aliases": [
  955           "pony"
  956         ]
  957       },
  958       {
  959         "Name": "PostgreSQL SQL dialect",
  960         "Aliases": [
  961           "postgresql",
  962           "postgres"
  963         ]
  964       },
  965       {
  966         "Name": "PostScript",
  967         "Aliases": [
  968           "postscript",
  969           "postscr"
  970         ]
  971       },
  972       {
  973         "Name": "POVRay",
  974         "Aliases": [
  975           "pov"
  976         ]
  977       },
  978       {
  979         "Name": "PowerQuery",
  980         "Aliases": [
  981           "powerquery",
  982           "pq"
  983         ]
  984       },
  985       {
  986         "Name": "PowerShell",
  987         "Aliases": [
  988           "powershell",
  989           "posh",
  990           "ps1",
  991           "psm1",
  992           "psd1"
  993         ]
  994       },
  995       {
  996         "Name": "Prolog",
  997         "Aliases": [
  998           "prolog"
  999         ]
 1000       },
 1001       {
 1002         "Name": "PromQL",
 1003         "Aliases": [
 1004           "promql"
 1005         ]
 1006       },
 1007       {
 1008         "Name": "Protocol Buffer",
 1009         "Aliases": [
 1010           "protobuf",
 1011           "proto"
 1012         ]
 1013       },
 1014       {
 1015         "Name": "Puppet",
 1016         "Aliases": [
 1017           "puppet"
 1018         ]
 1019       },
 1020       {
 1021         "Name": "Python",
 1022         "Aliases": [
 1023           "python",
 1024           "py",
 1025           "sage",
 1026           "python3",
 1027           "py3"
 1028         ]
 1029       },
 1030       {
 1031         "Name": "Python 2",
 1032         "Aliases": [
 1033           "python2",
 1034           "py2"
 1035         ]
 1036       },
 1037       {
 1038         "Name": "QBasic",
 1039         "Aliases": [
 1040           "qbasic",
 1041           "basic"
 1042         ]
 1043       },
 1044       {
 1045         "Name": "QML",
 1046         "Aliases": [
 1047           "qml",
 1048           "qbs"
 1049         ]
 1050       },
 1051       {
 1052         "Name": "R",
 1053         "Aliases": [
 1054           "splus",
 1055           "s",
 1056           "r"
 1057         ]
 1058       },
 1059       {
 1060         "Name": "Racket",
 1061         "Aliases": [
 1062           "racket",
 1063           "rkt"
 1064         ]
 1065       },
 1066       {
 1067         "Name": "Ragel",
 1068         "Aliases": [
 1069           "ragel"
 1070         ]
 1071       },
 1072       {
 1073         "Name": "Raku",
 1074         "Aliases": [
 1075           "perl6",
 1076           "pl6",
 1077           "raku"
 1078         ]
 1079       },
 1080       {
 1081         "Name": "react",
 1082         "Aliases": [
 1083           "jsx",
 1084           "react"
 1085         ]
 1086       },
 1087       {
 1088         "Name": "ReasonML",
 1089         "Aliases": [
 1090           "reason",
 1091           "reasonml"
 1092         ]
 1093       },
 1094       {
 1095         "Name": "reg",
 1096         "Aliases": [
 1097           "registry"
 1098         ]
 1099       },
 1100       {
 1101         "Name": "reStructuredText",
 1102         "Aliases": [
 1103           "rst",
 1104           "rest",
 1105           "restructuredtext"
 1106         ]
 1107       },
 1108       {
 1109         "Name": "Rexx",
 1110         "Aliases": [
 1111           "rexx",
 1112           "arexx"
 1113         ]
 1114       },
 1115       {
 1116         "Name": "Ruby",
 1117         "Aliases": [
 1118           "rb",
 1119           "ruby",
 1120           "duby"
 1121         ]
 1122       },
 1123       {
 1124         "Name": "Rust",
 1125         "Aliases": [
 1126           "rust",
 1127           "rs"
 1128         ]
 1129       },
 1130       {
 1131         "Name": "SAS",
 1132         "Aliases": [
 1133           "sas"
 1134         ]
 1135       },
 1136       {
 1137         "Name": "Sass",
 1138         "Aliases": [
 1139           "sass"
 1140         ]
 1141       },
 1142       {
 1143         "Name": "Scala",
 1144         "Aliases": [
 1145           "scala"
 1146         ]
 1147       },
 1148       {
 1149         "Name": "Scheme",
 1150         "Aliases": [
 1151           "scheme",
 1152           "scm"
 1153         ]
 1154       },
 1155       {
 1156         "Name": "Scilab",
 1157         "Aliases": [
 1158           "scilab"
 1159         ]
 1160       },
 1161       {
 1162         "Name": "SCSS",
 1163         "Aliases": [
 1164           "scss"
 1165         ]
 1166       },
 1167       {
 1168         "Name": "Sieve",
 1169         "Aliases": [
 1170           "sieve"
 1171         ]
 1172       },
 1173       {
 1174         "Name": "Smalltalk",
 1175         "Aliases": [
 1176           "smalltalk",
 1177           "squeak",
 1178           "st"
 1179         ]
 1180       },
 1181       {
 1182         "Name": "Smarty",
 1183         "Aliases": [
 1184           "smarty"
 1185         ]
 1186       },
 1187       {
 1188         "Name": "Snobol",
 1189         "Aliases": [
 1190           "snobol"
 1191         ]
 1192       },
 1193       {
 1194         "Name": "Solidity",
 1195         "Aliases": [
 1196           "sol",
 1197           "solidity"
 1198         ]
 1199       },
 1200       {
 1201         "Name": "SPARQL",
 1202         "Aliases": [
 1203           "sparql"
 1204         ]
 1205       },
 1206       {
 1207         "Name": "SQL",
 1208         "Aliases": [
 1209           "sql"
 1210         ]
 1211       },
 1212       {
 1213         "Name": "SquidConf",
 1214         "Aliases": [
 1215           "squidconf",
 1216           "squid.conf",
 1217           "squid"
 1218         ]
 1219       },
 1220       {
 1221         "Name": "Standard ML",
 1222         "Aliases": [
 1223           "sml"
 1224         ]
 1225       },
 1226       {
 1227         "Name": "Stylus",
 1228         "Aliases": [
 1229           "stylus"
 1230         ]
 1231       },
 1232       {
 1233         "Name": "Svelte",
 1234         "Aliases": [
 1235           "svelte"
 1236         ]
 1237       },
 1238       {
 1239         "Name": "Swift",
 1240         "Aliases": [
 1241           "swift"
 1242         ]
 1243       },
 1244       {
 1245         "Name": "SYSTEMD",
 1246         "Aliases": [
 1247           "systemd"
 1248         ]
 1249       },
 1250       {
 1251         "Name": "systemverilog",
 1252         "Aliases": [
 1253           "systemverilog",
 1254           "sv"
 1255         ]
 1256       },
 1257       {
 1258         "Name": "TableGen",
 1259         "Aliases": [
 1260           "tablegen"
 1261         ]
 1262       },
 1263       {
 1264         "Name": "TASM",
 1265         "Aliases": [
 1266           "tasm"
 1267         ]
 1268       },
 1269       {
 1270         "Name": "Tcl",
 1271         "Aliases": [
 1272           "tcl"
 1273         ]
 1274       },
 1275       {
 1276         "Name": "Tcsh",
 1277         "Aliases": [
 1278           "tcsh",
 1279           "csh"
 1280         ]
 1281       },
 1282       {
 1283         "Name": "Termcap",
 1284         "Aliases": [
 1285           "termcap"
 1286         ]
 1287       },
 1288       {
 1289         "Name": "Terminfo",
 1290         "Aliases": [
 1291           "terminfo"
 1292         ]
 1293       },
 1294       {
 1295         "Name": "Terraform",
 1296         "Aliases": [
 1297           "terraform",
 1298           "tf"
 1299         ]
 1300       },
 1301       {
 1302         "Name": "TeX",
 1303         "Aliases": [
 1304           "tex",
 1305           "latex"
 1306         ]
 1307       },
 1308       {
 1309         "Name": "Thrift",
 1310         "Aliases": [
 1311           "thrift"
 1312         ]
 1313       },
 1314       {
 1315         "Name": "TOML",
 1316         "Aliases": [
 1317           "toml"
 1318         ]
 1319       },
 1320       {
 1321         "Name": "TradingView",
 1322         "Aliases": [
 1323           "tradingview",
 1324           "tv"
 1325         ]
 1326       },
 1327       {
 1328         "Name": "Transact-SQL",
 1329         "Aliases": [
 1330           "tsql",
 1331           "t-sql"
 1332         ]
 1333       },
 1334       {
 1335         "Name": "Turing",
 1336         "Aliases": [
 1337           "turing"
 1338         ]
 1339       },
 1340       {
 1341         "Name": "Turtle",
 1342         "Aliases": [
 1343           "turtle"
 1344         ]
 1345       },
 1346       {
 1347         "Name": "Twig",
 1348         "Aliases": [
 1349           "twig"
 1350         ]
 1351       },
 1352       {
 1353         "Name": "TypeScript",
 1354         "Aliases": [
 1355           "ts",
 1356           "tsx",
 1357           "typescript"
 1358         ]
 1359       },
 1360       {
 1361         "Name": "TypoScript",
 1362         "Aliases": [
 1363           "typoscript"
 1364         ]
 1365       },
 1366       {
 1367         "Name": "TypoScriptCssData",
 1368         "Aliases": [
 1369           "typoscriptcssdata"
 1370         ]
 1371       },
 1372       {
 1373         "Name": "TypoScriptHtmlData",
 1374         "Aliases": [
 1375           "typoscripthtmldata"
 1376         ]
 1377       },
 1378       {
 1379         "Name": "V",
 1380         "Aliases": [
 1381           "v",
 1382           "vlang"
 1383         ]
 1384       },
 1385       {
 1386         "Name": "V shell",
 1387         "Aliases": [
 1388           "vsh",
 1389           "vshell"
 1390         ]
 1391       },
 1392       {
 1393         "Name": "VB.net",
 1394         "Aliases": [
 1395           "vb.net",
 1396           "vbnet"
 1397         ]
 1398       },
 1399       {
 1400         "Name": "verilog",
 1401         "Aliases": [
 1402           "verilog",
 1403           "v"
 1404         ]
 1405       },
 1406       {
 1407         "Name": "VHDL",
 1408         "Aliases": [
 1409           "vhdl"
 1410         ]
 1411       },
 1412       {
 1413         "Name": "VimL",
 1414         "Aliases": [
 1415           "vim"
 1416         ]
 1417       },
 1418       {
 1419         "Name": "vue",
 1420         "Aliases": [
 1421           "vue",
 1422           "vuejs"
 1423         ]
 1424       },
 1425       {
 1426         "Name": "WDTE",
 1427         "Aliases": null
 1428       },
 1429       {
 1430         "Name": "Whiley",
 1431         "Aliases": [
 1432           "whiley"
 1433         ]
 1434       },
 1435       {
 1436         "Name": "XML",
 1437         "Aliases": [
 1438           "xml"
 1439         ]
 1440       },
 1441       {
 1442         "Name": "Xorg",
 1443         "Aliases": [
 1444           "xorg.conf"
 1445         ]
 1446       },
 1447       {
 1448         "Name": "YAML",
 1449         "Aliases": [
 1450           "yaml"
 1451         ]
 1452       },
 1453       {
 1454         "Name": "YANG",
 1455         "Aliases": [
 1456           "yang"
 1457         ]
 1458       },
 1459       {
 1460         "Name": "Zed",
 1461         "Aliases": [
 1462           "zed"
 1463         ]
 1464       },
 1465       {
 1466         "Name": "Zig",
 1467         "Aliases": [
 1468           "zig"
 1469         ]
 1470       }
 1471     ]
 1472   },
 1473   "config": {
 1474     "markup": {
 1475       "defaultMarkdownHandler": "goldmark",
 1476       "highlight": {
 1477         "style": "monokai",
 1478         "codeFences": true,
 1479         "noClasses": true,
 1480         "noHl": false,
 1481         "lineNos": false,
 1482         "lineNumbersInTable": true,
 1483         "anchorLineNos": false,
 1484         "lineAnchors": "",
 1485         "lineNoStart": 1,
 1486         "hl_Lines": "",
 1487         "hl_inline": false,
 1488         "tabWidth": 4,
 1489         "guessSyntax": false
 1490       },
 1491       "tableOfContents": {
 1492         "startLevel": 2,
 1493         "endLevel": 3,
 1494         "ordered": false
 1495       },
 1496       "goldmark": {
 1497         "renderer": {
 1498           "hardWraps": false,
 1499           "xhtml": false,
 1500           "unsafe": false
 1501         },
 1502         "parser": {
 1503           "autoHeadingID": true,
 1504           "autoHeadingIDType": "github",
 1505           "attribute": {
 1506             "title": true,
 1507             "block": false
 1508           }
 1509         },
 1510         "extensions": {
 1511           "typographer": true,
 1512           "footnote": true,
 1513           "definitionList": true,
 1514           "table": true,
 1515           "strikethrough": true,
 1516           "linkify": true,
 1517           "linkifyProtocol": "https",
 1518           "taskList": true
 1519         }
 1520       },
 1521       "asciidocExt": {
 1522         "backend": "html5",
 1523         "extensions": [],
 1524         "attributes": {},
 1525         "noHeaderOrFooter": true,
 1526         "safeMode": "unsafe",
 1527         "sectionNumbers": false,
 1528         "verbose": false,
 1529         "trace": false,
 1530         "failureLevel": "fatal",
 1531         "workingFolderCurrent": false,
 1532         "preserveTOC": false
 1533       }
 1534     },
 1535     "mergeStrategy": {
 1536       "build": {
 1537         "_merge": "none"
 1538       },
 1539       "caches": {
 1540         "_merge": "none"
 1541       },
 1542       "cascade": {
 1543         "_merge": "none"
 1544       },
 1545       "frontmatter": {
 1546         "_merge": "none"
 1547       },
 1548       "imaging": {
 1549         "_merge": "none"
 1550       },
 1551       "languages": {
 1552         "_merge": "none",
 1553         "en": {
 1554           "_merge": "none",
 1555           "menus": {
 1556             "_merge": "shallow"
 1557           },
 1558           "params": {
 1559             "_merge": "deep"
 1560           }
 1561         }
 1562       },
 1563       "markup": {
 1564         "_merge": "none"
 1565       },
 1566       "mediatypes": {
 1567         "_merge": "shallow"
 1568       },
 1569       "menus": {
 1570         "_merge": "shallow"
 1571       },
 1572       "minify": {
 1573         "_merge": "none"
 1574       },
 1575       "module": {
 1576         "_merge": "none"
 1577       },
 1578       "outputformats": {
 1579         "_merge": "shallow"
 1580       },
 1581       "params": {
 1582         "_merge": "deep"
 1583       },
 1584       "permalinks": {
 1585         "_merge": "none"
 1586       },
 1587       "privacy": {
 1588         "_merge": "none"
 1589       },
 1590       "related": {
 1591         "_merge": "none"
 1592       },
 1593       "security": {
 1594         "_merge": "none"
 1595       },
 1596       "sitemap": {
 1597         "_merge": "none"
 1598       },
 1599       "taxonomies": {
 1600         "_merge": "none"
 1601       }
 1602     },
 1603     "minify": {
 1604       "minifyOutput": false,
 1605       "disableHTML": false,
 1606       "disableCSS": false,
 1607       "disableJS": false,
 1608       "disableJSON": false,
 1609       "disableSVG": false,
 1610       "disableXML": false,
 1611       "tdewolff": {
 1612         "html": {
 1613           "keepComments": false,
 1614           "keepConditionalComments": true,
 1615           "keepDefaultAttrVals": true,
 1616           "keepDocumentTags": true,
 1617           "keepEndTags": true,
 1618           "keepQuotes": false,
 1619           "keepWhitespace": false
 1620         },
 1621         "css": {
 1622           "keepCSS2": true,
 1623           "precision": 0
 1624         },
 1625         "js": {
 1626           "precision": 0,
 1627           "keepVarNames": false,
 1628           "noNullishOperator": false
 1629         },
 1630         "json": {
 1631           "precision": 0,
 1632           "keepNumbers": false
 1633         },
 1634         "svg": {
 1635           "keepComments": false,
 1636           "precision": 0
 1637         },
 1638         "xml": {
 1639           "keepWhitespace": false
 1640         }
 1641       }
 1642     },
 1643     "security": {
 1644       "enableInlineShortcodes": false,
 1645       "exec": {
 1646         "allow": [
 1647           "^dart-sass-embedded$",
 1648           "^go$",
 1649           "^npx$",
 1650           "^postcss$"
 1651         ],
 1652         "osEnv": [
 1653           "(?i)^(PATH|PATHEXT|APPDATA|TMP|TEMP|TERM)$"
 1654         ]
 1655       },
 1656       "funcs": {
 1657         "getenv": [
 1658           "^HUGO_"
 1659         ]
 1660       },
 1661       "http": {
 1662         "methods": [
 1663           "(?i)GET|POST"
 1664         ],
 1665         "urls": [
 1666           ".*"
 1667         ]
 1668       }
 1669     }
 1670   },
 1671   "media": {
 1672     "types": [
 1673       {
 1674         "mainType": "application",
 1675         "subType": "javascript",
 1676         "delimiter": ".",
 1677         "firstSuffix": {
 1678           "suffix": "js",
 1679           "fullSuffix": ".js"
 1680         },
 1681         "type": "application/javascript",
 1682         "string": "application/javascript",
 1683         "suffixes": [
 1684           "js",
 1685           "jsm",
 1686           "mjs"
 1687         ]
 1688       },
 1689       {
 1690         "mainType": "application",
 1691         "subType": "json",
 1692         "delimiter": ".",
 1693         "firstSuffix": {
 1694           "suffix": "json",
 1695           "fullSuffix": ".json"
 1696         },
 1697         "type": "application/json",
 1698         "string": "application/json",
 1699         "suffixes": [
 1700           "json"
 1701         ]
 1702       },
 1703       {
 1704         "mainType": "application",
 1705         "subType": "manifest",
 1706         "delimiter": ".",
 1707         "firstSuffix": {
 1708           "suffix": "webmanifest",
 1709           "fullSuffix": ".webmanifest"
 1710         },
 1711         "type": "application/manifest+json",
 1712         "string": "application/manifest+json",
 1713         "suffixes": [
 1714           "webmanifest"
 1715         ]
 1716       },
 1717       {
 1718         "mainType": "application",
 1719         "subType": "octet-stream",
 1720         "delimiter": ".",
 1721         "firstSuffix": {
 1722           "suffix": "",
 1723           "fullSuffix": ""
 1724         },
 1725         "type": "application/octet-stream",
 1726         "string": "application/octet-stream",
 1727         "suffixes": [
 1728           ""
 1729         ]
 1730       },
 1731       {
 1732         "mainType": "application",
 1733         "subType": "pdf",
 1734         "delimiter": ".",
 1735         "firstSuffix": {
 1736           "suffix": "pdf",
 1737           "fullSuffix": ".pdf"
 1738         },
 1739         "type": "application/pdf",
 1740         "string": "application/pdf",
 1741         "suffixes": [
 1742           "pdf"
 1743         ]
 1744       },
 1745       {
 1746         "mainType": "application",
 1747         "subType": "rss",
 1748         "delimiter": ".",
 1749         "firstSuffix": {
 1750           "suffix": "xml",
 1751           "fullSuffix": ".xml"
 1752         },
 1753         "type": "application/rss+xml",
 1754         "string": "application/rss+xml",
 1755         "suffixes": [
 1756           "xml",
 1757           "rss"
 1758         ]
 1759       },
 1760       {
 1761         "mainType": "application",
 1762         "subType": "toml",
 1763         "delimiter": ".",
 1764         "firstSuffix": {
 1765           "suffix": "toml",
 1766           "fullSuffix": ".toml"
 1767         },
 1768         "type": "application/toml",
 1769         "string": "application/toml",
 1770         "suffixes": [
 1771           "toml"
 1772         ]
 1773       },
 1774       {
 1775         "mainType": "application",
 1776         "subType": "typescript",
 1777         "delimiter": ".",
 1778         "firstSuffix": {
 1779           "suffix": "ts",
 1780           "fullSuffix": ".ts"
 1781         },
 1782         "type": "application/typescript",
 1783         "string": "application/typescript",
 1784         "suffixes": [
 1785           "ts"
 1786         ]
 1787       },
 1788       {
 1789         "mainType": "application",
 1790         "subType": "xml",
 1791         "delimiter": ".",
 1792         "firstSuffix": {
 1793           "suffix": "xml",
 1794           "fullSuffix": ".xml"
 1795         },
 1796         "type": "application/xml",
 1797         "string": "application/xml",
 1798         "suffixes": [
 1799           "xml"
 1800         ]
 1801       },
 1802       {
 1803         "mainType": "application",
 1804         "subType": "yaml",
 1805         "delimiter": ".",
 1806         "firstSuffix": {
 1807           "suffix": "yaml",
 1808           "fullSuffix": ".yaml"
 1809         },
 1810         "type": "application/yaml",
 1811         "string": "application/yaml",
 1812         "suffixes": [
 1813           "yaml",
 1814           "yml"
 1815         ]
 1816       },
 1817       {
 1818         "mainType": "font",
 1819         "subType": "otf",
 1820         "delimiter": ".",
 1821         "firstSuffix": {
 1822           "suffix": "otf",
 1823           "fullSuffix": ".otf"
 1824         },
 1825         "type": "font/otf",
 1826         "string": "font/otf",
 1827         "suffixes": [
 1828           "otf"
 1829         ]
 1830       },
 1831       {
 1832         "mainType": "font",
 1833         "subType": "ttf",
 1834         "delimiter": ".",
 1835         "firstSuffix": {
 1836           "suffix": "ttf",
 1837           "fullSuffix": ".ttf"
 1838         },
 1839         "type": "font/ttf",
 1840         "string": "font/ttf",
 1841         "suffixes": [
 1842           "ttf"
 1843         ]
 1844       },
 1845       {
 1846         "mainType": "image",
 1847         "subType": "bmp",
 1848         "delimiter": ".",
 1849         "firstSuffix": {
 1850           "suffix": "bmp",
 1851           "fullSuffix": ".bmp"
 1852         },
 1853         "type": "image/bmp",
 1854         "string": "image/bmp",
 1855         "suffixes": [
 1856           "bmp"
 1857         ]
 1858       },
 1859       {
 1860         "mainType": "image",
 1861         "subType": "gif",
 1862         "delimiter": ".",
 1863         "firstSuffix": {
 1864           "suffix": "gif",
 1865           "fullSuffix": ".gif"
 1866         },
 1867         "type": "image/gif",
 1868         "string": "image/gif",
 1869         "suffixes": [
 1870           "gif"
 1871         ]
 1872       },
 1873       {
 1874         "mainType": "image",
 1875         "subType": "jpeg",
 1876         "delimiter": ".",
 1877         "firstSuffix": {
 1878           "suffix": "jpg",
 1879           "fullSuffix": ".jpg"
 1880         },
 1881         "type": "image/jpeg",
 1882         "string": "image/jpeg",
 1883         "suffixes": [
 1884           "jpg",
 1885           "jpeg",
 1886           "jpe",
 1887           "jif",
 1888           "jfif"
 1889         ]
 1890       },
 1891       {
 1892         "mainType": "image",
 1893         "subType": "png",
 1894         "delimiter": ".",
 1895         "firstSuffix": {
 1896           "suffix": "png",
 1897           "fullSuffix": ".png"
 1898         },
 1899         "type": "image/png",
 1900         "string": "image/png",
 1901         "suffixes": [
 1902           "png"
 1903         ]
 1904       },
 1905       {
 1906         "mainType": "image",
 1907         "subType": "svg",
 1908         "delimiter": ".",
 1909         "firstSuffix": {
 1910           "suffix": "svg",
 1911           "fullSuffix": ".svg"
 1912         },
 1913         "type": "image/svg+xml",
 1914         "string": "image/svg+xml",
 1915         "suffixes": [
 1916           "svg"
 1917         ]
 1918       },
 1919       {
 1920         "mainType": "image",
 1921         "subType": "webp",
 1922         "delimiter": ".",
 1923         "firstSuffix": {
 1924           "suffix": "webp",
 1925           "fullSuffix": ".webp"
 1926         },
 1927         "type": "image/webp",
 1928         "string": "image/webp",
 1929         "suffixes": [
 1930           "webp"
 1931         ]
 1932       },
 1933       {
 1934         "mainType": "text",
 1935         "subType": "calendar",
 1936         "delimiter": ".",
 1937         "firstSuffix": {
 1938           "suffix": "ics",
 1939           "fullSuffix": ".ics"
 1940         },
 1941         "type": "text/calendar",
 1942         "string": "text/calendar",
 1943         "suffixes": [
 1944           "ics"
 1945         ]
 1946       },
 1947       {
 1948         "mainType": "text",
 1949         "subType": "css",
 1950         "delimiter": ".",
 1951         "firstSuffix": {
 1952           "suffix": "css",
 1953           "fullSuffix": ".css"
 1954         },
 1955         "type": "text/css",
 1956         "string": "text/css",
 1957         "suffixes": [
 1958           "css"
 1959         ]
 1960       },
 1961       {
 1962         "mainType": "text",
 1963         "subType": "csv",
 1964         "delimiter": ".",
 1965         "firstSuffix": {
 1966           "suffix": "csv",
 1967           "fullSuffix": ".csv"
 1968         },
 1969         "type": "text/csv",
 1970         "string": "text/csv",
 1971         "suffixes": [
 1972           "csv"
 1973         ]
 1974       },
 1975       {
 1976         "mainType": "text",
 1977         "subType": "html",
 1978         "delimiter": ".",
 1979         "firstSuffix": {
 1980           "suffix": "html",
 1981           "fullSuffix": ".html"
 1982         },
 1983         "type": "text/html",
 1984         "string": "text/html",
 1985         "suffixes": [
 1986           "html"
 1987         ]
 1988       },
 1989       {
 1990         "mainType": "text",
 1991         "subType": "jsx",
 1992         "delimiter": ".",
 1993         "firstSuffix": {
 1994           "suffix": "jsx",
 1995           "fullSuffix": ".jsx"
 1996         },
 1997         "type": "text/jsx",
 1998         "string": "text/jsx",
 1999         "suffixes": [
 2000           "jsx"
 2001         ]
 2002       },
 2003       {
 2004         "mainType": "text",
 2005         "subType": "markdown",
 2006         "delimiter": ".",
 2007         "firstSuffix": {
 2008           "suffix": "md",
 2009           "fullSuffix": ".md"
 2010         },
 2011         "type": "text/markdown",
 2012         "string": "text/markdown",
 2013         "suffixes": [
 2014           "md",
 2015           "markdown"
 2016         ]
 2017       },
 2018       {
 2019         "mainType": "text",
 2020         "subType": "plain",
 2021         "delimiter": ".",
 2022         "firstSuffix": {
 2023           "suffix": "txt",
 2024           "fullSuffix": ".txt"
 2025         },
 2026         "type": "text/plain",
 2027         "string": "text/plain",
 2028         "suffixes": [
 2029           "txt"
 2030         ]
 2031       },
 2032       {
 2033         "mainType": "text",
 2034         "subType": "tsx",
 2035         "delimiter": ".",
 2036         "firstSuffix": {
 2037           "suffix": "tsx",
 2038           "fullSuffix": ".tsx"
 2039         },
 2040         "type": "text/tsx",
 2041         "string": "text/tsx",
 2042         "suffixes": [
 2043           "tsx"
 2044         ]
 2045       },
 2046       {
 2047         "mainType": "text",
 2048         "subType": "x-sass",
 2049         "delimiter": ".",
 2050         "firstSuffix": {
 2051           "suffix": "sass",
 2052           "fullSuffix": ".sass"
 2053         },
 2054         "type": "text/x-sass",
 2055         "string": "text/x-sass",
 2056         "suffixes": [
 2057           "sass"
 2058         ]
 2059       },
 2060       {
 2061         "mainType": "text",
 2062         "subType": "x-scss",
 2063         "delimiter": ".",
 2064         "firstSuffix": {
 2065           "suffix": "scss",
 2066           "fullSuffix": ".scss"
 2067         },
 2068         "type": "text/x-scss",
 2069         "string": "text/x-scss",
 2070         "suffixes": [
 2071           "scss"
 2072         ]
 2073       },
 2074       {
 2075         "mainType": "video",
 2076         "subType": "3gpp",
 2077         "delimiter": ".",
 2078         "firstSuffix": {
 2079           "suffix": "3gpp",
 2080           "fullSuffix": ".3gpp"
 2081         },
 2082         "type": "video/3gpp",
 2083         "string": "video/3gpp",
 2084         "suffixes": [
 2085           "3gpp",
 2086           "3gp"
 2087         ]
 2088       },
 2089       {
 2090         "mainType": "video",
 2091         "subType": "mp4",
 2092         "delimiter": ".",
 2093         "firstSuffix": {
 2094           "suffix": "mp4",
 2095           "fullSuffix": ".mp4"
 2096         },
 2097         "type": "video/mp4",
 2098         "string": "video/mp4",
 2099         "suffixes": [
 2100           "mp4"
 2101         ]
 2102       },
 2103       {
 2104         "mainType": "video",
 2105         "subType": "mpeg",
 2106         "delimiter": ".",
 2107         "firstSuffix": {
 2108           "suffix": "mpg",
 2109           "fullSuffix": ".mpg"
 2110         },
 2111         "type": "video/mpeg",
 2112         "string": "video/mpeg",
 2113         "suffixes": [
 2114           "mpg",
 2115           "mpeg"
 2116         ]
 2117       },
 2118       {
 2119         "mainType": "video",
 2120         "subType": "ogg",
 2121         "delimiter": ".",
 2122         "firstSuffix": {
 2123           "suffix": "ogv",
 2124           "fullSuffix": ".ogv"
 2125         },
 2126         "type": "video/ogg",
 2127         "string": "video/ogg",
 2128         "suffixes": [
 2129           "ogv"
 2130         ]
 2131       },
 2132       {
 2133         "mainType": "video",
 2134         "subType": "webm",
 2135         "delimiter": ".",
 2136         "firstSuffix": {
 2137           "suffix": "webm",
 2138           "fullSuffix": ".webm"
 2139         },
 2140         "type": "video/webm",
 2141         "string": "video/webm",
 2142         "suffixes": [
 2143           "webm"
 2144         ]
 2145       },
 2146       {
 2147         "mainType": "video",
 2148         "subType": "x-msvideo",
 2149         "delimiter": ".",
 2150         "firstSuffix": {
 2151           "suffix": "avi",
 2152           "fullSuffix": ".avi"
 2153         },
 2154         "type": "video/x-msvideo",
 2155         "string": "video/x-msvideo",
 2156         "suffixes": [
 2157           "avi"
 2158         ]
 2159       }
 2160     ]
 2161   },
 2162   "output": {
 2163     "formats": [
 2164       {
 2165         "mediaType": "text/html",
 2166         "name": "HTML",
 2167         "path": "",
 2168         "baseName": "index",
 2169         "rel": "canonical",
 2170         "protocol": "",
 2171         "isPlainText": false,
 2172         "isHTML": true,
 2173         "noUgly": false,
 2174         "notAlternative": false,
 2175         "permalinkable": true,
 2176         "weight": 10
 2177       },
 2178       {
 2179         "mediaType": "text/html",
 2180         "name": "AMP",
 2181         "path": "amp",
 2182         "baseName": "index",
 2183         "rel": "amphtml",
 2184         "protocol": "",
 2185         "isPlainText": false,
 2186         "isHTML": true,
 2187         "noUgly": false,
 2188         "notAlternative": false,
 2189         "permalinkable": true,
 2190         "weight": 0
 2191       },
 2192       {
 2193         "mediaType": "text/css",
 2194         "name": "CSS",
 2195         "path": "",
 2196         "baseName": "styles",
 2197         "rel": "stylesheet",
 2198         "protocol": "",
 2199         "isPlainText": true,
 2200         "isHTML": false,
 2201         "noUgly": false,
 2202         "notAlternative": true,
 2203         "permalinkable": false,
 2204         "weight": 0
 2205       },
 2206       {
 2207         "mediaType": "text/csv",
 2208         "name": "CSV",
 2209         "path": "",
 2210         "baseName": "index",
 2211         "rel": "alternate",
 2212         "protocol": "",
 2213         "isPlainText": true,
 2214         "isHTML": false,
 2215         "noUgly": false,
 2216         "notAlternative": false,
 2217         "permalinkable": false,
 2218         "weight": 0
 2219       },
 2220       {
 2221         "mediaType": "text/calendar",
 2222         "name": "Calendar",
 2223         "path": "",
 2224         "baseName": "index",
 2225         "rel": "alternate",
 2226         "protocol": "webcal://",
 2227         "isPlainText": true,
 2228         "isHTML": false,
 2229         "noUgly": false,
 2230         "notAlternative": false,
 2231         "permalinkable": false,
 2232         "weight": 0
 2233       },
 2234       {
 2235         "mediaType": "application/json",
 2236         "name": "JSON",
 2237         "path": "",
 2238         "baseName": "index",
 2239         "rel": "alternate",
 2240         "protocol": "",
 2241         "isPlainText": true,
 2242         "isHTML": false,
 2243         "noUgly": false,
 2244         "notAlternative": false,
 2245         "permalinkable": false,
 2246         "weight": 0
 2247       },
 2248       {
 2249         "mediaType": "text/markdown",
 2250         "name": "MARKDOWN",
 2251         "path": "",
 2252         "baseName": "index",
 2253         "rel": "alternate",
 2254         "protocol": "",
 2255         "isPlainText": true,
 2256         "isHTML": false,
 2257         "noUgly": false,
 2258         "notAlternative": false,
 2259         "permalinkable": false,
 2260         "weight": 0
 2261       },
 2262       {
 2263         "mediaType": "text/plain",
 2264         "name": "ROBOTS",
 2265         "path": "",
 2266         "baseName": "robots",
 2267         "rel": "alternate",
 2268         "protocol": "",
 2269         "isPlainText": true,
 2270         "isHTML": false,
 2271         "noUgly": false,
 2272         "notAlternative": false,
 2273         "permalinkable": false,
 2274         "weight": 0
 2275       },
 2276       {
 2277         "mediaType": "application/rss+xml",
 2278         "name": "RSS",
 2279         "path": "",
 2280         "baseName": "index",
 2281         "rel": "alternate",
 2282         "protocol": "",
 2283         "isPlainText": false,
 2284         "isHTML": false,
 2285         "noUgly": true,
 2286         "notAlternative": false,
 2287         "permalinkable": false,
 2288         "weight": 0
 2289       },
 2290       {
 2291         "mediaType": "application/xml",
 2292         "name": "Sitemap",
 2293         "path": "",
 2294         "baseName": "sitemap",
 2295         "rel": "sitemap",
 2296         "protocol": "",
 2297         "isPlainText": false,
 2298         "isHTML": false,
 2299         "noUgly": true,
 2300         "notAlternative": false,
 2301         "permalinkable": false,
 2302         "weight": 0
 2303       },
 2304       {
 2305         "mediaType": "application/manifest+json",
 2306         "name": "WebAppManifest",
 2307         "path": "",
 2308         "baseName": "manifest",
 2309         "rel": "manifest",
 2310         "protocol": "",
 2311         "isPlainText": true,
 2312         "isHTML": false,
 2313         "noUgly": false,
 2314         "notAlternative": true,
 2315         "permalinkable": false,
 2316         "weight": 0
 2317       }
 2318     ],
 2319     "layouts": [
 2320       {
 2321         "Example": "Single page in \"posts\" section",
 2322         "Kind": "page",
 2323         "OutputFormat": "HTML",
 2324         "Suffix": "html",
 2325         "Template Lookup Order": [
 2326           "layouts/posts/single.html.html",
 2327           "layouts/posts/single.html",
 2328           "layouts/_default/single.html.html",
 2329           "layouts/_default/single.html"
 2330         ]
 2331       },
 2332       {
 2333         "Example": "Base template for single page in \"posts\" section",
 2334         "Kind": "page",
 2335         "OutputFormat": "HTML",
 2336         "Suffix": "html",
 2337         "Template Lookup Order": [
 2338           "layouts/posts/single-baseof.html.html",
 2339           "layouts/posts/baseof.html.html",
 2340           "layouts/posts/single-baseof.html",
 2341           "layouts/posts/baseof.html",
 2342           "layouts/_default/single-baseof.html.html",
 2343           "layouts/_default/baseof.html.html",
 2344           "layouts/_default/single-baseof.html",
 2345           "layouts/_default/baseof.html"
 2346         ]
 2347       },
 2348       {
 2349         "Example": "Single page in \"posts\" section with layout set",
 2350         "Kind": "page",
 2351         "OutputFormat": "HTML",
 2352         "Suffix": "html",
 2353         "Template Lookup Order": [
 2354           "layouts/posts/demolayout.html.html",
 2355           "layouts/posts/single.html.html",
 2356           "layouts/posts/demolayout.html",
 2357           "layouts/posts/single.html",
 2358           "layouts/_default/demolayout.html.html",
 2359           "layouts/_default/single.html.html",
 2360           "layouts/_default/demolayout.html",
 2361           "layouts/_default/single.html"
 2362         ]
 2363       },
 2364       {
 2365         "Example": "Base template for single page in \"posts\" section with layout set",
 2366         "Kind": "page",
 2367         "OutputFormat": "HTML",
 2368         "Suffix": "html",
 2369         "Template Lookup Order": [
 2370           "layouts/posts/demolayout-baseof.html.html",
 2371           "layouts/posts/single-baseof.html.html",
 2372           "layouts/posts/baseof.html.html",
 2373           "layouts/posts/demolayout-baseof.html",
 2374           "layouts/posts/single-baseof.html",
 2375           "layouts/posts/baseof.html",
 2376           "layouts/_default/demolayout-baseof.html.html",
 2377           "layouts/_default/single-baseof.html.html",
 2378           "layouts/_default/baseof.html.html",
 2379           "layouts/_default/demolayout-baseof.html",
 2380           "layouts/_default/single-baseof.html",
 2381           "layouts/_default/baseof.html"
 2382         ]
 2383       },
 2384       {
 2385         "Example": "AMP single page",
 2386         "Kind": "page",
 2387         "OutputFormat": "AMP",
 2388         "Suffix": "html",
 2389         "Template Lookup Order": [
 2390           "layouts/posts/single.amp.html",
 2391           "layouts/posts/single.html",
 2392           "layouts/_default/single.amp.html",
 2393           "layouts/_default/single.html"
 2394         ]
 2395       },
 2396       {
 2397         "Example": "AMP single page, French language",
 2398         "Kind": "page",
 2399         "OutputFormat": "AMP",
 2400         "Suffix": "html",
 2401         "Template Lookup Order": [
 2402           "layouts/posts/single.fr.amp.html",
 2403           "layouts/posts/single.amp.html",
 2404           "layouts/posts/single.fr.html",
 2405           "layouts/posts/single.html",
 2406           "layouts/_default/single.fr.amp.html",
 2407           "layouts/_default/single.amp.html",
 2408           "layouts/_default/single.fr.html",
 2409           "layouts/_default/single.html"
 2410         ]
 2411       },
 2412       {
 2413         "Example": "Home page",
 2414         "Kind": "home",
 2415         "OutputFormat": "HTML",
 2416         "Suffix": "html",
 2417         "Template Lookup Order": [
 2418           "layouts/index.html.html",
 2419           "layouts/home.html.html",
 2420           "layouts/list.html.html",
 2421           "layouts/index.html",
 2422           "layouts/home.html",
 2423           "layouts/list.html",
 2424           "layouts/_default/index.html.html",
 2425           "layouts/_default/home.html.html",
 2426           "layouts/_default/list.html.html",
 2427           "layouts/_default/index.html",
 2428           "layouts/_default/home.html",
 2429           "layouts/_default/list.html"
 2430         ]
 2431       },
 2432       {
 2433         "Example": "Base template for home page",
 2434         "Kind": "home",
 2435         "OutputFormat": "HTML",
 2436         "Suffix": "html",
 2437         "Template Lookup Order": [
 2438           "layouts/index-baseof.html.html",
 2439           "layouts/home-baseof.html.html",
 2440           "layouts/list-baseof.html.html",
 2441           "layouts/baseof.html.html",
 2442           "layouts/index-baseof.html",
 2443           "layouts/home-baseof.html",
 2444           "layouts/list-baseof.html",
 2445           "layouts/baseof.html",
 2446           "layouts/_default/index-baseof.html.html",
 2447           "layouts/_default/home-baseof.html.html",
 2448           "layouts/_default/list-baseof.html.html",
 2449           "layouts/_default/baseof.html.html",
 2450           "layouts/_default/index-baseof.html",
 2451           "layouts/_default/home-baseof.html",
 2452           "layouts/_default/list-baseof.html",
 2453           "layouts/_default/baseof.html"
 2454         ]
 2455       },
 2456       {
 2457         "Example": "Home page with type set",
 2458         "Kind": "home",
 2459         "OutputFormat": "HTML",
 2460         "Suffix": "html",
 2461         "Template Lookup Order": [
 2462           "layouts/demotype/index.html.html",
 2463           "layouts/demotype/home.html.html",
 2464           "layouts/demotype/list.html.html",
 2465           "layouts/demotype/index.html",
 2466           "layouts/demotype/home.html",
 2467           "layouts/demotype/list.html",
 2468           "layouts/index.html.html",
 2469           "layouts/home.html.html",
 2470           "layouts/list.html.html",
 2471           "layouts/index.html",
 2472           "layouts/home.html",
 2473           "layouts/list.html",
 2474           "layouts/_default/index.html.html",
 2475           "layouts/_default/home.html.html",
 2476           "layouts/_default/list.html.html",
 2477           "layouts/_default/index.html",
 2478           "layouts/_default/home.html",
 2479           "layouts/_default/list.html"
 2480         ]
 2481       },
 2482       {
 2483         "Example": "Base template for home page with type set",
 2484         "Kind": "home",
 2485         "OutputFormat": "HTML",
 2486         "Suffix": "html",
 2487         "Template Lookup Order": [
 2488           "layouts/demotype/index-baseof.html.html",
 2489           "layouts/demotype/home-baseof.html.html",
 2490           "layouts/demotype/list-baseof.html.html",
 2491           "layouts/demotype/baseof.html.html",
 2492           "layouts/demotype/index-baseof.html",
 2493           "layouts/demotype/home-baseof.html",
 2494           "layouts/demotype/list-baseof.html",
 2495           "layouts/demotype/baseof.html",
 2496           "layouts/index-baseof.html.html",
 2497           "layouts/home-baseof.html.html",
 2498           "layouts/list-baseof.html.html",
 2499           "layouts/baseof.html.html",
 2500           "layouts/index-baseof.html",
 2501           "layouts/home-baseof.html",
 2502           "layouts/list-baseof.html",
 2503           "layouts/baseof.html",
 2504           "layouts/_default/index-baseof.html.html",
 2505           "layouts/_default/home-baseof.html.html",
 2506           "layouts/_default/list-baseof.html.html",
 2507           "layouts/_default/baseof.html.html",
 2508           "layouts/_default/index-baseof.html",
 2509           "layouts/_default/home-baseof.html",
 2510           "layouts/_default/list-baseof.html",
 2511           "layouts/_default/baseof.html"
 2512         ]
 2513       },
 2514       {
 2515         "Example": "Home page with layout set",
 2516         "Kind": "home",
 2517         "OutputFormat": "HTML",
 2518         "Suffix": "html",
 2519         "Template Lookup Order": [
 2520           "layouts/demolayout.html.html",
 2521           "layouts/index.html.html",
 2522           "layouts/home.html.html",
 2523           "layouts/list.html.html",
 2524           "layouts/demolayout.html",
 2525           "layouts/index.html",
 2526           "layouts/home.html",
 2527           "layouts/list.html",
 2528           "layouts/_default/demolayout.html.html",
 2529           "layouts/_default/index.html.html",
 2530           "layouts/_default/home.html.html",
 2531           "layouts/_default/list.html.html",
 2532           "layouts/_default/demolayout.html",
 2533           "layouts/_default/index.html",
 2534           "layouts/_default/home.html",
 2535           "layouts/_default/list.html"
 2536         ]
 2537       },
 2538       {
 2539         "Example": "AMP home, French language",
 2540         "Kind": "home",
 2541         "OutputFormat": "AMP",
 2542         "Suffix": "html",
 2543         "Template Lookup Order": [
 2544           "layouts/index.fr.amp.html",
 2545           "layouts/home.fr.amp.html",
 2546           "layouts/list.fr.amp.html",
 2547           "layouts/index.amp.html",
 2548           "layouts/home.amp.html",
 2549           "layouts/list.amp.html",
 2550           "layouts/index.fr.html",
 2551           "layouts/home.fr.html",
 2552           "layouts/list.fr.html",
 2553           "layouts/index.html",
 2554           "layouts/home.html",
 2555           "layouts/list.html",
 2556           "layouts/_default/index.fr.amp.html",
 2557           "layouts/_default/home.fr.amp.html",
 2558           "layouts/_default/list.fr.amp.html",
 2559           "layouts/_default/index.amp.html",
 2560           "layouts/_default/home.amp.html",
 2561           "layouts/_default/list.amp.html",
 2562           "layouts/_default/index.fr.html",
 2563           "layouts/_default/home.fr.html",
 2564           "layouts/_default/list.fr.html",
 2565           "layouts/_default/index.html",
 2566           "layouts/_default/home.html",
 2567           "layouts/_default/list.html"
 2568         ]
 2569       },
 2570       {
 2571         "Example": "JSON home",
 2572         "Kind": "home",
 2573         "OutputFormat": "JSON",
 2574         "Suffix": "json",
 2575         "Template Lookup Order": [
 2576           "layouts/index.json.json",
 2577           "layouts/home.json.json",
 2578           "layouts/list.json.json",
 2579           "layouts/index.json",
 2580           "layouts/home.json",
 2581           "layouts/list.json",
 2582           "layouts/_default/index.json.json",
 2583           "layouts/_default/home.json.json",
 2584           "layouts/_default/list.json.json",
 2585           "layouts/_default/index.json",
 2586           "layouts/_default/home.json",
 2587           "layouts/_default/list.json"
 2588         ]
 2589       },
 2590       {
 2591         "Example": "RSS home",
 2592         "Kind": "home",
 2593         "OutputFormat": "RSS",
 2594         "Suffix": "xml",
 2595         "Template Lookup Order": [
 2596           "layouts/index.rss.xml",
 2597           "layouts/home.rss.xml",
 2598           "layouts/rss.xml",
 2599           "layouts/list.rss.xml",
 2600           "layouts/index.xml",
 2601           "layouts/home.xml",
 2602           "layouts/list.xml",
 2603           "layouts/_default/index.rss.xml",
 2604           "layouts/_default/home.rss.xml",
 2605           "layouts/_default/rss.xml",
 2606           "layouts/_default/list.rss.xml",
 2607           "layouts/_default/index.xml",
 2608           "layouts/_default/home.xml",
 2609           "layouts/_default/list.xml",
 2610           "layouts/_internal/_default/rss.xml"
 2611         ]
 2612       },
 2613       {
 2614         "Example": "RSS section posts",
 2615         "Kind": "section",
 2616         "OutputFormat": "RSS",
 2617         "Suffix": "xml",
 2618         "Template Lookup Order": [
 2619           "layouts/posts/section.rss.xml",
 2620           "layouts/posts/rss.xml",
 2621           "layouts/posts/list.rss.xml",
 2622           "layouts/posts/section.xml",
 2623           "layouts/posts/list.xml",
 2624           "layouts/section/section.rss.xml",
 2625           "layouts/section/rss.xml",
 2626           "layouts/section/list.rss.xml",
 2627           "layouts/section/section.xml",
 2628           "layouts/section/list.xml",
 2629           "layouts/_default/section.rss.xml",
 2630           "layouts/_default/rss.xml",
 2631           "layouts/_default/list.rss.xml",
 2632           "layouts/_default/section.xml",
 2633           "layouts/_default/list.xml",
 2634           "layouts/_internal/_default/rss.xml"
 2635         ]
 2636       },
 2637       {
 2638         "Example": "Taxonomy in categories",
 2639         "Kind": "taxonomy",
 2640         "OutputFormat": "RSS",
 2641         "Suffix": "xml",
 2642         "Template Lookup Order": [
 2643           "layouts/categories/category.terms.rss.xml",
 2644           "layouts/categories/terms.rss.xml",
 2645           "layouts/categories/taxonomy.rss.xml",
 2646           "layouts/categories/rss.xml",
 2647           "layouts/categories/list.rss.xml",
 2648           "layouts/categories/category.terms.xml",
 2649           "layouts/categories/terms.xml",
 2650           "layouts/categories/taxonomy.xml",
 2651           "layouts/categories/list.xml",
 2652           "layouts/category/category.terms.rss.xml",
 2653           "layouts/category/terms.rss.xml",
 2654           "layouts/category/taxonomy.rss.xml",
 2655           "layouts/category/rss.xml",
 2656           "layouts/category/list.rss.xml",
 2657           "layouts/category/category.terms.xml",
 2658           "layouts/category/terms.xml",
 2659           "layouts/category/taxonomy.xml",
 2660           "layouts/category/list.xml",
 2661           "layouts/taxonomy/category.terms.rss.xml",
 2662           "layouts/taxonomy/terms.rss.xml",
 2663           "layouts/taxonomy/taxonomy.rss.xml",
 2664           "layouts/taxonomy/rss.xml",
 2665           "layouts/taxonomy/list.rss.xml",
 2666           "layouts/taxonomy/category.terms.xml",
 2667           "layouts/taxonomy/terms.xml",
 2668           "layouts/taxonomy/taxonomy.xml",
 2669           "layouts/taxonomy/list.xml",
 2670           "layouts/_default/category.terms.rss.xml",
 2671           "layouts/_default/terms.rss.xml",
 2672           "layouts/_default/taxonomy.rss.xml",
 2673           "layouts/_default/rss.xml",
 2674           "layouts/_default/list.rss.xml",
 2675           "layouts/_default/category.terms.xml",
 2676           "layouts/_default/terms.xml",
 2677           "layouts/_default/taxonomy.xml",
 2678           "layouts/_default/list.xml",
 2679           "layouts/_internal/_default/rss.xml"
 2680         ]
 2681       },
 2682       {
 2683         "Example": "Term in categories",
 2684         "Kind": "term",
 2685         "OutputFormat": "RSS",
 2686         "Suffix": "xml",
 2687         "Template Lookup Order": [
 2688           "layouts/categories/term.rss.xml",
 2689           "layouts/categories/category.rss.xml",
 2690           "layouts/categories/taxonomy.rss.xml",
 2691           "layouts/categories/rss.xml",
 2692           "layouts/categories/list.rss.xml",
 2693           "layouts/categories/term.xml",
 2694           "layouts/categories/category.xml",
 2695           "layouts/categories/taxonomy.xml",
 2696           "layouts/categories/list.xml",
 2697           "layouts/term/term.rss.xml",
 2698           "layouts/term/category.rss.xml",
 2699           "layouts/term/taxonomy.rss.xml",
 2700           "layouts/term/rss.xml",
 2701           "layouts/term/list.rss.xml",
 2702           "layouts/term/term.xml",
 2703           "layouts/term/category.xml",
 2704           "layouts/term/taxonomy.xml",
 2705           "layouts/term/list.xml",
 2706           "layouts/taxonomy/term.rss.xml",
 2707           "layouts/taxonomy/category.rss.xml",
 2708           "layouts/taxonomy/taxonomy.rss.xml",
 2709           "layouts/taxonomy/rss.xml",
 2710           "layouts/taxonomy/list.rss.xml",
 2711           "layouts/taxonomy/term.xml",
 2712           "layouts/taxonomy/category.xml",
 2713           "layouts/taxonomy/taxonomy.xml",
 2714           "layouts/taxonomy/list.xml",
 2715           "layouts/category/term.rss.xml",
 2716           "layouts/category/category.rss.xml",
 2717           "layouts/category/taxonomy.rss.xml",
 2718           "layouts/category/rss.xml",
 2719           "layouts/category/list.rss.xml",
 2720           "layouts/category/term.xml",
 2721           "layouts/category/category.xml",
 2722           "layouts/category/taxonomy.xml",
 2723           "layouts/category/list.xml",
 2724           "layouts/_default/term.rss.xml",
 2725           "layouts/_default/category.rss.xml",
 2726           "layouts/_default/taxonomy.rss.xml",
 2727           "layouts/_default/rss.xml",
 2728           "layouts/_default/list.rss.xml",
 2729           "layouts/_default/term.xml",
 2730           "layouts/_default/category.xml",
 2731           "layouts/_default/taxonomy.xml",
 2732           "layouts/_default/list.xml",
 2733           "layouts/_internal/_default/rss.xml"
 2734         ]
 2735       },
 2736       {
 2737         "Example": "Section list for \"posts\" section",
 2738         "Kind": "section",
 2739         "OutputFormat": "HTML",
 2740         "Suffix": "html",
 2741         "Template Lookup Order": [
 2742           "layouts/posts/posts.html.html",
 2743           "layouts/posts/section.html.html",
 2744           "layouts/posts/list.html.html",
 2745           "layouts/posts/posts.html",
 2746           "layouts/posts/section.html",
 2747           "layouts/posts/list.html",
 2748           "layouts/section/posts.html.html",
 2749           "layouts/section/section.html.html",
 2750           "layouts/section/list.html.html",
 2751           "layouts/section/posts.html",
 2752           "layouts/section/section.html",
 2753           "layouts/section/list.html",
 2754           "layouts/_default/posts.html.html",
 2755           "layouts/_default/section.html.html",
 2756           "layouts/_default/list.html.html",
 2757           "layouts/_default/posts.html",
 2758           "layouts/_default/section.html",
 2759           "layouts/_default/list.html"
 2760         ]
 2761       },
 2762       {
 2763         "Example": "Section list for \"posts\" section with type set to \"blog\"",
 2764         "Kind": "section",
 2765         "OutputFormat": "HTML",
 2766         "Suffix": "html",
 2767         "Template Lookup Order": [
 2768           "layouts/blog/posts.html.html",
 2769           "layouts/blog/section.html.html",
 2770           "layouts/blog/list.html.html",
 2771           "layouts/blog/posts.html",
 2772           "layouts/blog/section.html",
 2773           "layouts/blog/list.html",
 2774           "layouts/posts/posts.html.html",
 2775           "layouts/posts/section.html.html",
 2776           "layouts/posts/list.html.html",
 2777           "layouts/posts/posts.html",
 2778           "layouts/posts/section.html",
 2779           "layouts/posts/list.html",
 2780           "layouts/section/posts.html.html",
 2781           "layouts/section/section.html.html",
 2782           "layouts/section/list.html.html",
 2783           "layouts/section/posts.html",
 2784           "layouts/section/section.html",
 2785           "layouts/section/list.html",
 2786           "layouts/_default/posts.html.html",
 2787           "layouts/_default/section.html.html",
 2788           "layouts/_default/list.html.html",
 2789           "layouts/_default/posts.html",
 2790           "layouts/_default/section.html",
 2791           "layouts/_default/list.html"
 2792         ]
 2793       },
 2794       {
 2795         "Example": "Section list for \"posts\" section with layout set to \"demoLayout\"",
 2796         "Kind": "section",
 2797         "OutputFormat": "HTML",
 2798         "Suffix": "html",
 2799         "Template Lookup Order": [
 2800           "layouts/posts/demolayout.html.html",
 2801           "layouts/posts/posts.html.html",
 2802           "layouts/posts/section.html.html",
 2803           "layouts/posts/list.html.html",
 2804           "layouts/posts/demolayout.html",
 2805           "layouts/posts/posts.html",
 2806           "layouts/posts/section.html",
 2807           "layouts/posts/list.html",
 2808           "layouts/section/demolayout.html.html",
 2809           "layouts/section/posts.html.html",
 2810           "layouts/section/section.html.html",
 2811           "layouts/section/list.html.html",
 2812           "layouts/section/demolayout.html",
 2813           "layouts/section/posts.html",
 2814           "layouts/section/section.html",
 2815           "layouts/section/list.html",
 2816           "layouts/_default/demolayout.html.html",
 2817           "layouts/_default/posts.html.html",
 2818           "layouts/_default/section.html.html",
 2819           "layouts/_default/list.html.html",
 2820           "layouts/_default/demolayout.html",
 2821           "layouts/_default/posts.html",
 2822           "layouts/_default/section.html",
 2823           "layouts/_default/list.html"
 2824         ]
 2825       },
 2826       {
 2827         "Example": "Taxonomy list in categories",
 2828         "Kind": "taxonomy",
 2829         "OutputFormat": "HTML",
 2830         "Suffix": "html",
 2831         "Template Lookup Order": [
 2832           "layouts/categories/category.terms.html.html",
 2833           "layouts/categories/terms.html.html",
 2834           "layouts/categories/taxonomy.html.html",
 2835           "layouts/categories/list.html.html",
 2836           "layouts/categories/category.terms.html",
 2837           "layouts/categories/terms.html",
 2838           "layouts/categories/taxonomy.html",
 2839           "layouts/categories/list.html",
 2840           "layouts/category/category.terms.html.html",
 2841           "layouts/category/terms.html.html",
 2842           "layouts/category/taxonomy.html.html",
 2843           "layouts/category/list.html.html",
 2844           "layouts/category/category.terms.html",
 2845           "layouts/category/terms.html",
 2846           "layouts/category/taxonomy.html",
 2847           "layouts/category/list.html",
 2848           "layouts/taxonomy/category.terms.html.html",
 2849           "layouts/taxonomy/terms.html.html",
 2850           "layouts/taxonomy/taxonomy.html.html",
 2851           "layouts/taxonomy/list.html.html",
 2852           "layouts/taxonomy/category.terms.html",
 2853           "layouts/taxonomy/terms.html",
 2854           "layouts/taxonomy/taxonomy.html",
 2855           "layouts/taxonomy/list.html",
 2856           "layouts/_default/category.terms.html.html",
 2857           "layouts/_default/terms.html.html",
 2858           "layouts/_default/taxonomy.html.html",
 2859           "layouts/_default/list.html.html",
 2860           "layouts/_default/category.terms.html",
 2861           "layouts/_default/terms.html",
 2862           "layouts/_default/taxonomy.html",
 2863           "layouts/_default/list.html"
 2864         ]
 2865       },
 2866       {
 2867         "Example": "Taxonomy term in categories",
 2868         "Kind": "term",
 2869         "OutputFormat": "HTML",
 2870         "Suffix": "html",
 2871         "Template Lookup Order": [
 2872           "layouts/categories/term.html.html",
 2873           "layouts/categories/category.html.html",
 2874           "layouts/categories/taxonomy.html.html",
 2875           "layouts/categories/list.html.html",
 2876           "layouts/categories/term.html",
 2877           "layouts/categories/category.html",
 2878           "layouts/categories/taxonomy.html",
 2879           "layouts/categories/list.html",
 2880           "layouts/term/term.html.html",
 2881           "layouts/term/category.html.html",
 2882           "layouts/term/taxonomy.html.html",
 2883           "layouts/term/list.html.html",
 2884           "layouts/term/term.html",
 2885           "layouts/term/category.html",
 2886           "layouts/term/taxonomy.html",
 2887           "layouts/term/list.html",
 2888           "layouts/taxonomy/term.html.html",
 2889           "layouts/taxonomy/category.html.html",
 2890           "layouts/taxonomy/taxonomy.html.html",
 2891           "layouts/taxonomy/list.html.html",
 2892           "layouts/taxonomy/term.html",
 2893           "layouts/taxonomy/category.html",
 2894           "layouts/taxonomy/taxonomy.html",
 2895           "layouts/taxonomy/list.html",
 2896           "layouts/category/term.html.html",
 2897           "layouts/category/category.html.html",
 2898           "layouts/category/taxonomy.html.html",
 2899           "layouts/category/list.html.html",
 2900           "layouts/category/term.html",
 2901           "layouts/category/category.html",
 2902           "layouts/category/taxonomy.html",
 2903           "layouts/category/list.html",
 2904           "layouts/_default/term.html.html",
 2905           "layouts/_default/category.html.html",
 2906           "layouts/_default/taxonomy.html.html",
 2907           "layouts/_default/list.html.html",
 2908           "layouts/_default/term.html",
 2909           "layouts/_default/category.html",
 2910           "layouts/_default/taxonomy.html",
 2911           "layouts/_default/list.html"
 2912         ]
 2913       }
 2914     ]
 2915   },
 2916   "tpl": {
 2917     "funcs": {
 2918       "cast": {
 2919         "ToFloat": {
 2920           "Description": "ToFloat converts v to a float.",
 2921           "Args": [
 2922             "v"
 2923           ],
 2924           "Aliases": [
 2925             "float"
 2926           ],
 2927           "Examples": [
 2928             [
 2929               "{{ \"1234\" | float | printf \"%T\" }}",
 2930               "float64"
 2931             ]
 2932           ]
 2933         },
 2934         "ToInt": {
 2935           "Description": "ToInt converts v to an int.",
 2936           "Args": [
 2937             "v"
 2938           ],
 2939           "Aliases": [
 2940             "int"
 2941           ],
 2942           "Examples": [
 2943             [
 2944               "{{ \"1234\" | int | printf \"%T\" }}",
 2945               "int"
 2946             ]
 2947           ]
 2948         },
 2949         "ToString": {
 2950           "Description": "ToString converts v to a string.",
 2951           "Args": [
 2952             "v"
 2953           ],
 2954           "Aliases": [
 2955             "string"
 2956           ],
 2957           "Examples": [
 2958             [
 2959               "{{ 1234 | string | printf \"%T\" }}",
 2960               "string"
 2961             ]
 2962           ]
 2963         }
 2964       },
 2965       "compare": {
 2966         "Conditional": {
 2967           "Description": "Conditional can be used as a ternary operator.\nIt returns a if condition, else b.",
 2968           "Args": [
 2969             "condition",
 2970             "a",
 2971             "b"
 2972           ],
 2973           "Aliases": [
 2974             "cond"
 2975           ],
 2976           "Examples": [
 2977             [
 2978               "{{ cond (eq (add 2 2) 4) \"2+2 is 4\" \"what?\" | safeHTML }}",
 2979               "2+2 is 4"
 2980             ]
 2981           ]
 2982         },
 2983         "Default": {
 2984           "Description": "Default checks whether a given value is set and returns a default value if it\nis not.  \"Set\" in this context means non-zero for numeric types and times;\nnon-zero length for strings, arrays, slices, and maps;\nany boolean or struct value; or non-nil for any other types.",
 2985           "Args": [
 2986             "dflt",
 2987             "given"
 2988           ],
 2989           "Aliases": [
 2990             "default"
 2991           ],
 2992           "Examples": [
 2993             [
 2994               "{{ \"Hugo Rocks!\" | default \"Hugo Rules!\" }}",
 2995               "Hugo Rocks!"
 2996             ],
 2997             [
 2998               "{{ \"\" | default \"Hugo Rules!\" }}",
 2999               "Hugo Rules!"
 3000             ]
 3001           ]
 3002         },
 3003         "Eq": {
 3004           "Description": "Eq returns the boolean truth of arg1 == arg2 || arg1 == arg3 || arg1 == arg4.",
 3005           "Args": [
 3006             "first",
 3007             "others"
 3008           ],
 3009           "Aliases": [
 3010             "eq"
 3011           ],
 3012           "Examples": [
 3013             [
 3014               "{{ if eq .Section \"blog\" }}current-section{{ end }}",
 3015               "current-section"
 3016             ]
 3017           ]
 3018         },
 3019         "Ge": {
 3020           "Description": "Ge returns the boolean truth of arg1 \u003e= arg2 \u0026\u0026 arg1 \u003e= arg3 \u0026\u0026 arg1 \u003e= arg4.",
 3021           "Args": [
 3022             "first",
 3023             "others"
 3024           ],
 3025           "Aliases": [
 3026             "ge"
 3027           ],
 3028           "Examples": [
 3029             [
 3030               "{{ if ge hugo.Version \"0.80\" }}Reasonable new Hugo version!{{ end }}",
 3031               "Reasonable new Hugo version!"
 3032             ]
 3033           ]
 3034         },
 3035         "Gt": {
 3036           "Description": "Gt returns the boolean truth of arg1 \u003e arg2 \u0026\u0026 arg1 \u003e arg3 \u0026\u0026 arg1 \u003e arg4.",
 3037           "Args": [
 3038             "first",
 3039             "others"
 3040           ],
 3041           "Aliases": [
 3042             "gt"
 3043           ],
 3044           "Examples": []
 3045         },
 3046         "Le": {
 3047           "Description": "Le returns the boolean truth of arg1 \u003c= arg2 \u0026\u0026 arg1 \u003c= arg3 \u0026\u0026 arg1 \u003c= arg4.",
 3048           "Args": [
 3049             "first",
 3050             "others"
 3051           ],
 3052           "Aliases": [
 3053             "le"
 3054           ],
 3055           "Examples": []
 3056         },
 3057         "Lt": {
 3058           "Description": "Lt returns the boolean truth of arg1 \u003c arg2 \u0026\u0026 arg1 \u003c arg3 \u0026\u0026 arg1 \u003c arg4.",
 3059           "Args": [
 3060             "first",
 3061             "others"
 3062           ],
 3063           "Aliases": [
 3064             "lt"
 3065           ],
 3066           "Examples": []
 3067         },
 3068         "LtCollate": {
 3069           "Description": "",
 3070           "Args": null,
 3071           "Aliases": null,
 3072           "Examples": null
 3073         },
 3074         "Ne": {
 3075           "Description": "Ne returns the boolean truth of arg1 != arg2 \u0026\u0026 arg1 != arg3 \u0026\u0026 arg1 != arg4.",
 3076           "Args": [
 3077             "first",
 3078             "others"
 3079           ],
 3080           "Aliases": [
 3081             "ne"
 3082           ],
 3083           "Examples": []
 3084         }
 3085       },
 3086       "collections": {
 3087         "After": {
 3088           "Description": "After returns all the items after the first N in a rangeable list.",
 3089           "Args": [
 3090             "index",
 3091             "seq"
 3092           ],
 3093           "Aliases": [
 3094             "after"
 3095           ],
 3096           "Examples": []
 3097         },
 3098         "Append": {
 3099           "Description": "Append appends the arguments up to the last one to the slice in the last argument.\nThis construct allows template constructs like this:\n    {{ $pages = $pages | append $p2 $p1 }}\nNote that with 2 arguments where both are slices of the same type,\nthe first slice will be appended to the second:\n    {{ $pages = $pages | append .Site.RegularPages }}",
 3100           "Args": [
 3101             "args"
 3102           ],
 3103           "Aliases": [
 3104             "append"
 3105           ],
 3106           "Examples": []
 3107         },
 3108         "Apply": {
 3109           "Description": "Apply takes a map, array, or slice and returns a new slice with the function fname applied over it.",
 3110           "Args": [
 3111             "ctx",
 3112             "seq",
 3113             "fname",
 3114             "args"
 3115           ],
 3116           "Aliases": [
 3117             "apply"
 3118           ],
 3119           "Examples": []
 3120         },
 3121         "Complement": {
 3122           "Description": "Complement gives the elements in the last element of seqs that are not in\nany of the others.\nAll elements of seqs 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   {{ $c := .Pages | complement $last4 }}",
 3123           "Args": [
 3124             "seqs"
 3125           ],
 3126           "Aliases": [
 3127             "complement"
 3128           ],
 3129           "Examples": [
 3130             [
 3131               "{{ slice \"a\" \"b\" \"c\" \"d\" \"e\" \"f\" | complement (slice \"b\" \"c\") (slice \"d\" \"e\")  }}",
 3132               "[a f]"
 3133             ]
 3134           ]
 3135         },
 3136         "Delimit": {
 3137           "Description": "Delimit takes a given sequence and returns a delimited HTML string.\nIf last is passed to the function, it will be used as the final delimiter.",
 3138           "Args": [
 3139             "seq",
 3140             "delimiter",
 3141             "last"
 3142           ],
 3143           "Aliases": [
 3144             "delimit"
 3145           ],
 3146           "Examples": [
 3147             [
 3148               "{{ delimit (slice \"A\" \"B\" \"C\") \", \" \" and \" }}",
 3149               "A, B and C"
 3150             ]
 3151           ]
 3152         },
 3153         "Dictionary": {
 3154           "Description": "Dictionary creates a map[string]interface{} from the given parameters by\nwalking the parameters and treating them as key-value pairs.  The number\nof parameters must be even.\nThe keys can be string slices, which will create the needed nested structure.",
 3155           "Args": [
 3156             "values"
 3157           ],
 3158           "Aliases": [
 3159             "dict"
 3160           ],
 3161           "Examples": []
 3162         },
 3163         "EchoParam": {
 3164           "Description": "EchoParam returns a given value if it is set; otherwise, it returns an\nempty string.",
 3165           "Args": [
 3166             "a",
 3167             "key"
 3168           ],
 3169           "Aliases": [
 3170             "echoParam"
 3171           ],
 3172           "Examples": [
 3173             [
 3174               "{{ echoParam .Params \"langCode\" }}",
 3175               "en"
 3176             ]
 3177           ]
 3178         },
 3179         "First": {
 3180           "Description": "First returns the first N items in a rangeable list.",
 3181           "Args": [
 3182             "limit",
 3183             "seq"
 3184           ],
 3185           "Aliases": [
 3186             "first"
 3187           ],
 3188           "Examples": []
 3189         },
 3190         "Group": {
 3191           "Description": "Group groups a set of elements by the given key.\nThis is currently only supported for Pages.",
 3192           "Args": [
 3193             "key",
 3194             "items"
 3195           ],
 3196           "Aliases": [
 3197             "group"
 3198           ],
 3199           "Examples": []
 3200         },
 3201         "In": {
 3202           "Description": "In returns whether v is in the set l.  l may be an array or slice.",
 3203           "Args": [
 3204             "l",
 3205             "v"
 3206           ],
 3207           "Aliases": [
 3208             "in"
 3209           ],
 3210           "Examples": [
 3211             [
 3212               "{{ if in \"this string contains a substring\" \"substring\" }}Substring found!{{ end }}",
 3213               "Substring found!"
 3214             ]
 3215           ]
 3216         },
 3217         "Index": {
 3218           "Description": "Index returns the result of indexing its first argument by the following\narguments. Thus \"index x 1 2 3\" is, in Go syntax, x[1][2][3]. Each\nindexed item must be a map, slice, or array.\n\nCopied from Go stdlib src/text/template/funcs.go.\n\nWe deviate from the stdlib due to https://github.com/golang/go/issues/14751.\n\nTODO(moorereason): merge upstream changes.",
 3219           "Args": [
 3220             "item",
 3221             "args"
 3222           ],
 3223           "Aliases": [
 3224             "index"
 3225           ],
 3226           "Examples": []
 3227         },
 3228         "Intersect": {
 3229           "Description": "Intersect returns the common elements in the given sets, l1 and l2.  l1 and\nl2 must be of the same type and may be either arrays or slices.",
 3230           "Args": [
 3231             "l1",
 3232             "l2"
 3233           ],
 3234           "Aliases": [
 3235             "intersect"
 3236           ],
 3237           "Examples": []
 3238         },
 3239         "IsSet": {
 3240           "Description": "IsSet returns whether a given array, channel, slice, or map has a key\ndefined.",
 3241           "Args": [
 3242             "a",
 3243             "key"
 3244           ],
 3245           "Aliases": [
 3246             "isSet",
 3247             "isset"
 3248           ],
 3249           "Examples": []
 3250         },
 3251         "KeyVals": {
 3252           "Description": "KeyVals creates a key and values wrapper.",
 3253           "Args": [
 3254             "key",
 3255             "vals"
 3256           ],
 3257           "Aliases": [
 3258             "keyVals"
 3259           ],
 3260           "Examples": [
 3261             [
 3262               "{{ keyVals \"key\" \"a\" \"b\" }}",
 3263               "key: [a b]"
 3264             ]
 3265           ]
 3266         },
 3267         "Last": {
 3268           "Description": "Last returns the last N items in a rangeable list.",
 3269           "Args": [
 3270             "limit",
 3271             "seq"
 3272           ],
 3273           "Aliases": [
 3274             "last"
 3275           ],
 3276           "Examples": []
 3277         },
 3278         "Merge": {
 3279           "Description": "Merge creates a copy of the final parameter and merges the preceding\nparameters into it in reverse order.\nCurrently only maps are supported. Key handling is case insensitive.",
 3280           "Args": [
 3281             "params"
 3282           ],
 3283           "Aliases": [
 3284             "merge"
 3285           ],
 3286           "Examples": [
 3287             [
 3288               "{{ dict \"title\" \"Hugo Rocks!\" | collections.Merge (dict \"title\" \"Default Title\" \"description\" \"Yes, Hugo Rocks!\") | sort }}",
 3289               "[Yes, Hugo Rocks! Hugo Rocks!]"
 3290             ],
 3291             [
 3292               "{{  merge (dict \"title\" \"Default Title\" \"description\" \"Yes, Hugo Rocks!\") (dict \"title\" \"Hugo Rocks!\") | sort }}",
 3293               "[Yes, Hugo Rocks! Hugo Rocks!]"
 3294             ],
 3295             [
 3296               "{{  merge (dict \"title\" \"Default Title\" \"description\" \"Yes, Hugo Rocks!\") (dict \"title\" \"Hugo Rocks!\") (dict \"extra\" \"For reals!\") | sort }}",
 3297               "[Yes, Hugo Rocks! For reals! Hugo Rocks!]"
 3298             ]
 3299           ]
 3300         },
 3301         "NewScratch": {
 3302           "Description": "NewScratch creates a new Scratch which can be used to store values in a\nthread safe way.",
 3303           "Args": null,
 3304           "Aliases": [
 3305             "newScratch"
 3306           ],
 3307           "Examples": [
 3308             [
 3309               "{{ $scratch := newScratch }}{{ $scratch.Add \"b\" 2 }}{{ $scratch.Add \"b\" 2 }}{{ $scratch.Get \"b\" }}",
 3310               "4"
 3311             ]
 3312           ]
 3313         },
 3314         "Querify": {
 3315           "Description": "Querify encodes the given parameters in URL-encoded form (\"bar=baz\u0026foo=quux\") sorted by key.",
 3316           "Args": [
 3317             "params"
 3318           ],
 3319           "Aliases": [
 3320             "querify"
 3321           ],
 3322           "Examples": [
 3323             [
 3324               "{{ (querify \"foo\" 1 \"bar\" 2 \"baz\" \"with spaces\" \"qux\" \"this\u0026that=those\") | safeHTML }}",
 3325               "bar=2\u0026baz=with+spaces\u0026foo=1\u0026qux=this%26that%3Dthose"
 3326             ],
 3327             [
 3328               "\u003ca href=\"https://www.google.com?{{ (querify \"q\" \"test\" \"page\" 3) | safeURL }}\"\u003eSearch\u003c/a\u003e",
 3329               "\u003ca href=\"https://www.google.com?page=3\u0026amp;q=test\"\u003eSearch\u003c/a\u003e"
 3330             ],
 3331             [
 3332               "{{ slice \"foo\" 1 \"bar\" 2 | querify | safeHTML }}",
 3333               "bar=2\u0026foo=1"
 3334             ]
 3335           ]
 3336         },
 3337         "Reverse": {
 3338           "Description": "",
 3339           "Args": null,
 3340           "Aliases": null,
 3341           "Examples": null
 3342         },
 3343         "Seq": {
 3344           "Description": "Seq creates a sequence of integers.  It's named and used as GNU's seq.\n\nExamples:\n    3 =\u003e 1, 2, 3\n    1 2 4 =\u003e 1, 3\n    -3 =\u003e -1, -2, -3\n    1 4 =\u003e 1, 2, 3, 4\n    1 -2 =\u003e 1, 0, -1, -2",
 3345           "Args": [
 3346             "args"
 3347           ],
 3348           "Aliases": [
 3349             "seq"
 3350           ],
 3351           "Examples": [
 3352             [
 3353               "{{ seq 3 }}",
 3354               "[1 2 3]"
 3355             ]
 3356           ]
 3357         },
 3358         "Shuffle": {
 3359           "Description": "Shuffle returns the given rangeable list in a randomised order.",
 3360           "Args": [
 3361             "seq"
 3362           ],
 3363           "Aliases": [
 3364             "shuffle"
 3365           ],
 3366           "Examples": []
 3367         },
 3368         "Slice": {
 3369           "Description": "Slice returns a slice of all passed arguments.",
 3370           "Args": [
 3371             "args"
 3372           ],
 3373           "Aliases": [
 3374             "slice"
 3375           ],
 3376           "Examples": [
 3377             [
 3378               "{{ slice \"B\" \"C\" \"A\" | sort }}",
 3379               "[A B C]"
 3380             ]
 3381           ]
 3382         },
 3383         "Sort": {
 3384           "Description": "Sort returns a sorted sequence.",
 3385           "Args": [
 3386             "seq",
 3387             "args"
 3388           ],
 3389           "Aliases": [
 3390             "sort"
 3391           ],
 3392           "Examples": []
 3393         },
 3394         "SymDiff": {
 3395           "Description": "SymDiff returns the symmetric difference of s1 and s2.\nArguments must be either a slice or an array of comparable types.",
 3396           "Args": [
 3397             "s2",
 3398             "s1"
 3399           ],
 3400           "Aliases": [
 3401             "symdiff"
 3402           ],
 3403           "Examples": [
 3404             [
 3405               "{{ slice 1 2 3 | symdiff (slice 3 4) }}",
 3406               "[1 2 4]"
 3407             ]
 3408           ]
 3409         },
 3410         "Union": {
 3411           "Description": "Union returns the union of the given sets, l1 and l2. l1 and\nl2 must be of the same type and may be either arrays or slices.\nIf l1 and l2 aren't of the same type then l1 will be returned.\nIf either l1 or l2 is nil then the non-nil list will be returned.",
 3412           "Args": [
 3413             "l1",
 3414             "l2"
 3415           ],
 3416           "Aliases": [
 3417             "union"
 3418           ],
 3419           "Examples": [
 3420             [
 3421               "{{ union (slice 1 2 3) (slice 3 4 5) }}",
 3422               "[1 2 3 4 5]"
 3423             ]
 3424           ]
 3425         },
 3426         "Uniq": {
 3427           "Description": "Uniq takes in a slice or array and returns a slice with subsequent\nduplicate elements removed.",
 3428           "Args": [
 3429             "seq"
 3430           ],
 3431           "Aliases": [
 3432             "uniq"
 3433           ],
 3434           "Examples": [
 3435             [
 3436               "{{ slice 1 2 3 2 | uniq }}",
 3437               "[1 2 3]"
 3438             ]
 3439           ]
 3440         },
 3441         "Where": {
 3442           "Description": "Where returns a filtered subset of a given data type.",
 3443           "Args": [
 3444             "seq",
 3445             "key",
 3446             "args"
 3447           ],
 3448           "Aliases": [
 3449             "where"
 3450           ],
 3451           "Examples": []
 3452         }
 3453       },
 3454       "crypto": {
 3455         "FNV32a": {
 3456           "Description": "FNV32a hashes using fnv32a algorithm",
 3457           "Args": [
 3458             "in"
 3459           ],
 3460           "Aliases": null,
 3461           "Examples": [
 3462             [
 3463               "{{ crypto.FNV32a \"Hugo Rocks!!\" }}",
 3464               "1515779328"
 3465             ]
 3466           ]
 3467         },
 3468         "HMAC": {
 3469           "Description": "HMAC returns a cryptographic hash that uses a key to sign a message.",
 3470           "Args": [
 3471             "h",
 3472             "k",
 3473             "m",
 3474             "e"
 3475           ],
 3476           "Aliases": [
 3477             "hmac"
 3478           ],
 3479           "Examples": [
 3480             [
 3481               "{{ hmac \"sha256\" \"Secret key\" \"Hello world, gophers!\" }}",
 3482               "b6d11b6c53830b9d87036272ca9fe9d19306b8f9d8aa07b15da27d89e6e34f40"
 3483             ]
 3484           ]
 3485         },
 3486         "MD5": {
 3487           "Description": "MD5 hashes the given input and returns its MD5 checksum.",
 3488           "Args": [
 3489             "in"
 3490           ],
 3491           "Aliases": [
 3492             "md5"
 3493           ],
 3494           "Examples": [
 3495             [
 3496               "{{ md5 \"Hello world, gophers!\" }}",
 3497               "b3029f756f98f79e7f1b7f1d1f0dd53b"
 3498             ],
 3499             [
 3500               "{{ crypto.MD5 \"Hello world, gophers!\" }}",
 3501               "b3029f756f98f79e7f1b7f1d1f0dd53b"
 3502             ]
 3503           ]
 3504         },
 3505         "SHA1": {
 3506           "Description": "SHA1 hashes the given input and returns its SHA1 checksum.",
 3507           "Args": [
 3508             "in"
 3509           ],
 3510           "Aliases": [
 3511             "sha1"
 3512           ],
 3513           "Examples": [
 3514             [
 3515               "{{ sha1 \"Hello world, gophers!\" }}",
 3516               "c8b5b0e33d408246e30f53e32b8f7627a7a649d4"
 3517             ]
 3518           ]
 3519         },
 3520         "SHA256": {
 3521           "Description": "SHA256 hashes the given input and returns its SHA256 checksum.",
 3522           "Args": [
 3523             "in"
 3524           ],
 3525           "Aliases": [
 3526             "sha256"
 3527           ],
 3528           "Examples": [
 3529             [
 3530               "{{ sha256 \"Hello world, gophers!\" }}",
 3531               "6ec43b78da9669f50e4e422575c54bf87536954ccd58280219c393f2ce352b46"
 3532             ]
 3533           ]
 3534         }
 3535       },
 3536       "data": {
 3537         "GetCSV": {
 3538           "Description": "GetCSV expects a data separator and one or n-parts of a URL to a resource which\ncan either be a local or a remote one.\nThe data separator can be a comma, semi-colon, pipe, etc, but only one character.\nIf you provide multiple parts for the URL they will be joined together to the final URL.\nGetCSV returns nil or a slice slice to use in a short code.",
 3539           "Args": [
 3540             "sep",
 3541             "args"
 3542           ],
 3543           "Aliases": [
 3544             "getCSV"
 3545           ],
 3546           "Examples": []
 3547         },
 3548         "GetJSON": {
 3549           "Description": "GetJSON expects one or n-parts of a URL to a resource which can either be a local or a remote one.\nIf you provide multiple parts they will be joined together to the final URL.\nGetJSON returns nil or parsed JSON to use in a short code.",
 3550           "Args": [
 3551             "args"
 3552           ],
 3553           "Aliases": [
 3554             "getJSON"
 3555           ],
 3556           "Examples": []
 3557         }
 3558       },
 3559       "debug": {
 3560         "Dump": {
 3561           "Description": "Dump returns a object dump of val as a string.\nNote that not every value passed to Dump will print so nicely, but\nwe'll improve on that. We recommend using the \"go\" Chroma lexer to format the output\nnicely.\nAlso note that the output from Dump may change from Hugo version to the next,\nso don't depend on a specific output.",
 3562           "Args": [
 3563             "val"
 3564           ],
 3565           "Aliases": null,
 3566           "Examples": [
 3567             [
 3568               "{{- $m := newScratch -}}\n{{- $m.Set \"Hugo\" \"Rocks!\" -}}\n{{- $m.Values | debug.Dump | safeHTML -}}",
 3569               "map[string]interface {}{\n  \"Hugo\": \"Rocks!\",\n}"
 3570             ]
 3571           ]
 3572         }
 3573       },
 3574       "diagrams": {
 3575         "Goat": {
 3576           "Description": "",
 3577           "Args": null,
 3578           "Aliases": null,
 3579           "Examples": null
 3580         }
 3581       },
 3582       "encoding": {
 3583         "Base64Decode": {
 3584           "Description": "Base64Decode returns the base64 decoding of the given content.",
 3585           "Args": [
 3586             "content"
 3587           ],
 3588           "Aliases": [
 3589             "base64Decode"
 3590           ],
 3591           "Examples": [
 3592             [
 3593               "{{ \"SGVsbG8gd29ybGQ=\" | base64Decode }}",
 3594               "Hello world"
 3595             ],
 3596             [
 3597               "{{ 42 | base64Encode | base64Decode }}",
 3598               "42"
 3599             ]
 3600           ]
 3601         },
 3602         "Base64Encode": {
 3603           "Description": "Base64Encode returns the base64 encoding of the given content.",
 3604           "Args": [
 3605             "content"
 3606           ],
 3607           "Aliases": [
 3608             "base64Encode"
 3609           ],
 3610           "Examples": [
 3611             [
 3612               "{{ \"Hello world\" | base64Encode }}",
 3613               "SGVsbG8gd29ybGQ="
 3614             ]
 3615           ]
 3616         },
 3617         "Jsonify": {
 3618           "Description": "Jsonify encodes a given object to JSON.  To pretty print the JSON, pass a map\nor dictionary of options as the first argument.  Supported options are\n\"prefix\" and \"indent\".  Each JSON element in the output will begin on a new\nline beginning with prefix followed by one or more copies of indent according\nto the indentation nesting.",
 3619           "Args": [
 3620             "args"
 3621           ],
 3622           "Aliases": [
 3623             "jsonify"
 3624           ],
 3625           "Examples": [
 3626             [
 3627               "{{ (slice \"A\" \"B\" \"C\") | jsonify }}",
 3628               "[\"A\",\"B\",\"C\"]"
 3629             ],
 3630             [
 3631               "{{ (slice \"A\" \"B\" \"C\") | jsonify (dict \"indent\" \"  \") }}",
 3632               "[\n  \"A\",\n  \"B\",\n  \"C\"\n]"
 3633             ]
 3634           ]
 3635         }
 3636       },
 3637       "fmt": {
 3638         "Errorf": {
 3639           "Description": "Errorf formats args according to a format specifier and logs an ERROR.\nIt returns an empty string.",
 3640           "Args": [
 3641             "format",
 3642             "args"
 3643           ],
 3644           "Aliases": [
 3645             "errorf"
 3646           ],
 3647           "Examples": [
 3648             [
 3649               "{{ errorf \"%s.\" \"failed\" }}",
 3650               ""
 3651             ]
 3652           ]
 3653         },
 3654         "Erroridf": {
 3655           "Description": "Erroridf formats args according to a format specifier and logs an ERROR and\nan information text that the error with the given ID can be suppressed in config.\nIt returns an empty string.",
 3656           "Args": [
 3657             "id",
 3658             "format",
 3659             "args"
 3660           ],
 3661           "Aliases": [
 3662             "erroridf"
 3663           ],
 3664           "Examples": [
 3665             [
 3666               "{{ erroridf \"my-err-id\" \"%s.\" \"failed\" }}",
 3667               ""
 3668             ]
 3669           ]
 3670         },
 3671         "Print": {
 3672           "Description": "Print returns a string representation args.",
 3673           "Args": [
 3674             "args"
 3675           ],
 3676           "Aliases": [
 3677             "print"
 3678           ],
 3679           "Examples": [
 3680             [
 3681               "{{ print \"works!\" }}",
 3682               "works!"
 3683             ]
 3684           ]
 3685         },
 3686         "Printf": {
 3687           "Description": "Printf returns a formatted string representation of args.",
 3688           "Args": [
 3689             "format",
 3690             "args"
 3691           ],
 3692           "Aliases": [
 3693             "printf"
 3694           ],
 3695           "Examples": [
 3696             [
 3697               "{{ printf \"%s!\" \"works\" }}",
 3698               "works!"
 3699             ]
 3700           ]
 3701         },
 3702         "Println": {
 3703           "Description": "Println returns string representation of args  ending with a newline.",
 3704           "Args": [
 3705             "args"
 3706           ],
 3707           "Aliases": [
 3708             "println"
 3709           ],
 3710           "Examples": [
 3711             [
 3712               "{{ println \"works!\" }}",
 3713               "works!\n"
 3714             ]
 3715           ]
 3716         },
 3717         "Warnf": {
 3718           "Description": "Warnf formats args according to a format specifier and logs a WARNING.\nIt returns an empty string.",
 3719           "Args": [
 3720             "format",
 3721             "args"
 3722           ],
 3723           "Aliases": [
 3724             "warnf"
 3725           ],
 3726           "Examples": [
 3727             [
 3728               "{{ warnf \"%s.\" \"warning\" }}",
 3729               ""
 3730             ]
 3731           ]
 3732         }
 3733       },
 3734       "hugo": {
 3735         "Deps": {
 3736           "Description": "",
 3737           "Args": null,
 3738           "Aliases": null,
 3739           "Examples": null
 3740         },
 3741         "Generator": {
 3742           "Description": "",
 3743           "Args": null,
 3744           "Aliases": null,
 3745           "Examples": null
 3746         },
 3747         "IsExtended": {
 3748           "Description": "",
 3749           "Args": null,
 3750           "Aliases": null,
 3751           "Examples": null
 3752         },
 3753         "IsProduction": {
 3754           "Description": "",
 3755           "Args": null,
 3756           "Aliases": null,
 3757           "Examples": null
 3758         },
 3759         "Version": {
 3760           "Description": "",
 3761           "Args": null,
 3762           "Aliases": null,
 3763           "Examples": null
 3764         }
 3765       },
 3766       "images": {
 3767         "Brightness": {
 3768           "Description": "",
 3769           "Args": null,
 3770           "Aliases": null,
 3771           "Examples": null
 3772         },
 3773         "ColorBalance": {
 3774           "Description": "",
 3775           "Args": null,
 3776           "Aliases": null,
 3777           "Examples": null
 3778         },
 3779         "Colorize": {
 3780           "Description": "",
 3781           "Args": null,
 3782           "Aliases": null,
 3783           "Examples": null
 3784         },
 3785         "Config": {
 3786           "Description": "Config returns the image.Config for the specified path relative to the\nworking directory.",
 3787           "Args": [
 3788             "path"
 3789           ],
 3790           "Aliases": [
 3791             "imageConfig"
 3792           ],
 3793           "Examples": []
 3794         },
 3795         "Contrast": {
 3796           "Description": "",
 3797           "Args": null,
 3798           "Aliases": null,
 3799           "Examples": null
 3800         },
 3801         "Filter": {
 3802           "Description": "",
 3803           "Args": null,
 3804           "Aliases": null,
 3805           "Examples": null
 3806         },
 3807         "Gamma": {
 3808           "Description": "",
 3809           "Args": null,
 3810           "Aliases": null,
 3811           "Examples": null
 3812         },
 3813         "GaussianBlur": {
 3814           "Description": "",
 3815           "Args": null,
 3816           "Aliases": null,
 3817           "Examples": null
 3818         },
 3819         "Grayscale": {
 3820           "Description": "",
 3821           "Args": null,
 3822           "Aliases": null,
 3823           "Examples": null
 3824         },
 3825         "Hue": {
 3826           "Description": "",
 3827           "Args": null,
 3828           "Aliases": null,
 3829           "Examples": null
 3830         },
 3831         "Invert": {
 3832           "Description": "",
 3833           "Args": null,
 3834           "Aliases": null,
 3835           "Examples": null
 3836         },
 3837         "Overlay": {
 3838           "Description": "",
 3839           "Args": null,
 3840           "Aliases": null,
 3841           "Examples": null
 3842         },
 3843         "Pixelate": {
 3844           "Description": "",
 3845           "Args": null,
 3846           "Aliases": null,
 3847           "Examples": null
 3848         },
 3849         "Saturation": {
 3850           "Description": "",
 3851           "Args": null,
 3852           "Aliases": null,
 3853           "Examples": null
 3854         },
 3855         "Sepia": {
 3856           "Description": "",
 3857           "Args": null,
 3858           "Aliases": null,
 3859           "Examples": null
 3860         },
 3861         "Sigmoid": {
 3862           "Description": "",
 3863           "Args": null,
 3864           "Aliases": null,
 3865           "Examples": null
 3866         },
 3867         "Text": {
 3868           "Description": "",
 3869           "Args": null,
 3870           "Aliases": null,
 3871           "Examples": null
 3872         },
 3873         "UnsharpMask": {
 3874           "Description": "",
 3875           "Args": null,
 3876           "Aliases": null,
 3877           "Examples": null
 3878         }
 3879       },
 3880       "inflect": {
 3881         "Humanize": {
 3882           "Description": "Humanize returns the humanized form of a single parameter.\n\nIf the parameter is either an integer or a string containing an integer\nvalue, the behavior is to add the appropriate ordinal.\n\n    Example:  \"my-first-post\" -\u003e \"My first post\"\n    Example:  \"103\" -\u003e \"103rd\"\n    Example:  52 -\u003e \"52nd\"",
 3883           "Args": [
 3884             "in"
 3885           ],
 3886           "Aliases": [
 3887             "humanize"
 3888           ],
 3889           "Examples": [
 3890             [
 3891               "{{ humanize \"my-first-post\" }}",
 3892               "My first post"
 3893             ],
 3894             [
 3895               "{{ humanize \"myCamelPost\" }}",
 3896               "My camel post"
 3897             ],
 3898             [
 3899               "{{ humanize \"52\" }}",
 3900               "52nd"
 3901             ],
 3902             [
 3903               "{{ humanize 103 }}",
 3904               "103rd"
 3905             ]
 3906           ]
 3907         },
 3908         "Pluralize": {
 3909           "Description": "Pluralize returns the plural form of a single word.",
 3910           "Args": [
 3911             "in"
 3912           ],
 3913           "Aliases": [
 3914             "pluralize"
 3915           ],
 3916           "Examples": [
 3917             [
 3918               "{{ \"cat\" | pluralize }}",
 3919               "cats"
 3920             ]
 3921           ]
 3922         },
 3923         "Singularize": {
 3924           "Description": "Singularize returns the singular form of a single word.",
 3925           "Args": [
 3926             "in"
 3927           ],
 3928           "Aliases": [
 3929             "singularize"
 3930           ],
 3931           "Examples": [
 3932             [
 3933               "{{ \"cats\" | singularize }}",
 3934               "cat"
 3935             ]
 3936           ]
 3937         }
 3938       },
 3939       "js": {
 3940         "Build": {
 3941           "Description": "",
 3942           "Args": null,
 3943           "Aliases": null,
 3944           "Examples": null
 3945         }
 3946       },
 3947       "lang": {
 3948         "FormatAccounting": {
 3949           "Description": "FormatAccounting returns the currency representation of number for the given currency and precision\nfor the current language in accounting notation.\n\nThe return value is formatted with at least two decimal places.",
 3950           "Args": [
 3951             "precision",
 3952             "currency",
 3953             "number"
 3954           ],
 3955           "Aliases": null,
 3956           "Examples": [
 3957             [
 3958               "{{ 512.5032 | lang.FormatAccounting 2 \"NOK\" }}",
 3959               "NOK512.50"
 3960             ]
 3961           ]
 3962         },
 3963         "FormatCurrency": {
 3964           "Description": "FormatCurrency returns the currency representation of number for the given currency and precision\nfor the current language.\n\nThe return value is formatted with at least two decimal places.",
 3965           "Args": [
 3966             "precision",
 3967             "currency",
 3968             "number"
 3969           ],
 3970           "Aliases": null,
 3971           "Examples": [
 3972             [
 3973               "{{ 512.5032 | lang.FormatCurrency 2 \"USD\" }}",
 3974               "$512.50"
 3975             ]
 3976           ]
 3977         },
 3978         "FormatNumber": {
 3979           "Description": "FormatNumber formats number with the given precision for the current language.",
 3980           "Args": [
 3981             "precision",
 3982             "number"
 3983           ],
 3984           "Aliases": null,
 3985           "Examples": [
 3986             [
 3987               "{{ 512.5032 | lang.FormatNumber 2 }}",
 3988               "512.50"
 3989             ]
 3990           ]
 3991         },
 3992         "FormatNumberCustom": {
 3993           "Description": "FormatNumberCustom formats a number with the given precision using the\nnegative, decimal, and grouping options.  The `options`\nparameter is a string consisting of `\u003cnegative\u003e \u003cdecimal\u003e \u003cgrouping\u003e`.  The\ndefault `options` value is `- . ,`.\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.",
 3994           "Args": [
 3995             "precision",
 3996             "number",
 3997             "options"
 3998           ],
 3999           "Aliases": null,
 4000           "Examples": [
 4001             [
 4002               "{{ lang.FormatNumberCustom 2 12345.6789 }}",
 4003               "12,345.68"
 4004             ],
 4005             [
 4006               "{{ lang.FormatNumberCustom 2 12345.6789 \"- , .\" }}",
 4007               "12.345,68"
 4008             ],
 4009             [
 4010               "{{ lang.FormatNumberCustom 6 -12345.6789 \"- .\" }}",
 4011               "-12345.678900"
 4012             ],
 4013             [
 4014               "{{ lang.FormatNumberCustom 0 -12345.6789 \"- . ,\" }}",
 4015               "-12,346"
 4016             ],
 4017             [
 4018               "{{ -98765.4321 | lang.FormatNumberCustom 2 }}",
 4019               "-98,765.43"
 4020             ]
 4021           ]
 4022         },
 4023         "FormatPercent": {
 4024           "Description": "FormatPercent formats number with the given precision for the current language.\nNote that the number is assumed to be a percentage.",
 4025           "Args": [
 4026             "precision",
 4027             "number"
 4028           ],
 4029           "Aliases": null,
 4030           "Examples": [
 4031             [
 4032               "{{ 512.5032 | lang.FormatPercent 2 }}",
 4033               "512.50%"
 4034             ]
 4035           ]
 4036         },
 4037         "Merge": {
 4038           "Description": "",
 4039           "Args": null,
 4040           "Aliases": null,
 4041           "Examples": null
 4042         },
 4043         "NumFmt": {
 4044           "Description": "",
 4045           "Args": null,
 4046           "Aliases": null,
 4047           "Examples": null
 4048         },
 4049         "Translate": {
 4050           "Description": "Translate returns a translated string for id.",
 4051           "Args": [
 4052             "id",
 4053             "args"
 4054           ],
 4055           "Aliases": [
 4056             "i18n",
 4057             "T"
 4058           ],
 4059           "Examples": []
 4060         }
 4061       },
 4062       "math": {
 4063         "Add": {
 4064           "Description": "Add adds the two addends n1 and n2.",
 4065           "Args": [
 4066             "n1",
 4067             "n2"
 4068           ],
 4069           "Aliases": [
 4070             "add"
 4071           ],
 4072           "Examples": [
 4073             [
 4074               "{{add 1 2}}",
 4075               "3"
 4076             ]
 4077           ]
 4078         },
 4079         "Ceil": {
 4080           "Description": "Ceil returns the least integer value greater than or equal to n.",
 4081           "Args": [
 4082             "n"
 4083           ],
 4084           "Aliases": null,
 4085           "Examples": [
 4086             [
 4087               "{{math.Ceil 2.1}}",
 4088               "3"
 4089             ]
 4090           ]
 4091         },
 4092         "Counter": {
 4093           "Description": "",
 4094           "Args": null,
 4095           "Aliases": null,
 4096           "Examples": null
 4097         },
 4098         "Div": {
 4099           "Description": "Div divides n1 by n2.",
 4100           "Args": [
 4101             "n1",
 4102             "n2"
 4103           ],
 4104           "Aliases": [
 4105             "div"
 4106           ],
 4107           "Examples": [
 4108             [
 4109               "{{div 6 3}}",
 4110               "2"
 4111             ]
 4112           ]
 4113         },
 4114         "Floor": {
 4115           "Description": "Floor returns the greatest integer value less than or equal to n.",
 4116           "Args": [
 4117             "n"
 4118           ],
 4119           "Aliases": null,
 4120           "Examples": [
 4121             [
 4122               "{{math.Floor 1.9}}",
 4123               "1"
 4124             ]
 4125           ]
 4126         },
 4127         "Log": {
 4128           "Description": "Log returns the natural logarithm of the number n.",
 4129           "Args": [
 4130             "n"
 4131           ],
 4132           "Aliases": null,
 4133           "Examples": [
 4134             [
 4135               "{{math.Log 1}}",
 4136               "0"
 4137             ]
 4138           ]
 4139         },
 4140         "Max": {
 4141           "Description": "Max returns the greater of the two numbers n1 or n2.",
 4142           "Args": [
 4143             "n1",
 4144             "n2"
 4145           ],
 4146           "Aliases": null,
 4147           "Examples": [
 4148             [
 4149               "{{math.Max 1 2 }}",
 4150               "2"
 4151             ]
 4152           ]
 4153         },
 4154         "Min": {
 4155           "Description": "Min returns the smaller of two numbers n1 or n2.",
 4156           "Args": [
 4157             "n1",
 4158             "n2"
 4159           ],
 4160           "Aliases": null,
 4161           "Examples": [
 4162             [
 4163               "{{math.Min 1 2 }}",
 4164               "1"
 4165             ]
 4166           ]
 4167         },
 4168         "Mod": {
 4169           "Description": "Mod returns n1 % n2.",
 4170           "Args": [
 4171             "n1",
 4172             "n2"
 4173           ],
 4174           "Aliases": [
 4175             "mod"
 4176           ],
 4177           "Examples": [
 4178             [
 4179               "{{mod 15 3}}",
 4180               "0"
 4181             ]
 4182           ]
 4183         },
 4184         "ModBool": {
 4185           "Description": "ModBool returns the boolean of n1 % n2.  If n1 % n2 == 0, return true.",
 4186           "Args": [
 4187             "n1",
 4188             "n2"
 4189           ],
 4190           "Aliases": [
 4191             "modBool"
 4192           ],
 4193           "Examples": [
 4194             [
 4195               "{{modBool 15 3}}",
 4196               "true"
 4197             ]
 4198           ]
 4199         },
 4200         "Mul": {
 4201           "Description": "Mul multiplies the two numbers n1 and n2.",
 4202           "Args": [
 4203             "n1",
 4204             "n2"
 4205           ],
 4206           "Aliases": [
 4207             "mul"
 4208           ],
 4209           "Examples": [
 4210             [
 4211               "{{mul 2 3}}",
 4212               "6"
 4213             ]
 4214           ]
 4215         },
 4216         "Pow": {
 4217           "Description": "Pow returns n1 raised to the power of n2.",
 4218           "Args": [
 4219             "n1",
 4220             "n2"
 4221           ],
 4222           "Aliases": [
 4223             "pow"
 4224           ],
 4225           "Examples": [
 4226             [
 4227               "{{math.Pow 2 3}}",
 4228               "8"
 4229             ]
 4230           ]
 4231         },
 4232         "Round": {
 4233           "Description": "Round returns the integer nearest to n, rounding half away from zero.",
 4234           "Args": [
 4235             "n"
 4236           ],
 4237           "Aliases": null,
 4238           "Examples": [
 4239             [
 4240               "{{math.Round 1.5}}",
 4241               "2"
 4242             ]
 4243           ]
 4244         },
 4245         "Sqrt": {
 4246           "Description": "Sqrt returns the square root of the number n.",
 4247           "Args": [
 4248             "n"
 4249           ],
 4250           "Aliases": null,
 4251           "Examples": [
 4252             [
 4253               "{{math.Sqrt 81}}",
 4254               "9"
 4255             ]
 4256           ]
 4257         },
 4258         "Sub": {
 4259           "Description": "Sub subtracts n2 from n1.",
 4260           "Args": [
 4261             "n1",
 4262             "n2"
 4263           ],
 4264           "Aliases": [
 4265             "sub"
 4266           ],
 4267           "Examples": [
 4268             [
 4269               "{{sub 3 2}}",
 4270               "1"
 4271             ]
 4272           ]
 4273         }
 4274       },
 4275       "openapi3": {
 4276         "Unmarshal": {
 4277           "Description": "",
 4278           "Args": null,
 4279           "Aliases": null,
 4280           "Examples": []
 4281         }
 4282       },
 4283       "os": {
 4284         "FileExists": {
 4285           "Description": "FileExists checks whether a file exists under the given path.",
 4286           "Args": [
 4287             "i"
 4288           ],
 4289           "Aliases": [
 4290             "fileExists"
 4291           ],
 4292           "Examples": [
 4293             [
 4294               "{{ fileExists \"foo.txt\" }}",
 4295               "false"
 4296             ]
 4297           ]
 4298         },
 4299         "Getenv": {
 4300           "Description": "Getenv retrieves the value of the environment variable named by the key.\nIt returns the value, which will be empty if the variable is not present.",
 4301           "Args": [
 4302             "key"
 4303           ],
 4304           "Aliases": [
 4305             "getenv"
 4306           ],
 4307           "Examples": []
 4308         },
 4309         "ReadDir": {
 4310           "Description": "ReadDir lists the directory contents relative to the configured WorkingDir.",
 4311           "Args": [
 4312             "i"
 4313           ],
 4314           "Aliases": [
 4315             "readDir"
 4316           ],
 4317           "Examples": [
 4318             [
 4319               "{{ range (readDir \"files\") }}{{ .Name }}{{ end }}",
 4320               "README.txt"
 4321             ]
 4322           ]
 4323         },
 4324         "ReadFile": {
 4325           "Description": "ReadFile reads the file named by filename relative to the configured WorkingDir.\nIt returns the contents as a string.\nThere is an upper size limit set at 1 megabytes.",
 4326           "Args": [
 4327             "i"
 4328           ],
 4329           "Aliases": [
 4330             "readFile"
 4331           ],
 4332           "Examples": [
 4333             [
 4334               "{{ readFile \"files/README.txt\" }}",
 4335               "Hugo Rocks!"
 4336             ]
 4337           ]
 4338         },
 4339         "Stat": {
 4340           "Description": "",
 4341           "Args": null,
 4342           "Aliases": null,
 4343           "Examples": null
 4344         }
 4345       },
 4346       "partials": {
 4347         "Include": {
 4348           "Description": "Include executes the named partial.\nIf the partial contains a return statement, that value will be returned.\nElse, the rendered output will be returned:\nA string if the partial is a text/template, or template.HTML when html/template.\nNote that ctx is provided by Hugo, not the end user.",
 4349           "Args": [
 4350             "ctx",
 4351             "name",
 4352             "contextList"
 4353           ],
 4354           "Aliases": [
 4355             "partial"
 4356           ],
 4357           "Examples": [
 4358             [
 4359               "{{ partial \"header.html\" . }}",
 4360               "\u003ctitle\u003eHugo Rocks!\u003c/title\u003e"
 4361             ]
 4362           ]
 4363         },
 4364         "IncludeCached": {
 4365           "Description": "IncludeCached executes and caches partial templates.  The cache is created with name+variants as the key.\nNote that ctx is provided by Hugo, not the end user.",
 4366           "Args": [
 4367             "ctx",
 4368             "name",
 4369             "context",
 4370             "variants"
 4371           ],
 4372           "Aliases": [
 4373             "partialCached"
 4374           ],
 4375           "Examples": []
 4376         }
 4377       },
 4378       "path": {
 4379         "Base": {
 4380           "Description": "",
 4381           "Args": null,
 4382           "Aliases": null,
 4383           "Examples": null
 4384         },
 4385         "BaseName": {
 4386           "Description": "",
 4387           "Args": null,
 4388           "Aliases": null,
 4389           "Examples": null
 4390         },
 4391         "Clean": {
 4392           "Description": "",
 4393           "Args": null,
 4394           "Aliases": null,
 4395           "Examples": null
 4396         },
 4397         "Dir": {
 4398           "Description": "",
 4399           "Args": null,
 4400           "Aliases": null,
 4401           "Examples": null
 4402         },
 4403         "Ext": {
 4404           "Description": "",
 4405           "Args": null,
 4406           "Aliases": null,
 4407           "Examples": null
 4408         },
 4409         "Join": {
 4410           "Description": "Join joins any number of path elements into a single path, adding a\nseparating slash if necessary. All the input\npath elements are passed into filepath.ToSlash converting any Windows slashes\nto forward slashes.\nThe result is Cleaned; in particular,\nall empty strings are ignored.",
 4411           "Args": [
 4412             "elements"
 4413           ],
 4414           "Aliases": null,
 4415           "Examples": [
 4416             [
 4417               "{{ slice \"my/path\" \"filename.txt\" | path.Join  }}",
 4418               "my/path/filename.txt"
 4419             ],
 4420             [
 4421               "{{  path.Join \"my\" \"path\" \"filename.txt\" }}",
 4422               "my/path/filename.txt"
 4423             ],
 4424             [
 4425               "{{ \"my/path/filename.txt\" | path.Ext  }}",
 4426               ".txt"
 4427             ],
 4428             [
 4429               "{{ \"my/path/filename.txt\" | path.Base  }}",
 4430               "filename.txt"
 4431             ],
 4432             [
 4433               "{{ \"my/path/filename.txt\" | path.Dir  }}",
 4434               "my/path"
 4435             ]
 4436           ]
 4437         },
 4438         "Split": {
 4439           "Description": "Split splits path immediately following the final slash,\nseparating it into a directory and file name component.\nIf there is no slash in path, Split returns an empty dir and\nfile set to path.\nThe input path is passed into filepath.ToSlash converting any Windows slashes\nto forward slashes.\nThe returned values have the property that path = dir+file.",
 4440           "Args": [
 4441             "path"
 4442           ],
 4443           "Aliases": null,
 4444           "Examples": [
 4445             [
 4446               "{{ \"/my/path/filename.txt\" | path.Split }}",
 4447               "/my/path/|filename.txt"
 4448             ],
 4449             [
 4450               "{{ \"/my/path/filename.txt\" | path.Split }}",
 4451               "/my/path/|filename.txt"
 4452             ]
 4453           ]
 4454         }
 4455       },
 4456       "reflect": {
 4457         "IsMap": {
 4458           "Description": "IsMap reports whether v is a map.",
 4459           "Args": [
 4460             "v"
 4461           ],
 4462           "Aliases": null,
 4463           "Examples": [
 4464             [
 4465               "{{ if reflect.IsMap (dict \"a\" 1) }}Map{{ end }}",
 4466               "Map"
 4467             ]
 4468           ]
 4469         },
 4470         "IsSlice": {
 4471           "Description": "IsSlice reports whether v is a slice.",
 4472           "Args": [
 4473             "v"
 4474           ],
 4475           "Aliases": null,
 4476           "Examples": [
 4477             [
 4478               "{{ if reflect.IsSlice (slice 1 2 3) }}Slice{{ end }}",
 4479               "Slice"
 4480             ]
 4481           ]
 4482         }
 4483       },
 4484       "resources": {
 4485         "Babel": {
 4486           "Description": "Babel processes the given Resource with Babel.",
 4487           "Args": [
 4488             "args"
 4489           ],
 4490           "Aliases": [
 4491             "babel"
 4492           ],
 4493           "Examples": []
 4494         },
 4495         "ByType": {
 4496           "Description": "",
 4497           "Args": null,
 4498           "Aliases": null,
 4499           "Examples": null
 4500         },
 4501         "Concat": {
 4502           "Description": "",
 4503           "Args": null,
 4504           "Aliases": null,
 4505           "Examples": null
 4506         },
 4507         "Copy": {
 4508           "Description": "",
 4509           "Args": null,
 4510           "Aliases": null,
 4511           "Examples": null
 4512         },
 4513         "ExecuteAsTemplate": {
 4514           "Description": "",
 4515           "Args": null,
 4516           "Aliases": null,
 4517           "Examples": null
 4518         },
 4519         "Fingerprint": {
 4520           "Description": "Fingerprint transforms the given Resource with a MD5 hash of the content in\nthe RelPermalink and Permalink.",
 4521           "Args": [
 4522             "args"
 4523           ],
 4524           "Aliases": [
 4525             "fingerprint"
 4526           ],
 4527           "Examples": []
 4528         },
 4529         "FromString": {
 4530           "Description": "",
 4531           "Args": null,
 4532           "Aliases": null,
 4533           "Examples": null
 4534         },
 4535         "Get": {
 4536           "Description": "Get locates the filename given in Hugo's assets filesystem\nand creates a Resource object that can be used for further transformations.",
 4537           "Args": [
 4538             "filename"
 4539           ],
 4540           "Aliases": null,
 4541           "Examples": []
 4542         },
 4543         "GetMatch": {
 4544           "Description": "",
 4545           "Args": null,
 4546           "Aliases": null,
 4547           "Examples": null
 4548         },
 4549         "GetRemote": {
 4550           "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 argument,\nfor any error situations the error can be checked in .Err.",
 4551           "Args": [
 4552             "args"
 4553           ],
 4554           "Aliases": null,
 4555           "Examples": []
 4556         },
 4557         "Match": {
 4558           "Description": "",
 4559           "Args": null,
 4560           "Aliases": null,
 4561           "Examples": null
 4562         },
 4563         "Minify": {
 4564           "Description": "Minify minifies the given Resource using the MediaType to pick the correct\nminifier.",
 4565           "Args": [
 4566             "r"
 4567           ],
 4568           "Aliases": [
 4569             "minify"
 4570           ],
 4571           "Examples": []
 4572         },
 4573         "PostCSS": {
 4574           "Description": "PostCSS processes the given Resource with PostCSS",
 4575           "Args": [
 4576             "args"
 4577           ],
 4578           "Aliases": [
 4579             "postCSS"
 4580           ],
 4581           "Examples": []
 4582         },
 4583         "PostProcess": {
 4584           "Description": "",
 4585           "Args": null,
 4586           "Aliases": null,
 4587           "Examples": null
 4588         },
 4589         "ToCSS": {
 4590           "Description": "ToCSS converts the given Resource to CSS. You can optional provide an Options\nobject or a target path (string) as first argument.",
 4591           "Args": [
 4592             "args"
 4593           ],
 4594           "Aliases": [
 4595             "toCSS"
 4596           ],
 4597           "Examples": []
 4598         }
 4599       },
 4600       "safe": {
 4601         "CSS": {
 4602           "Description": "CSS returns the string s as html/template CSS content.",
 4603           "Args": [
 4604             "s"
 4605           ],
 4606           "Aliases": [
 4607             "safeCSS"
 4608           ],
 4609           "Examples": [
 4610             [
 4611               "{{ \"Bat\u0026Man\" | safeCSS | safeCSS }}",
 4612               "Bat\u0026amp;Man"
 4613             ]
 4614           ]
 4615         },
 4616         "HTML": {
 4617           "Description": "HTML returns the string s as html/template HTML content.",
 4618           "Args": [
 4619             "s"
 4620           ],
 4621           "Aliases": [
 4622             "safeHTML"
 4623           ],
 4624           "Examples": [
 4625             [
 4626               "{{ \"Bat\u0026Man\" | safeHTML | safeHTML }}",
 4627               "Bat\u0026Man"
 4628             ],
 4629             [
 4630               "{{ \"Bat\u0026Man\" | safeHTML }}",
 4631               "Bat\u0026Man"
 4632             ]
 4633           ]
 4634         },
 4635         "HTMLAttr": {
 4636           "Description": "HTMLAttr returns the string s as html/template HTMLAttr content.",
 4637           "Args": [
 4638             "s"
 4639           ],
 4640           "Aliases": [
 4641             "safeHTMLAttr"
 4642           ],
 4643           "Examples": []
 4644         },
 4645         "JS": {
 4646           "Description": "JS returns the given string as a html/template JS content.",
 4647           "Args": [
 4648             "s"
 4649           ],
 4650           "Aliases": [
 4651             "safeJS"
 4652           ],
 4653           "Examples": [
 4654             [
 4655               "{{ \"(1*2)\" | safeJS | safeJS }}",
 4656               "(1*2)"
 4657             ]
 4658           ]
 4659         },
 4660         "JSStr": {
 4661           "Description": "JSStr returns the given string as a html/template JSStr content.",
 4662           "Args": [
 4663             "s"
 4664           ],
 4665           "Aliases": [
 4666             "safeJSStr"
 4667           ],
 4668           "Examples": []
 4669         },
 4670         "SanitizeURL": {
 4671           "Description": "SanitizeURL returns the string s as html/template URL content.",
 4672           "Args": [
 4673             "s"
 4674           ],
 4675           "Aliases": [
 4676             "sanitizeURL",
 4677             "sanitizeurl"
 4678           ],
 4679           "Examples": []
 4680         },
 4681         "URL": {
 4682           "Description": "URL returns the string s as html/template URL content.",
 4683           "Args": [
 4684             "s"
 4685           ],
 4686           "Aliases": [
 4687             "safeURL"
 4688           ],
 4689           "Examples": [
 4690             [
 4691               "{{ \"http://gohugo.io\" | safeURL | safeURL }}",
 4692               "http://gohugo.io"
 4693             ]
 4694           ]
 4695         }
 4696       },
 4697       "site": {
 4698         "BaseURL": {
 4699           "Description": "",
 4700           "Args": null,
 4701           "Aliases": null,
 4702           "Examples": null
 4703         },
 4704         "Current": {
 4705           "Description": "",
 4706           "Args": null,
 4707           "Aliases": null,
 4708           "Examples": null
 4709         },
 4710         "Data": {
 4711           "Description": "",
 4712           "Args": null,
 4713           "Aliases": null,
 4714           "Examples": null
 4715         },
 4716         "Home": {
 4717           "Description": "",
 4718           "Args": null,
 4719           "Aliases": null,
 4720           "Examples": null
 4721         },
 4722         "Hugo": {
 4723           "Description": "",
 4724           "Args": null,
 4725           "Aliases": null,
 4726           "Examples": null
 4727         },
 4728         "IsServer": {
 4729           "Description": "",
 4730           "Args": null,
 4731           "Aliases": null,
 4732           "Examples": null
 4733         },
 4734         "Language": {
 4735           "Description": "",
 4736           "Args": null,
 4737           "Aliases": null,
 4738           "Examples": null
 4739         },
 4740         "LastChange": {
 4741           "Description": "",
 4742           "Args": null,
 4743           "Aliases": null,
 4744           "Examples": null
 4745         },
 4746         "Menus": {
 4747           "Description": "",
 4748           "Args": null,
 4749           "Aliases": null,
 4750           "Examples": null
 4751         },
 4752         "Pages": {
 4753           "Description": "",
 4754           "Args": null,
 4755           "Aliases": null,
 4756           "Examples": null
 4757         },
 4758         "Params": {
 4759           "Description": "",
 4760           "Args": null,
 4761           "Aliases": null,
 4762           "Examples": null
 4763         },
 4764         "RegularPages": {
 4765           "Description": "",
 4766           "Args": null,
 4767           "Aliases": null,
 4768           "Examples": null
 4769         },
 4770         "ServerPort": {
 4771           "Description": "",
 4772           "Args": null,
 4773           "Aliases": null,
 4774           "Examples": null
 4775         },
 4776         "Sites": {
 4777           "Description": "",
 4778           "Args": null,
 4779           "Aliases": null,
 4780           "Examples": null
 4781         },
 4782         "Taxonomies": {
 4783           "Description": "",
 4784           "Args": null,
 4785           "Aliases": null,
 4786           "Examples": null
 4787         },
 4788         "Title": {
 4789           "Description": "",
 4790           "Args": null,
 4791           "Aliases": null,
 4792           "Examples": null
 4793         }
 4794       },
 4795       "strings": {
 4796         "Chomp": {
 4797           "Description": "Chomp returns a copy of s with all trailing newline characters removed.",
 4798           "Args": [
 4799             "s"
 4800           ],
 4801           "Aliases": [
 4802             "chomp"
 4803           ],
 4804           "Examples": [
 4805             [
 4806               "{{chomp \"\u003cp\u003eBlockhead\u003c/p\u003e\\n\" | safeHTML }}",
 4807               "\u003cp\u003eBlockhead\u003c/p\u003e"
 4808             ]
 4809           ]
 4810         },
 4811         "Contains": {
 4812           "Description": "Contains reports whether substr is in s.",
 4813           "Args": [
 4814             "s",
 4815             "substr"
 4816           ],
 4817           "Aliases": null,
 4818           "Examples": [
 4819             [
 4820               "{{ strings.Contains \"abc\" \"b\" }}",
 4821               "true"
 4822             ],
 4823             [
 4824               "{{ strings.Contains \"abc\" \"d\" }}",
 4825               "false"
 4826             ]
 4827           ]
 4828         },
 4829         "ContainsAny": {
 4830           "Description": "ContainsAny reports whether any Unicode code points in chars are within s.",
 4831           "Args": [
 4832             "s",
 4833             "chars"
 4834           ],
 4835           "Aliases": null,
 4836           "Examples": [
 4837             [
 4838               "{{ strings.ContainsAny \"abc\" \"bcd\" }}",
 4839               "true"
 4840             ],
 4841             [
 4842               "{{ strings.ContainsAny \"abc\" \"def\" }}",
 4843               "false"
 4844             ]
 4845           ]
 4846         },
 4847         "Count": {
 4848           "Description": "Count counts the number of non-overlapping instances of substr in s.\nIf substr is an empty string, Count returns 1 + the number of Unicode code points in s.",
 4849           "Args": [
 4850             "substr",
 4851             "s"
 4852           ],
 4853           "Aliases": null,
 4854           "Examples": [
 4855             [
 4856               "{{\"aabab\" | strings.Count \"a\" }}",
 4857               "3"
 4858             ]
 4859           ]
 4860         },
 4861         "CountRunes": {
 4862           "Description": "CountRunes returns the number of runes in s, excluding whitespace.",
 4863           "Args": [
 4864             "s"
 4865           ],
 4866           "Aliases": [
 4867             "countrunes"
 4868           ],
 4869           "Examples": []
 4870         },
 4871         "CountWords": {
 4872           "Description": "CountWords returns the approximate word count in s.",
 4873           "Args": [
 4874             "s"
 4875           ],
 4876           "Aliases": [
 4877             "countwords"
 4878           ],
 4879           "Examples": []
 4880         },
 4881         "FindRE": {
 4882           "Description": "FindRE returns a list of strings that match the regular expression. By default all matches\nwill be included. The number of matches can be limited with an optional third parameter.",
 4883           "Args": [
 4884             "expr",
 4885             "content",
 4886             "limit"
 4887           ],
 4888           "Aliases": [
 4889             "findRE"
 4890           ],
 4891           "Examples": [
 4892             [
 4893               "{{ findRE \"[G|g]o\" \"Hugo is a static side generator written in Go.\" \"1\" }}",
 4894               "[go]"
 4895             ]
 4896           ]
 4897         },
 4898         "FirstUpper": {
 4899           "Description": "FirstUpper converts s making  the first character upper case.",
 4900           "Args": [
 4901             "s"
 4902           ],
 4903           "Aliases": null,
 4904           "Examples": [
 4905             [
 4906               "{{ \"hugo rocks!\" | strings.FirstUpper }}",
 4907               "Hugo rocks!"
 4908             ]
 4909           ]
 4910         },
 4911         "HasPrefix": {
 4912           "Description": "HasPrefix tests whether the input s begins with prefix.",
 4913           "Args": [
 4914             "s",
 4915             "prefix"
 4916           ],
 4917           "Aliases": [
 4918             "hasPrefix"
 4919           ],
 4920           "Examples": [
 4921             [
 4922               "{{ hasPrefix \"Hugo\" \"Hu\" }}",
 4923               "true"
 4924             ],
 4925             [
 4926               "{{ hasPrefix \"Hugo\" \"Fu\" }}",
 4927               "false"
 4928             ]
 4929           ]
 4930         },
 4931         "HasSuffix": {
 4932           "Description": "",
 4933           "Args": null,
 4934           "Aliases": null,
 4935           "Examples": null
 4936         },
 4937         "Repeat": {
 4938           "Description": "Repeat returns a new string consisting of n copies of the string s.",
 4939           "Args": [
 4940             "n",
 4941             "s"
 4942           ],
 4943           "Aliases": null,
 4944           "Examples": [
 4945             [
 4946               "{{ \"yo\" | strings.Repeat 4 }}",
 4947               "yoyoyoyo"
 4948             ]
 4949           ]
 4950         },
 4951         "Replace": {
 4952           "Description": "Replace returns a copy of the string s with all occurrences of old replaced\nwith new.  The number of replacements can be limited with an optional fourth\nparameter.",
 4953           "Args": [
 4954             "s",
 4955             "old",
 4956             "new",
 4957             "limit"
 4958           ],
 4959           "Aliases": [
 4960             "replace"
 4961           ],
 4962           "Examples": [
 4963             [
 4964               "{{ replace \"Batman and Robin\" \"Robin\" \"Catwoman\" }}",
 4965               "Batman and Catwoman"
 4966             ],
 4967             [
 4968               "{{ replace \"aabbaabb\" \"a\" \"z\" 2 }}",
 4969               "zzbbaabb"
 4970             ]
 4971           ]
 4972         },
 4973         "ReplaceRE": {
 4974           "Description": "ReplaceRE returns a copy of s, replacing all matches of the regular\nexpression pattern with the replacement text repl. The number of replacements\ncan be limited with an optional fourth parameter.",
 4975           "Args": [
 4976             "pattern",
 4977             "repl",
 4978             "s",
 4979             "n"
 4980           ],
 4981           "Aliases": [
 4982             "replaceRE"
 4983           ],
 4984           "Examples": [
 4985             [
 4986               "{{ replaceRE \"a+b\" \"X\" \"aabbaabbab\" }}",
 4987               "XbXbX"
 4988             ],
 4989             [
 4990               "{{ replaceRE \"a+b\" \"X\" \"aabbaabbab\" 1 }}",
 4991               "Xbaabbab"
 4992             ]
 4993           ]
 4994         },
 4995         "RuneCount": {
 4996           "Description": "RuneCount returns the number of runes in s.",
 4997           "Args": [
 4998             "s"
 4999           ],
 5000           "Aliases": null,
 5001           "Examples": []
 5002         },
 5003         "SliceString": {
 5004           "Description": "SliceString slices a string by specifying a half-open range with\ntwo indices, start and end. 1 and 4 creates a slice including elements 1 through 3.\nThe end index can be omitted, it defaults to the string's length.",
 5005           "Args": [
 5006             "a",
 5007             "startEnd"
 5008           ],
 5009           "Aliases": [
 5010             "slicestr"
 5011           ],
 5012           "Examples": [
 5013             [
 5014               "{{slicestr \"BatMan\" 0 3}}",
 5015               "Bat"
 5016             ],
 5017             [
 5018               "{{slicestr \"BatMan\" 3}}",
 5019               "Man"
 5020             ]
 5021           ]
 5022         },
 5023         "Split": {
 5024           "Description": "Split slices an input string into all substrings separated by delimiter.",
 5025           "Args": [
 5026             "a",
 5027             "delimiter"
 5028           ],
 5029           "Aliases": [
 5030             "split"
 5031           ],
 5032           "Examples": []
 5033         },
 5034         "Substr": {
 5035           "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.",
 5036           "Args": [
 5037             "a",
 5038             "nums"
 5039           ],
 5040           "Aliases": [
 5041             "substr"
 5042           ],
 5043           "Examples": [
 5044             [
 5045               "{{substr \"BatMan\" 0 -3}}",
 5046               "Bat"
 5047             ],
 5048             [
 5049               "{{substr \"BatMan\" 3 3}}",
 5050               "Man"
 5051             ]
 5052           ]
 5053         },
 5054         "Title": {
 5055           "Description": "Title returns a copy of the input s with all Unicode letters that begin words\nmapped to their title case.",
 5056           "Args": [
 5057             "s"
 5058           ],
 5059           "Aliases": [
 5060             "title"
 5061           ],
 5062           "Examples": [
 5063             [
 5064               "{{title \"Bat man\"}}",
 5065               "Bat Man"
 5066             ],
 5067             [
 5068               "{{title \"somewhere over the rainbow\"}}",
 5069               "Somewhere Over the Rainbow"
 5070             ]
 5071           ]
 5072         },
 5073         "ToLower": {
 5074           "Description": "ToLower returns a copy of the input s with all Unicode letters mapped to their\nlower case.",
 5075           "Args": [
 5076             "s"
 5077           ],
 5078           "Aliases": [
 5079             "lower"
 5080           ],
 5081           "Examples": [
 5082             [
 5083               "{{lower \"BatMan\"}}",
 5084               "batman"
 5085             ]
 5086           ]
 5087         },
 5088         "ToUpper": {
 5089           "Description": "ToUpper returns a copy of the input s with all Unicode letters mapped to their\nupper case.",
 5090           "Args": [
 5091             "s"
 5092           ],
 5093           "Aliases": [
 5094             "upper"
 5095           ],
 5096           "Examples": [
 5097             [
 5098               "{{upper \"BatMan\"}}",
 5099               "BATMAN"
 5100             ]
 5101           ]
 5102         },
 5103         "Trim": {
 5104           "Description": "Trim returns converts the strings s removing all leading and trailing characters defined\ncontained.",
 5105           "Args": [
 5106             "s",
 5107             "cutset"
 5108           ],
 5109           "Aliases": [
 5110             "trim"
 5111           ],
 5112           "Examples": [
 5113             [
 5114               "{{ trim \"++Batman--\" \"+-\" }}",
 5115               "Batman"
 5116             ]
 5117           ]
 5118         },
 5119         "TrimLeft": {
 5120           "Description": "TrimLeft returns a slice of the string s with all leading characters\ncontained in cutset removed.",
 5121           "Args": [
 5122             "cutset",
 5123             "s"
 5124           ],
 5125           "Aliases": null,
 5126           "Examples": [
 5127             [
 5128               "{{ \"aabbaa\" | strings.TrimLeft \"a\" }}",
 5129               "bbaa"
 5130             ]
 5131           ]
 5132         },
 5133         "TrimPrefix": {
 5134           "Description": "TrimPrefix returns s without the provided leading prefix string. If s doesn't\nstart with prefix, s is returned unchanged.",
 5135           "Args": [
 5136             "prefix",
 5137             "s"
 5138           ],
 5139           "Aliases": null,
 5140           "Examples": [
 5141             [
 5142               "{{ \"aabbaa\" | strings.TrimPrefix \"a\" }}",
 5143               "abbaa"
 5144             ],
 5145             [
 5146               "{{ \"aabbaa\" | strings.TrimPrefix \"aa\" }}",
 5147               "bbaa"
 5148             ]
 5149           ]
 5150         },
 5151         "TrimRight": {
 5152           "Description": "TrimRight returns a slice of the string s with all trailing characters\ncontained in cutset removed.",
 5153           "Args": [
 5154             "cutset",
 5155             "s"
 5156           ],
 5157           "Aliases": null,
 5158           "Examples": [
 5159             [
 5160               "{{ \"aabbaa\" | strings.TrimRight \"a\" }}",
 5161               "aabb"
 5162             ]
 5163           ]
 5164         },
 5165         "TrimSuffix": {
 5166           "Description": "TrimSuffix returns s without the provided trailing suffix string. If s\ndoesn't end with suffix, s is returned unchanged.",
 5167           "Args": [
 5168             "suffix",
 5169             "s"
 5170           ],
 5171           "Aliases": null,
 5172           "Examples": [
 5173             [
 5174               "{{ \"aabbaa\" | strings.TrimSuffix \"a\" }}",
 5175               "aabba"
 5176             ],
 5177             [
 5178               "{{ \"aabbaa\" | strings.TrimSuffix \"aa\" }}",
 5179               "aabb"
 5180             ]
 5181           ]
 5182         },
 5183         "Truncate": {
 5184           "Description": "Truncate truncates a given string to the specified length.",
 5185           "Args": [
 5186             "a",
 5187             "options"
 5188           ],
 5189           "Aliases": [
 5190             "truncate"
 5191           ],
 5192           "Examples": [
 5193             [
 5194               "{{ \"this is a very long text\" | truncate 10 \" ...\" }}",
 5195               "this is a ..."
 5196             ],
 5197             [
 5198               "{{ \"With [Markdown](/markdown) inside.\" | markdownify | truncate 14 }}",
 5199               "With \u003ca href=\"/markdown\"\u003eMarkdown …\u003c/a\u003e"
 5200             ]
 5201           ]
 5202         }
 5203       },
 5204       "templates": {
 5205         "Exists": {
 5206           "Description": "Exists returns whether the template with the given name exists.\nNote that this is the Unix-styled relative path including filename suffix,\ne.g. partials/header.html",
 5207           "Args": [
 5208             "name"
 5209           ],
 5210           "Aliases": null,
 5211           "Examples": [
 5212             [
 5213               "{{ if (templates.Exists \"partials/header.html\") }}Yes!{{ end }}",
 5214               "Yes!"
 5215             ],
 5216             [
 5217               "{{ if not (templates.Exists \"partials/doesnotexist.html\") }}No!{{ end }}",
 5218               "No!"
 5219             ]
 5220           ]
 5221         }
 5222       },
 5223       "time": {
 5224         "AsTime": {
 5225           "Description": "AsTime converts the textual representation of the datetime string into\na time.Time interface.",
 5226           "Args": [
 5227             "v",
 5228             "args"
 5229           ],
 5230           "Aliases": null,
 5231           "Examples": [
 5232             [
 5233               "{{ (time \"2015-01-21\").Year }}",
 5234               "2015"
 5235             ]
 5236           ]
 5237         },
 5238         "Duration": {
 5239           "Description": "Duration converts the given number to a time.Duration.\nUnit is one of nanosecond/ns, microsecond/us/µs, millisecond/ms, second/s, minute/m or hour/h.",
 5240           "Args": [
 5241             "unit",
 5242             "number"
 5243           ],
 5244           "Aliases": [
 5245             "duration"
 5246           ],
 5247           "Examples": [
 5248             [
 5249               "{{ mul 60 60 | duration \"second\" }}",
 5250               "1h0m0s"
 5251             ]
 5252           ]
 5253         },
 5254         "Format": {
 5255           "Description": "Format converts the textual representation of the datetime string in v into\ntime.Time if needed and formats it with the given layout.",
 5256           "Args": [
 5257             "layout",
 5258             "v"
 5259           ],
 5260           "Aliases": [
 5261             "dateFormat"
 5262           ],
 5263           "Examples": [
 5264             [
 5265               "dateFormat: {{ dateFormat \"Monday, Jan 2, 2006\" \"2015-01-21\" }}",
 5266               "dateFormat: Wednesday, Jan 21, 2015"
 5267             ]
 5268           ]
 5269         },
 5270         "Now": {
 5271           "Description": "Now returns the current local time or `clock` time",
 5272           "Args": null,
 5273           "Aliases": [
 5274             "now"
 5275           ],
 5276           "Examples": []
 5277         },
 5278         "ParseDuration": {
 5279           "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",
 5280           "Args": [
 5281             "s"
 5282           ],
 5283           "Aliases": null,
 5284           "Examples": [
 5285             [
 5286               "{{ \"1h12m10s\" | time.ParseDuration }}",
 5287               "1h12m10s"
 5288             ]
 5289           ]
 5290         }
 5291       },
 5292       "transform": {
 5293         "CanHighlight": {
 5294           "Description": "",
 5295           "Args": null,
 5296           "Aliases": null,
 5297           "Examples": null
 5298         },
 5299         "Emojify": {
 5300           "Description": "Emojify returns a copy of s with all emoji codes replaced with actual emojis.\n\nSee http://www.emoji-cheat-sheet.com/",
 5301           "Args": [
 5302             "s"
 5303           ],
 5304           "Aliases": [
 5305             "emojify"
 5306           ],
 5307           "Examples": [
 5308             [
 5309               "{{ \"I :heart: Hugo\" | emojify }}",
 5310               "I ❤️ Hugo"
 5311             ]
 5312           ]
 5313         },
 5314         "HTMLEscape": {
 5315           "Description": "HTMLEscape returns a copy of s with reserved HTML characters escaped.",
 5316           "Args": [
 5317             "s"
 5318           ],
 5319           "Aliases": [
 5320             "htmlEscape"
 5321           ],
 5322           "Examples": [
 5323             [
 5324               "{{ htmlEscape \"Cathal Garvey \u0026 The Sunshine Band \u003ccathal@foo.bar\u003e\" | safeHTML}}",
 5325               "Cathal Garvey \u0026amp; The Sunshine Band \u0026lt;cathal@foo.bar\u0026gt;"
 5326             ],
 5327             [
 5328               "{{ htmlEscape \"Cathal Garvey \u0026 The Sunshine Band \u003ccathal@foo.bar\u003e\"}}",
 5329               "Cathal Garvey \u0026amp;amp; The Sunshine Band \u0026amp;lt;cathal@foo.bar\u0026amp;gt;"
 5330             ],
 5331             [
 5332               "{{ htmlEscape \"Cathal Garvey \u0026 The Sunshine Band \u003ccathal@foo.bar\u003e\" | htmlUnescape | safeHTML }}",
 5333               "Cathal Garvey \u0026 The Sunshine Band \u003ccathal@foo.bar\u003e"
 5334             ]
 5335           ]
 5336         },
 5337         "HTMLUnescape": {
 5338           "Description": "HTMLUnescape returns a copy of s with HTML escape requences converted to plain\ntext.",
 5339           "Args": [
 5340             "s"
 5341           ],
 5342           "Aliases": [
 5343             "htmlUnescape"
 5344           ],
 5345           "Examples": [
 5346             [
 5347               "{{ htmlUnescape \"Cathal Garvey \u0026amp; The Sunshine Band \u0026lt;cathal@foo.bar\u0026gt;\" | safeHTML}}",
 5348               "Cathal Garvey \u0026 The Sunshine Band \u003ccathal@foo.bar\u003e"
 5349             ],
 5350             [
 5351               "{{\"Cathal Garvey \u0026amp;amp; The Sunshine Band \u0026amp;lt;cathal@foo.bar\u0026amp;gt;\" | htmlUnescape | htmlUnescape | safeHTML}}",
 5352               "Cathal Garvey \u0026 The Sunshine Band \u003ccathal@foo.bar\u003e"
 5353             ],
 5354             [
 5355               "{{\"Cathal Garvey \u0026amp;amp; The Sunshine Band \u0026amp;lt;cathal@foo.bar\u0026amp;gt;\" | htmlUnescape | htmlUnescape }}",
 5356               "Cathal Garvey \u0026amp; The Sunshine Band \u0026lt;cathal@foo.bar\u0026gt;"
 5357             ],
 5358             [
 5359               "{{ htmlUnescape \"Cathal Garvey \u0026amp; The Sunshine Band \u0026lt;cathal@foo.bar\u0026gt;\" | htmlEscape | safeHTML }}",
 5360               "Cathal Garvey \u0026amp; The Sunshine Band \u0026lt;cathal@foo.bar\u0026gt;"
 5361             ]
 5362           ]
 5363         },
 5364         "Highlight": {
 5365           "Description": "Highlight returns a copy of s as an HTML string with syntax\nhighlighting applied.",
 5366           "Args": [
 5367             "s",
 5368             "lang",
 5369             "opts"
 5370           ],
 5371           "Aliases": [
 5372             "highlight"
 5373           ],
 5374           "Examples": []
 5375         },
 5376         "HighlightCodeBlock": {
 5377           "Description": "",
 5378           "Args": null,
 5379           "Aliases": null,
 5380           "Examples": null
 5381         },
 5382         "Markdownify": {
 5383           "Description": "Markdownify renders s from Markdown to HTML.",
 5384           "Args": [
 5385             "s"
 5386           ],
 5387           "Aliases": [
 5388             "markdownify"
 5389           ],
 5390           "Examples": [
 5391             [
 5392               "{{ .Title | markdownify}}",
 5393               "\u003cstrong\u003eBatMan\u003c/strong\u003e"
 5394             ]
 5395           ]
 5396         },
 5397         "Plainify": {
 5398           "Description": "Plainify returns a copy of s with all HTML tags removed.",
 5399           "Args": [
 5400             "s"
 5401           ],
 5402           "Aliases": [
 5403             "plainify"
 5404           ],
 5405           "Examples": [
 5406             [
 5407               "{{ plainify  \"Hello \u003cstrong\u003eworld\u003c/strong\u003e, gophers!\" }}",
 5408               "Hello world, gophers!"
 5409             ]
 5410           ]
 5411         },
 5412         "Remarshal": {
 5413           "Description": "Remarshal is used in the Hugo documentation to convert configuration\nexamples from YAML to JSON, TOML (and possibly the other way around).\nThe is primarily a helper for the Hugo docs site.\nIt is not a general purpose YAML to TOML converter etc., and may\nchange without notice if it serves a purpose in the docs.\nFormat is one of json, yaml or toml.",
 5414           "Args": [
 5415             "format",
 5416             "data"
 5417           ],
 5418           "Aliases": null,
 5419           "Examples": [
 5420             [
 5421               "{{ \"title = \\\"Hello World\\\"\" | transform.Remarshal \"json\" | safeHTML }}",
 5422               "{\n   \"title\": \"Hello World\"\n}\n"
 5423             ]
 5424           ]
 5425         },
 5426         "Unmarshal": {
 5427           "Description": "Unmarshal unmarshals the data given, which can be either a string, json.RawMessage\nor a Resource. Supported formats are JSON, TOML, YAML, and CSV.\nYou can optionally provide an options map as the first argument.",
 5428           "Args": [
 5429             "args"
 5430           ],
 5431           "Aliases": [
 5432             "unmarshal"
 5433           ],
 5434           "Examples": [
 5435             [
 5436               "{{ \"hello = \\\"Hello World\\\"\" | transform.Unmarshal }}",
 5437               "map[hello:Hello World]"
 5438             ],
 5439             [
 5440               "{{ \"hello = \\\"Hello World\\\"\" | resources.FromString \"data/greetings.toml\" | transform.Unmarshal }}",
 5441               "map[hello:Hello World]"
 5442             ]
 5443           ]
 5444         }
 5445       },
 5446       "urls": {
 5447         "AbsLangURL": {
 5448           "Description": "AbsLangURL the string s and converts it to an absolute URL according\nto a page's position in the project directory structure and the current\nlanguage.",
 5449           "Args": [
 5450             "s"
 5451           ],
 5452           "Aliases": [
 5453             "absLangURL"
 5454           ],
 5455           "Examples": []
 5456         },
 5457         "AbsURL": {
 5458           "Description": "AbsURL takes the string s and converts it to an absolute URL.",
 5459           "Args": [
 5460             "s"
 5461           ],
 5462           "Aliases": [
 5463             "absURL"
 5464           ],
 5465           "Examples": []
 5466         },
 5467         "Anchorize": {
 5468           "Description": "Anchorize creates sanitized anchor name version of the string s that is compatible\nwith how your configured markdown renderer does it.",
 5469           "Args": [
 5470             "s"
 5471           ],
 5472           "Aliases": [
 5473             "anchorize"
 5474           ],
 5475           "Examples": [
 5476             [
 5477               "{{ \"This is a title\" | anchorize }}",
 5478               "this-is-a-title"
 5479             ]
 5480           ]
 5481         },
 5482         "Parse": {
 5483           "Description": "",
 5484           "Args": null,
 5485           "Aliases": null,
 5486           "Examples": null
 5487         },
 5488         "Ref": {
 5489           "Description": "Ref returns the absolute URL path to a given content item from Page p.",
 5490           "Args": [
 5491             "p",
 5492             "args"
 5493           ],
 5494           "Aliases": [
 5495             "ref"
 5496           ],
 5497           "Examples": []
 5498         },
 5499         "RelLangURL": {
 5500           "Description": "RelLangURL takes the string s and prepends the relative path according to a\npage's position in the project directory structure and the current language.",
 5501           "Args": [
 5502             "s"
 5503           ],
 5504           "Aliases": [
 5505             "relLangURL"
 5506           ],
 5507           "Examples": []
 5508         },
 5509         "RelRef": {
 5510           "Description": "RelRef returns the relative URL path to a given content item from Page p.",
 5511           "Args": [
 5512             "p",
 5513             "args"
 5514           ],
 5515           "Aliases": [
 5516             "relref"
 5517           ],
 5518           "Examples": []
 5519         },
 5520         "RelURL": {
 5521           "Description": "RelURL takes the string s and prepends the relative path according to a\npage's position in the project directory structure.",
 5522           "Args": [
 5523             "s"
 5524           ],
 5525           "Aliases": [
 5526             "relURL"
 5527           ],
 5528           "Examples": []
 5529         },
 5530         "URLize": {
 5531           "Description": "URLize returns the the strings s formatted as an URL.",
 5532           "Args": [
 5533             "s"
 5534           ],
 5535           "Aliases": [
 5536             "urlize"
 5537           ],
 5538           "Examples": []
 5539         }
 5540       }
 5541     }
 5542   }
 5543 }