@highlightjs/cdn-assets
Version:
Syntax highlighting with language autodetection. (pre-compiled CDN assets)
33 lines • 2.61 kB
JavaScript
/*! `erlang` grammar compiled for Highlight.js 11.11.1 */
var hljsGrammar=(()=>{"use strict";return e=>{
const n="[a-z'][a-zA-Z0-9_']*",i="("+n+":"+n+"|"+n+")",a={
keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor maybe else",
literal:"false true"},r=e.COMMENT("%","$"),s={className:"number",
begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)",
relevance:0},d={begin:"fun\\s+"+n+"/\\d+"},t={begin:i+"\\(",end:"\\)",
returnBegin:!0,relevance:0,contains:[{begin:i,relevance:0},{begin:"\\(",
end:"\\)",endsWithParent:!0,returnEnd:!0,relevance:0}]},c={begin:/\{/,end:/\}/,
relevance:0},o={begin:"\\b_([A-Z][A-Za-z0-9_]*)?",relevance:0},l={
begin:"[A-Z][a-zA-Z0-9_]*",relevance:0},b={begin:"#"+e.UNDERSCORE_IDENT_RE,
relevance:0,returnBegin:!0,contains:[{begin:"#"+e.UNDERSCORE_IDENT_RE,
relevance:0},{begin:/\{/,end:/\}/,relevance:0}]},g={scope:"string",
match:/\$(\\([^0-9]|[0-9]{1,3}|)|.)/},E={scope:"string",
match:/"""("*)(?!")[\s\S]*?"""\1/},_={scope:"string",
contains:[e.BACKSLASH_ESCAPE],variants:[{match:/~\w?"""("*)(?!")[\s\S]*?"""\1/
},{begin:/~\w?\(/,end:/\)/},{begin:/~\w?\[/,end:/\]/},{begin:/~\w?{/,end:/}/},{
begin:/~\w?</,end:/>/},{begin:/~\w?\//,end:/\//},{begin:/~\w?\|/,end:/\|/},{
begin:/~\w?'/,end:/'/},{begin:/~\w?"/,end:/"/},{begin:/~\w?`/,end:/`/},{
begin:/~\w?#/,end:/#/}]},u={beginKeywords:"fun receive if try case maybe",
end:"end",keywords:a};u.contains=[r,d,e.inherit(e.APOS_STRING_MODE,{className:""
}),u,t,_,E,e.QUOTE_STRING_MODE,s,c,o,l,b,g]
;const m=[r,d,u,t,_,E,e.QUOTE_STRING_MODE,s,c,o,l,b,g];t.contains[1].contains=m,
c.contains=m,b.contains[1].contains=m;const f={className:"params",begin:"\\(",
end:"\\)",contains:m};return{name:"Erlang",aliases:["erl"],keywords:a,
illegal:"(</|\\*=|\\+=|-=|/\\*|\\*/|\\(\\*|\\*\\))",contains:[{
className:"function",begin:"^"+n+"\\s*\\(",end:"->",returnBegin:!0,
illegal:"\\(|#|//|/\\*|\\\\|:|;",contains:[f,e.inherit(e.TITLE_MODE,{begin:n})],
starts:{end:";|\\.",keywords:a,contains:m}},r,{begin:"^-",end:"\\.",relevance:0,
excludeEnd:!0,returnBegin:!0,keywords:{$pattern:"-"+e.IDENT_RE,
keyword:["-module","-record","-undef","-export","-ifdef","-ifndef","-author","-copyright","-doc","-moduledoc","-vsn","-import","-include","-include_lib","-compile","-define","-else","-endif","-file","-behaviour","-behavior","-spec","-on_load","-nifs"].map((e=>e+"|1.5")).join(" ")
},contains:[f,_,E,e.QUOTE_STRING_MODE]},s,_,E,e.QUOTE_STRING_MODE,b,o,l,c,g,{
begin:/\.$/}]}}})();export default hljsGrammar;