28 lines
2.1 KiB
JavaScript
28 lines
2.1 KiB
JavaScript
/*! `erlang` grammar compiled for Highlight.js 11.10.0 */
|
|
(()=>{var e=(()=>{"use strict";return e=>{
|
|
const n="[a-z'][a-zA-Z0-9_']*",r="("+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",
|
|
literal:"false true"},i=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},c={begin:"fun\\s+"+n+"/\\d+"},t={begin:r+"\\(",end:"\\)",
|
|
returnBegin:!0,relevance:0,contains:[{begin:r,relevance:0},{begin:"\\(",
|
|
end:"\\)",endsWithParent:!0,returnEnd:!0,relevance:0}]},d={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},g={begin:"#"+e.UNDERSCORE_IDENT_RE,
|
|
relevance:0,returnBegin:!0,contains:[{begin:"#"+e.UNDERSCORE_IDENT_RE,
|
|
relevance:0},{begin:/\{/,end:/\}/,relevance:0}]},b={scope:"string",
|
|
match:/\$(\\([^0-9]|[0-9]{1,3}|)|.)/},E={
|
|
beginKeywords:"fun receive if try case",end:"end",keywords:a}
|
|
;E.contains=[i,c,e.inherit(e.APOS_STRING_MODE,{className:""
|
|
}),E,t,e.QUOTE_STRING_MODE,s,d,o,l,g,b]
|
|
;const u=[i,c,E,t,e.QUOTE_STRING_MODE,s,d,o,l,g,b]
|
|
;t.contains[1].contains=u,d.contains=u,g.contains[1].contains=u;const _={
|
|
className:"params",begin:"\\(",end:"\\)",contains:u};return{name:"Erlang",
|
|
aliases:["erl"],keywords:a,illegal:"(</|\\*=|\\+=|-=|/\\*|\\*/|\\(\\*|\\*\\))",
|
|
contains:[{className:"function",begin:"^"+n+"\\s*\\(",end:"->",returnBegin:!0,
|
|
illegal:"\\(|#|//|/\\*|\\\\|:|;",contains:[_,e.inherit(e.TITLE_MODE,{begin:n})],
|
|
starts:{end:";|\\.",keywords:a,contains:u}},i,{begin:"^-",end:"\\.",relevance:0,
|
|
excludeEnd:!0,returnBegin:!0,keywords:{$pattern:"-"+e.IDENT_RE,
|
|
keyword:["-module","-record","-undef","-export","-ifdef","-ifndef","-author","-copyright","-doc","-vsn","-import","-include","-include_lib","-compile","-define","-else","-endif","-file","-behaviour","-behavior","-spec"].map((e=>e+"|1.5")).join(" ")
|
|
},contains:[_]},s,e.QUOTE_STRING_MODE,g,o,l,d,b,{begin:/\.$/}]}}})()
|
|
;hljs.registerLanguage("erlang",e)})(); |