UNPKG

1.75 kBJavaScriptView Raw
1hljs.registerLanguage("yaml",(()=>{"use strict";return e=>{
2var n="true false yes no null",a="[\\w#;/?:@&=+$,.~*'()[\\]]+",s={
3className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/
4},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",
5variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(s,{
6variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={
7end:",",endsWithParent:!0,excludeEnd:!0,contains:[],keywords:n,relevance:0},t={
8begin:/\{/,end:/\}/,contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[",
9end:"\\]",contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr",
10variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{
11begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"
12}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",
13begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{
14begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,
15relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type",
16begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a
17},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",
18begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",
19relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{
20className:"number",
21begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"
22},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},t,g,s],r=[...b]
23;return r.pop(),r.push(i),l.contains=r,{name:"YAML",case_insensitive:!0,
24aliases:["yml","YAML"],contains:b}}})());
\No newline at end of file