2024-06-20 14:10:42 +00:00
/ * !
2025-01-13 09:56:01 +00:00
Highlight . js v11 . 10.0 ( git : 366 a8bd012 )
( c ) 2006 - 2024 Josh Goebel < hello @ joshgoebel . com > and other contributors
2024-06-20 14:10:42 +00:00
License : BSD - 3 - Clause
* /
var hljs = function ( ) { "use strict" ; function e ( t ) {
return t instanceof Map ? t . clear = t . delete = t . set = ( ) => {
throw Error ( "map is read-only" ) } : t instanceof Set && ( t . add = t . clear = t . delete = ( ) => {
throw Error ( "set is read-only" )
} ) , Object . freeze ( t ) , Object . getOwnPropertyNames ( t ) . forEach ( ( n => {
const i = t [ n ] , s = typeof i ; "object" !== s && "function" !== s || Object . isFrozen ( i ) || e ( i )
} ) ) , t } class t { constructor ( e ) {
void 0 === e . data && ( e . data = { } ) , this . data = e . data , this . isMatchIgnored = ! 1 }
ignoreMatch ( ) { this . isMatchIgnored = ! 0 } } function n ( e ) {
return e . replace ( /&/g , "&" ) . replace ( /</g , "<" ) . replace ( />/g , ">" ) . replace ( /"/g , """ ) . replace ( /'/g , "'" )
} function i ( e , ... t ) { const n = Object . create ( null ) ; for ( const t in e ) n [ t ] = e [ t ]
; return t . forEach ( ( e => { for ( const t in e ) n [ t ] = e [ t ] } ) ) , n } const s = e => ! ! e . scope
; class o { constructor ( e , t ) {
this . buffer = "" , this . classPrefix = t . classPrefix , e . walk ( this ) } addText ( e ) {
this . buffer += n ( e ) } openNode ( e ) { if ( ! s ( e ) ) return ; const t = ( ( e , { prefix : t } ) => {
if ( e . startsWith ( "language:" ) ) return e . replace ( "language:" , "language-" )
; if ( e . includes ( "." ) ) { const n = e . split ( "." )
; return [ ` ${ t } ${ n . shift ( ) } ` , ... n . map ( ( ( e , t ) => ` ${ e } ${ "_" . repeat ( t + 1 ) } ` ) ) ] . join ( " " )
} return ` ${ t } ${ e } ` } ) ( e . scope , { prefix : this . classPrefix } ) ; this . span ( t ) }
closeNode ( e ) { s ( e ) && ( this . buffer += "</span>" ) } value ( ) { return this . buffer } span ( e ) {
this . buffer += ` <span class=" ${ e } "> ` } } const r = ( e = { } ) => { const t = { children : [ ] }
; return Object . assign ( t , e ) , t } ; class a { constructor ( ) {
this . rootNode = r ( ) , this . stack = [ this . rootNode ] } get top ( ) {
return this . stack [ this . stack . length - 1 ] } get root ( ) { return this . rootNode } add ( e ) {
this . top . children . push ( e ) } openNode ( e ) { const t = r ( { scope : e } )
; this . add ( t ) , this . stack . push ( t ) } closeNode ( ) {
if ( this . stack . length > 1 ) return this . stack . pop ( ) } closeAllNodes ( ) {
for ( ; this . closeNode ( ) ; ) ; } toJSON ( ) { return JSON . stringify ( this . rootNode , null , 4 ) }
walk ( e ) { return this . constructor . _walk ( e , this . rootNode ) } static _walk ( e , t ) {
return "string" == typeof t ? e . addText ( t ) : t . children && ( e . openNode ( t ) ,
t . children . forEach ( ( t => this . _walk ( e , t ) ) ) , e . closeNode ( t ) ) , e } static _collapse ( e ) {
"string" != typeof e && e . children && ( e . children . every ( ( e => "string" == typeof e ) ) ? e . children = [ e . children . join ( "" ) ] : e . children . forEach ( ( e => {
a . _collapse ( e ) } ) ) ) } } class c extends a { constructor ( e ) { super ( ) , this . options = e }
addText ( e ) { "" !== e && this . add ( e ) } startScope ( e ) { this . openNode ( e ) } endScope ( ) {
this . closeNode ( ) } _ _addSublanguage ( e , t ) { const n = e . root
; t && ( n . scope = "language:" + t ) , this . add ( n ) } toHTML ( ) {
return new o ( this , this . options ) . value ( ) } finalize ( ) {
return this . closeAllNodes ( ) , ! 0 } } function l ( e ) {
return e ? "string" == typeof e ? e : e . source : null } function g ( e ) { return h ( "(?=" , e , ")" ) }
function u ( e ) { return h ( "(?:" , e , ")*" ) } function d ( e ) { return h ( "(?:" , e , ")?" ) }
function h ( ... e ) { return e . map ( ( e => l ( e ) ) ) . join ( "" ) } function f ( ... e ) { const t = ( e => {
const t = e [ e . length - 1 ]
; return "object" == typeof t && t . constructor === Object ? ( e . splice ( e . length - 1 , 1 ) , t ) : { }
} ) ( e ) ; return "(" + ( t . capture ? "" : "?:" ) + e . map ( ( e => l ( e ) ) ) . join ( "|" ) + ")" }
function p ( e ) { return RegExp ( e . toString ( ) + "|" ) . exec ( "" ) . length - 1 }
const b = /\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./
; function m ( e , { joinWith : t } ) { let n = 0 ; return e . map ( ( e => { n += 1 ; const t = n
; let i = l ( e ) , s = "" ; for ( ; i . length > 0 ; ) { const e = b . exec ( i ) ; if ( ! e ) { s += i ; break }
s += i . substring ( 0 , e . index ) ,
i = i . substring ( e . index + e [ 0 ] . length ) , "\\" === e [ 0 ] [ 0 ] && e [ 1 ] ? s += "\\" + ( Number ( e [ 1 ] ) + t ) : ( s += e [ 0 ] ,
"(" === e [ 0 ] && n ++ ) } return s } ) ) . map ( ( e => ` ( ${ e } ) ` ) ) . join ( t ) }
const E = "[a-zA-Z]\\w*" , x = "[a-zA-Z_]\\w*" , w = "\\b\\d+(\\.\\d+)?" , y = "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)" , _ = "\\b(0b[01]+)" , O = {
begin : "\\\\[\\s\\S]" , relevance : 0 } , v = { scope : "string" , begin : "'" , end : "'" ,
illegal : "\\n" , contains : [ O ] } , k = { scope : "string" , begin : '"' , end : '"' , illegal : "\\n" ,
contains : [ O ] } , N = ( e , t , n = { } ) => { const s = i ( { scope : "comment" , begin : e , end : t ,
contains : [ ] } , n ) ; s . contains . push ( { scope : "doctag" ,
begin : "[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)" ,
end : /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/ , excludeBegin : ! 0 , relevance : 0 } )
; const o = f ( "I" , "a" , "is" , "so" , "us" , "to" , "at" , "if" , "in" , "it" , "on" , /[A-Za-z]+['](d|ve|re|ll|t|s|n)/ , /[A-Za-z]+[-][a-z]+/ , /[A-Za-z][a-z]{2,}/ )
; return s . contains . push ( { begin : h ( /[ ]+/ , "(" , o , /[.]?[:]?([.][ ]|[ ])/ , "){3}" ) } ) , s
} , S = N ( "//" , "$" ) , M = N ( "/\\*" , "\\*/" ) , R = N ( "#" , "$" ) ; var j = Object . freeze ( {
_ _proto _ _ : null , APOS _STRING _MODE : v , BACKSLASH _ESCAPE : O , BINARY _NUMBER _MODE : {
scope : "number" , begin : _ , relevance : 0 } , BINARY _NUMBER _RE : _ , COMMENT : N ,
C _BLOCK _COMMENT _MODE : M , C _LINE _COMMENT _MODE : S , C _NUMBER _MODE : { scope : "number" ,
begin : y , relevance : 0 } , C _NUMBER _RE : y , END _SAME _AS _BEGIN : e => Object . assign ( e , {
"on:begin" : ( e , t ) => { t . data . _beginMatch = e [ 1 ] } , "on:end" : ( e , t ) => {
t . data . _beginMatch !== e [ 1 ] && t . ignoreMatch ( ) } } ) , HASH _COMMENT _MODE : R , IDENT _RE : E ,
MATCH _NOTHING _RE : /\b\B/ , METHOD _GUARD : { begin : "\\.\\s*" + x , relevance : 0 } ,
NUMBER _MODE : { scope : "number" , begin : w , relevance : 0 } , NUMBER _RE : w ,
PHRASAL _WORDS _MODE : {
begin : /\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/
} , QUOTE _STRING _MODE : k , REGEXP _MODE : { scope : "regexp" , begin : /\/(?=[^/\n]*\/)/ ,
end : /\/[gimuy]*/ , contains : [ O , { begin : /\[/ , end : /\]/ , relevance : 0 , contains : [ O ] } ] } ,
RE _STARTERS _RE : "!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~" ,
SHEBANG : ( e = { } ) => { const t = /^#![ ]*\//
; return e . binary && ( e . begin = h ( t , /.*\b/ , e . binary , /\b.*/ ) ) , i ( { scope : "meta" , begin : t ,
end : /$/ , relevance : 0 , "on:begin" : ( e , t ) => { 0 !== e . index && t . ignoreMatch ( ) } } , e ) } ,
TITLE _MODE : { scope : "title" , begin : E , relevance : 0 } , UNDERSCORE _IDENT _RE : x ,
UNDERSCORE _TITLE _MODE : { scope : "title" , begin : x , relevance : 0 } } ) ; function A ( e , t ) {
"." === e . input [ e . index - 1 ] && t . ignoreMatch ( ) } function I ( e , t ) {
void 0 !== e . className && ( e . scope = e . className , delete e . className ) } function T ( e , t ) {
t && e . beginKeywords && ( e . begin = "\\b(" + e . beginKeywords . split ( " " ) . join ( "|" ) + ")(?!\\.)(?=\\b|\\s)" ,
e . _ _beforeBegin = A , e . keywords = e . keywords || e . beginKeywords , delete e . beginKeywords ,
void 0 === e . relevance && ( e . relevance = 0 ) ) } function L ( e , t ) {
Array . isArray ( e . illegal ) && ( e . illegal = f ( ... e . illegal ) ) } function B ( e , t ) {
if ( e . match ) {
if ( e . begin || e . end ) throw Error ( "begin & end are not supported with match" )
; e . begin = e . match , delete e . match } } function P ( e , t ) {
void 0 === e . relevance && ( e . relevance = 1 ) } const D = ( e , t ) => { if ( ! e . beforeMatch ) return
; if ( e . starts ) throw Error ( "beforeMatch cannot be used with starts" )
; const n = Object . assign ( { } , e ) ; Object . keys ( e ) . forEach ( ( t => { delete e [ t ]
} ) ) , e . keywords = n . keywords , e . begin = h ( n . beforeMatch , g ( n . begin ) ) , e . starts = {
relevance : 0 , contains : [ Object . assign ( n , { endsParent : ! 0 } ) ]
} , e . relevance = 0 , delete n . beforeMatch
} , H = [ "of" , "and" , "for" , "in" , "not" , "or" , "if" , "then" , "parent" , "list" , "value" ] , C = "keyword"
; function $ ( e , t , n = C ) { const i = Object . create ( null )
; return "string" == typeof e ? s ( n , e . split ( " " ) ) : Array . isArray ( e ) ? s ( n , e ) : Object . keys ( e ) . forEach ( ( n => {
Object . assign ( i , $ ( e [ n ] , t , n ) ) } ) ) , i ; function s ( e , n ) {
t && ( n = n . map ( ( e => e . toLowerCase ( ) ) ) ) , n . forEach ( ( t => { const n = t . split ( "|" )
; i [ n [ 0 ] ] = [ e , U ( n [ 0 ] , n [ 1 ] ) ] } ) ) } } function U ( e , t ) {
return t ? Number ( t ) : ( e => H . includes ( e . toLowerCase ( ) ) ) ( e ) ? 0 : 1 } const z = { } , W = e => {
console . error ( e ) } , X = ( e , ... t ) => { console . log ( "WARN: " + e , ... t ) } , G = ( e , t ) => {
z [ ` ${ e } / ${ t } ` ] || ( console . log ( ` Deprecated as of ${ e } . ${ t } ` ) , z [ ` ${ e } / ${ t } ` ] = ! 0 )
} , K = Error ( ) ; function F ( e , t , { key : n } ) { let i = 0 ; const s = e [ n ] , o = { } , r = { }
; for ( let e = 1 ; e <= t . length ; e ++ ) r [ e + i ] = s [ e ] , o [ e + i ] = ! 0 , i += p ( t [ e - 1 ] )
; e [ n ] = r , e [ n ] . _emit = o , e [ n ] . _multi = ! 0 } function Z ( e ) { ( e => {
e . scope && "object" == typeof e . scope && null !== e . scope && ( e . beginScope = e . scope ,
delete e . scope ) } ) ( e ) , "string" == typeof e . beginScope && ( e . beginScope = {
_wrap : e . beginScope } ) , "string" == typeof e . endScope && ( e . endScope = { _wrap : e . endScope
} ) , ( e => { if ( Array . isArray ( e . begin ) ) {
if ( e . skip || e . excludeBegin || e . returnBegin ) throw W ( "skip, excludeBegin, returnBegin not compatible with beginScope: {}" ) ,
K
; if ( "object" != typeof e . beginScope || null === e . beginScope ) throw W ( "beginScope must be object" ) ,
K ; F ( e , e . begin , { key : "beginScope" } ) , e . begin = m ( e . begin , { joinWith : "" } ) } } ) ( e ) , ( e => {
if ( Array . isArray ( e . end ) ) {
if ( e . skip || e . excludeEnd || e . returnEnd ) throw W ( "skip, excludeEnd, returnEnd not compatible with endScope: {}" ) ,
K
; if ( "object" != typeof e . endScope || null === e . endScope ) throw W ( "endScope must be object" ) ,
K ; F ( e , e . end , { key : "endScope" } ) , e . end = m ( e . end , { joinWith : "" } ) } } ) ( e ) } function V ( e ) {
function t ( t , n ) {
return RegExp ( l ( t ) , "m" + ( e . case _insensitive ? "i" : "" ) + ( e . unicodeRegex ? "u" : "" ) + ( n ? "g" : "" ) )
} class n { constructor ( ) {
this . matchIndexes = { } , this . regexes = [ ] , this . matchAt = 1 , this . position = 0 }
addRule ( e , t ) {
t . position = this . position ++ , this . matchIndexes [ this . matchAt ] = t , this . regexes . push ( [ t , e ] ) ,
this . matchAt += p ( e ) + 1 } compile ( ) { 0 === this . regexes . length && ( this . exec = ( ) => null )
; const e = this . regexes . map ( ( e => e [ 1 ] ) ) ; this . matcherRe = t ( m ( e , { joinWith : "|"
} ) , ! 0 ) , this . lastIndex = 0 } exec ( e ) { this . matcherRe . lastIndex = this . lastIndex
; const t = this . matcherRe . exec ( e ) ; if ( ! t ) return null
; const n = t . findIndex ( ( ( e , t ) => t > 0 && void 0 !== e ) ) , i = this . matchIndexes [ n ]
; return t . splice ( 0 , n ) , Object . assign ( t , i ) } } class s { constructor ( ) {
this . rules = [ ] , this . multiRegexes = [ ] ,
this . count = 0 , this . lastIndex = 0 , this . regexIndex = 0 } getMatcher ( e ) {
if ( this . multiRegexes [ e ] ) return this . multiRegexes [ e ] ; const t = new n
; return this . rules . slice ( e ) . forEach ( ( ( [ e , n ] ) => t . addRule ( e , n ) ) ) ,
t . compile ( ) , this . multiRegexes [ e ] = t , t } resumingScanAtSamePosition ( ) {
return 0 !== this . regexIndex } considerAll ( ) { this . regexIndex = 0 } addRule ( e , t ) {
this . rules . push ( [ e , t ] ) , "begin" === t . type && this . count ++ } exec ( e ) {
const t = this . getMatcher ( this . regexIndex ) ; t . lastIndex = this . lastIndex
; let n = t . exec ( e )
; if ( this . resumingScanAtSamePosition ( ) ) if ( n && n . index === this . lastIndex ) ; else {
const t = this . getMatcher ( 0 ) ; t . lastIndex = this . lastIndex + 1 , n = t . exec ( e ) }
return n && ( this . regexIndex += n . position + 1 ,
this . regexIndex === this . count && this . considerAll ( ) ) , n } }
if ( e . compilerExtensions || ( e . compilerExtensions = [ ] ) ,
e . contains && e . contains . includes ( "self" ) ) throw Error ( "ERR: contains `self` is not supported at the top-level of a language. See documentation." )
; return e . classNameAliases = i ( e . classNameAliases || { } ) , function n ( o , r ) { const a = o
; if ( o . isCompiled ) return a
; [ I , B , Z , D ] . forEach ( ( e => e ( o , r ) ) ) , e . compilerExtensions . forEach ( ( e => e ( o , r ) ) ) ,
o . _ _beforeBegin = null , [ T , L , P ] . forEach ( ( e => e ( o , r ) ) ) , o . isCompiled = ! 0 ; let c = null
; return "object" == typeof o . keywords && o . keywords . $pattern && ( o . keywords = Object . assign ( { } , o . keywords ) ,
c = o . keywords . $pattern ,
delete o . keywords . $pattern ) , c = c || /\w+/ , o . keywords && ( o . keywords = $ ( o . keywords , e . case _insensitive ) ) ,
a . keywordPatternRe = t ( c , ! 0 ) ,
r && ( o . begin || ( o . begin = /\B|\b/ ) , a . beginRe = t ( a . begin ) , o . end || o . endsWithParent || ( o . end = /\B|\b/ ) ,
o . end && ( a . endRe = t ( a . end ) ) ,
a . terminatorEnd = l ( a . end ) || "" , o . endsWithParent && r . terminatorEnd && ( a . terminatorEnd += ( o . end ? "|" : "" ) + r . terminatorEnd ) ) ,
o . illegal && ( a . illegalRe = t ( o . illegal ) ) ,
o . contains || ( o . contains = [ ] ) , o . contains = [ ] . concat ( ... o . contains . map ( ( e => ( e => ( e . variants && ! e . cachedVariants && ( e . cachedVariants = e . variants . map ( ( t => i ( e , {
variants : null } , t ) ) ) ) , e . cachedVariants ? e . cachedVariants : q ( e ) ? i ( e , {
starts : e . starts ? i ( e . starts ) : null
} ) : Object . isFrozen ( e ) ? i ( e ) : e ) ) ( "self" === e ? o : e ) ) ) ) , o . contains . forEach ( ( e => { n ( e , a )
} ) ) , o . starts && n ( o . starts , r ) , a . matcher = ( e => { const t = new s
; return e . contains . forEach ( ( e => t . addRule ( e . begin , { rule : e , type : "begin"
} ) ) ) , e . terminatorEnd && t . addRule ( e . terminatorEnd , { type : "end"
} ) , e . illegal && t . addRule ( e . illegal , { type : "illegal" } ) , t } ) ( a ) , a } ( e ) } function q ( e ) {
return ! ! e && ( e . endsWithParent || q ( e . starts ) ) } class J extends Error {
constructor ( e , t ) { super ( e ) , this . name = "HTMLInjectionError" , this . html = t } }
const Y = n , Q = i , ee = Symbol ( "nomatch" ) , te = n => {
const i = Object . create ( null ) , s = Object . create ( null ) , o = [ ] ; let r = ! 0
; const a = "Could not find the language '{}', did you forget to load/include a language module?" , l = {
disableAutodetect : ! 0 , name : "Plain text" , contains : [ ] } ; let p = {
ignoreUnescapedHTML : ! 1 , throwUnescapedHTML : ! 1 , noHighlightRe : /^(no-?highlight)$/i ,
languageDetectRe : /\blang(?:uage)?-([\w-]+)\b/i , classPrefix : "hljs-" ,
cssSelector : "pre code" , languages : null , _ _emitter : c } ; function b ( e ) {
return p . noHighlightRe . test ( e ) } function m ( e , t , n ) { let i = "" , s = ""
; "object" == typeof t ? ( i = e ,
n = t . ignoreIllegals , s = t . language ) : ( G ( "10.7.0" , "highlight(lang, code, ...args) has been deprecated." ) ,
G ( "10.7.0" , "Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277" ) ,
s = e , i = t ) , void 0 === n && ( n = ! 0 ) ; const o = { code : i , language : s } ; N ( "before:highlight" , o )
; const r = o . result ? o . result : E ( o . language , o . code , n )
; return r . code = o . code , N ( "after:highlight" , r ) , r } function E ( e , n , s , o ) {
const c = Object . create ( null ) ; function l ( ) { if ( ! N . keywords ) return void M . addText ( R )
; let e = 0 ; N . keywordPatternRe . lastIndex = 0 ; let t = N . keywordPatternRe . exec ( R ) , n = ""
; for ( ; t ; ) { n += R . substring ( e , t . index )
; const s = _ . case _insensitive ? t [ 0 ] . toLowerCase ( ) : t [ 0 ] , o = ( i = s , N . keywords [ i ] ) ; if ( o ) {
const [ e , i ] = o
; if ( M . addText ( n ) , n = "" , c [ s ] = ( c [ s ] || 0 ) + 1 , c [ s ] <= 7 && ( j += i ) , e . startsWith ( "_" ) ) n += t [ 0 ] ; else {
const n = _ . classNameAliases [ e ] || e ; u ( t [ 0 ] , n ) } } else n += t [ 0 ]
; e = N . keywordPatternRe . lastIndex , t = N . keywordPatternRe . exec ( R ) } var i
; n += R . substring ( e ) , M . addText ( n ) } function g ( ) { null != N . subLanguage ? ( ( ) => {
if ( "" === R ) return ; let e = null ; if ( "string" == typeof N . subLanguage ) {
if ( ! i [ N . subLanguage ] ) return void M . addText ( R )
; e = E ( N . subLanguage , R , ! 0 , S [ N . subLanguage ] ) , S [ N . subLanguage ] = e . _top
} else e = x ( R , N . subLanguage . length ? N . subLanguage : null )
; N . relevance > 0 && ( j += e . relevance ) , M . _ _addSublanguage ( e . _emitter , e . language )
} ) ( ) : l ( ) , R = "" } function u ( e , t ) {
"" !== e && ( M . startScope ( t ) , M . addText ( e ) , M . endScope ( ) ) } function d ( e , t ) { let n = 1
; const i = t . length - 1 ; for ( ; n <= i ; ) { if ( ! e . _emit [ n ] ) { n ++ ; continue }
const i = _ . classNameAliases [ e [ n ] ] || e [ n ] , s = t [ n ] ; i ? u ( s , i ) : ( R = s , l ( ) , R = "" ) , n ++ } }
function h ( e , t ) {
return e . scope && "string" == typeof e . scope && M . openNode ( _ . classNameAliases [ e . scope ] || e . scope ) ,
e . beginScope && ( e . beginScope . _wrap ? ( u ( R , _ . classNameAliases [ e . beginScope . _wrap ] || e . beginScope . _wrap ) ,
R = "" ) : e . beginScope . _multi && ( d ( e . beginScope , t ) , R = "" ) ) , N = Object . create ( e , { parent : {
value : N } } ) , N } function f ( e , n , i ) { let s = ( ( e , t ) => { const n = e && e . exec ( t )
; return n && 0 === n . index } ) ( e . endRe , i ) ; if ( s ) { if ( e [ "on:end" ] ) { const i = new t ( e )
; e [ "on:end" ] ( n , i ) , i . isMatchIgnored && ( s = ! 1 ) } if ( s ) {
for ( ; e . endsParent && e . parent ; ) e = e . parent ; return e } }
if ( e . endsWithParent ) return f ( e . parent , n , i ) } function b ( e ) {
return 0 === N . matcher . regexIndex ? ( R += e [ 0 ] , 1 ) : ( T = ! 0 , 0 ) } function m ( e ) {
const t = e [ 0 ] , i = n . substring ( e . index ) , s = f ( N , e , i ) ; if ( ! s ) return ee ; const o = N
; N . endScope && N . endScope . _wrap ? ( g ( ) ,
u ( t , N . endScope . _wrap ) ) : N . endScope && N . endScope . _multi ? ( g ( ) ,
d ( N . endScope , e ) ) : o . skip ? R += t : ( o . returnEnd || o . excludeEnd || ( R += t ) ,
g ( ) , o . excludeEnd && ( R = t ) ) ; do {
N . scope && M . closeNode ( ) , N . skip || N . subLanguage || ( j += N . relevance ) , N = N . parent
} while ( N !== s . parent ) ; return s . starts && h ( s . starts , e ) , o . returnEnd ? 0 : t . length }
let w = { } ; function y ( i , o ) { const a = o && o [ 0 ] ; if ( R += i , null == a ) return g ( ) , 0
; if ( "begin" === w . type && "end" === o . type && w . index === o . index && "" === a ) {
if ( R += n . slice ( o . index , o . index + 1 ) , ! r ) { const t = Error ( ` 0 width match regex ( ${ e } ) ` )
; throw t . languageName = e , t . badRule = w . rule , t } return 1 }
if ( w = o , "begin" === o . type ) return ( e => {
const n = e [ 0 ] , i = e . rule , s = new t ( i ) , o = [ i . _ _beforeBegin , i [ "on:begin" ] ]
; for ( const t of o ) if ( t && ( t ( e , s ) , s . isMatchIgnored ) ) return b ( n )
; return i . skip ? R += n : ( i . excludeBegin && ( R += n ) ,
g ( ) , i . returnBegin || i . excludeBegin || ( R = n ) ) , h ( i , e ) , i . returnBegin ? 0 : n . length } ) ( o )
; if ( "illegal" === o . type && ! s ) {
const e = Error ( 'Illegal lexeme "' + a + '" for mode "' + ( N . scope || "<unnamed>" ) + '"' )
; throw e . mode = N , e } if ( "end" === o . type ) { const e = m ( o ) ; if ( e !== ee ) return e }
if ( "illegal" === o . type && "" === a ) return 1
; if ( I > 1e5 && I > 3 * o . index ) throw Error ( "potential infinite loop, way more iterations than matches" )
; return R += a , a . length } const _ = O ( e )
; if ( ! _ ) throw W ( a . replace ( "{}" , e ) ) , Error ( 'Unknown language: "' + e + '"' )
; const v = V ( _ ) ; let k = "" , N = o || v ; const S = { } , M = new p . _ _emitter ( p ) ; ( ( ) => { const e = [ ]
; for ( let t = N ; t !== _ ; t = t . parent ) t . scope && e . unshift ( t . scope )
; e . forEach ( ( e => M . openNode ( e ) ) ) } ) ( ) ; let R = "" , j = 0 , A = 0 , I = 0 , T = ! 1 ; try {
if ( _ . _ _emitTokens ) _ . _ _emitTokens ( n , M ) ; else { for ( N . matcher . considerAll ( ) ; ; ) {
I ++ , T ? T = ! 1 : N . matcher . considerAll ( ) , N . matcher . lastIndex = A
; const e = N . matcher . exec ( n ) ; if ( ! e ) break ; const t = y ( n . substring ( A , e . index ) , e )
; A = e . index + t } y ( n . substring ( A ) ) } return M . finalize ( ) , k = M . toHTML ( ) , { language : e ,
value : k , relevance : j , illegal : ! 1 , _emitter : M , _top : N } } catch ( t ) {
if ( t . message && t . message . includes ( "Illegal" ) ) return { language : e , value : Y ( n ) ,
illegal : ! 0 , relevance : 0 , _illegalBy : { message : t . message , index : A ,
context : n . slice ( A - 100 , A + 100 ) , mode : t . mode , resultSoFar : k } , _emitter : M } ; if ( r ) return {
language : e , value : Y ( n ) , illegal : ! 1 , relevance : 0 , errorRaised : t , _emitter : M , _top : N }
; throw t } } function x ( e , t ) { t = t || p . languages || Object . keys ( i ) ; const n = ( e => {
const t = { value : Y ( e ) , illegal : ! 1 , relevance : 0 , _top : l , _emitter : new p . _ _emitter ( p ) }
; return t . _emitter . addText ( e ) , t } ) ( e ) , s = t . filter ( O ) . filter ( k ) . map ( ( t => E ( t , e , ! 1 ) ) )
; s . unshift ( n ) ; const o = s . sort ( ( ( e , t ) => {
if ( e . relevance !== t . relevance ) return t . relevance - e . relevance
; if ( e . language && t . language ) { if ( O ( e . language ) . supersetOf === t . language ) return 1
; if ( O ( t . language ) . supersetOf === e . language ) return - 1 } return 0 } ) ) , [ r , a ] = o , c = r
; return c . secondBest = a , c } function w ( e ) { let t = null ; const n = ( e => {
let t = e . className + " " ; t += e . parentNode ? e . parentNode . className : ""
; const n = p . languageDetectRe . exec ( t ) ; if ( n ) { const t = O ( n [ 1 ] )
; return t || ( X ( a . replace ( "{}" , n [ 1 ] ) ) ,
X ( "Falling back to no-highlight mode for this block." , e ) ) , t ? n [ 1 ] : "no-highlight" }
return t . split ( /\s+/ ) . find ( ( e => b ( e ) || O ( e ) ) ) } ) ( e ) ; if ( b ( n ) ) return
; if ( N ( "before:highlightElement" , { el : e , language : n
} ) , e . dataset . highlighted ) return void console . log ( "Element previously highlighted. To highlight again, first unset `dataset.highlighted`." , e )
; if ( e . children . length > 0 && ( p . ignoreUnescapedHTML || ( console . warn ( "One of your code blocks includes unescaped HTML. This is a potentially serious security risk." ) ,
console . warn ( "https://github.com/highlightjs/highlight.js/wiki/security" ) ,
console . warn ( "The element with unescaped HTML:" ) ,
console . warn ( e ) ) , p . throwUnescapedHTML ) ) throw new J ( "One of your code blocks includes unescaped HTML." , e . innerHTML )
; t = e ; const i = t . textContent , o = n ? m ( i , { language : n , ignoreIllegals : ! 0 } ) : x ( i )
; e . innerHTML = o . value , e . dataset . highlighted = "yes" , ( ( e , t , n ) => { const i = t && s [ t ] || n
; e . classList . add ( "hljs" ) , e . classList . add ( "language-" + i )
} ) ( e , n , o . language ) , e . result = { language : o . language , re : o . relevance ,
relevance : o . relevance } , o . secondBest && ( e . secondBest = {
language : o . secondBest . language , relevance : o . secondBest . relevance
} ) , N ( "after:highlightElement" , { el : e , result : o , text : i } ) } let y = ! 1 ; function _ ( ) {
"loading" !== document . readyState ? document . querySelectorAll ( p . cssSelector ) . forEach ( w ) : y = ! 0
} function O ( e ) { return e = ( e || "" ) . toLowerCase ( ) , i [ e ] || i [ s [ e ] ] }
function v ( e , { languageName : t } ) { "string" == typeof e && ( e = [ e ] ) , e . forEach ( ( e => {
s [ e . toLowerCase ( ) ] = t } ) ) } function k ( e ) { const t = O ( e )
; return t && ! t . disableAutodetect } function N ( e , t ) { const n = e ; o . forEach ( ( e => {
e [ n ] && e [ n ] ( t ) } ) ) }
"undefined" != typeof window && window . addEventListener && window . addEventListener ( "DOMContentLoaded" , ( ( ) => {
y && _ ( ) } ) , ! 1 ) , Object . assign ( n , { highlight : m , highlightAuto : x , highlightAll : _ ,
highlightElement : w ,
highlightBlock : e => ( G ( "10.7.0" , "highlightBlock will be removed entirely in v12.0" ) ,
G ( "10.7.0" , "Please use highlightElement now." ) , w ( e ) ) , configure : e => { p = Q ( p , e ) } ,
initHighlighting : ( ) => {
_ ( ) , G ( "10.6.0" , "initHighlighting() deprecated. Use highlightAll() now." ) } ,
initHighlightingOnLoad : ( ) => {
_ ( ) , G ( "10.6.0" , "initHighlightingOnLoad() deprecated. Use highlightAll() now." )
} , registerLanguage : ( e , t ) => { let s = null ; try { s = t ( n ) } catch ( t ) {
if ( W ( "Language definition for '{}' could not be registered." . replace ( "{}" , e ) ) ,
! r ) throw t ; W ( t ) , s = l }
s . name || ( s . name = e ) , i [ e ] = s , s . rawDefinition = t . bind ( null , n ) , s . aliases && v ( s . aliases , {
languageName : e } ) } , unregisterLanguage : e => { delete i [ e ]
; for ( const t of Object . keys ( s ) ) s [ t ] === e && delete s [ t ] } ,
listLanguages : ( ) => Object . keys ( i ) , getLanguage : O , registerAliases : v ,
autoDetection : k , inherit : Q , addPlugin : e => { ( e => {
e [ "before:highlightBlock" ] && ! e [ "before:highlightElement" ] && ( e [ "before:highlightElement" ] = t => {
e [ "before:highlightBlock" ] ( Object . assign ( { block : t . el } , t ) )
} ) , e [ "after:highlightBlock" ] && ! e [ "after:highlightElement" ] && ( e [ "after:highlightElement" ] = t => {
e [ "after:highlightBlock" ] ( Object . assign ( { block : t . el } , t ) ) } ) } ) ( e ) , o . push ( e ) } ,
removePlugin : e => { const t = o . indexOf ( e ) ; - 1 !== t && o . splice ( t , 1 ) } } ) , n . debugMode = ( ) => {
2025-01-13 09:56:01 +00:00
r = ! 1 } , n . safeMode = ( ) => { r = ! 0 } , n . versionString = "11.10.0" , n . regex = { concat : h ,
2024-06-20 14:10:42 +00:00
lookahead : g , either : f , optional : d , anyNumberOfTimes : u }
; for ( const t in j ) "object" == typeof j [ t ] && e ( j [ t ] ) ; return Object . assign ( n , j ) , n
} , ne = te ( { } ) ; return ne . newInstance = ( ) => te ( { } ) , ne } ( )
2025-01-13 09:56:01 +00:00
; "object" == typeof exports && "undefined" != typeof module && ( module . exports = hljs ) ; /*! `bash` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const s = e . regex , t = { } , n = { begin : /\$\{/ ,
end : /\}/ , contains : [ "self" , { begin : /:-/ , contains : [ t ] } ] } ; Object . assign ( t , {
className : "variable" , variants : [ {
begin : s . concat ( /\$[\w\d#@][\w\d_]*/ , "(?![\\w\\d])(?![$])" ) } , n ] } ) ; const a = {
2025-01-13 09:56:01 +00:00
className : "subst" , begin : /\$\(/ , end : /\)/ , contains : [ e . BACKSLASH _ESCAPE ]
} , i = e . inherit ( e . COMMENT ( ) , { match : [ /(^|\s)/ , /#.*$/ ] , scope : { 2 : "comment" } } ) , c = {
2024-06-20 14:10:42 +00:00
begin : /<<-?\s*(?=\w+)/ , starts : { contains : [ e . END _SAME _AS _BEGIN ( { begin : /(\w+)/ ,
2025-01-13 09:56:01 +00:00
end : /(\w+)/ , className : "string" } ) ] } } , o = { className : "string" , begin : /"/ , end : /"/ ,
contains : [ e . BACKSLASH _ESCAPE , t , a ] } ; a . contains . push ( o ) ; const r = { begin : /\$?\(\(/ ,
2024-06-20 14:10:42 +00:00
end : /\)\)/ , contains : [ { begin : /\d+#[0-9a-f]+/ , className : "number" } , e . NUMBER _MODE , t ]
2025-01-13 09:56:01 +00:00
} , l = e . SHEBANG ( { binary : "(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)" , relevance : 10
} ) , m = { className : "function" , begin : /\w[\w\d_]*\s*\(\s*\)\s*\{/ , returnBegin : ! 0 ,
2024-06-20 14:10:42 +00:00
contains : [ e . inherit ( e . TITLE _MODE , { begin : /\w[\w\d_]*/ } ) ] , relevance : 0 } ; return {
2025-01-13 09:56:01 +00:00
name : "Bash" , aliases : [ "sh" , "zsh" ] , keywords : { $pattern : /\b[a-z][a-z0-9._-]+\b/ ,
2024-06-20 14:10:42 +00:00
keyword : [ "if" , "then" , "else" , "elif" , "fi" , "for" , "while" , "until" , "in" , "do" , "done" , "case" , "esac" , "function" , "select" ] ,
literal : [ "true" , "false" ] ,
2025-01-13 09:56:01 +00:00
built _in : [ "break" , "cd" , "continue" , "eval" , "exec" , "exit" , "export" , "getopts" , "hash" , "pwd" , "readonly" , "return" , "shift" , "test" , "times" , "trap" , "umask" , "unset" , "alias" , "bind" , "builtin" , "caller" , "command" , "declare" , "echo" , "enable" , "help" , "let" , "local" , "logout" , "mapfile" , "printf" , "read" , "readarray" , "source" , "sudo" , "type" , "typeset" , "ulimit" , "unalias" , "set" , "shopt" , "autoload" , "bg" , "bindkey" , "bye" , "cap" , "chdir" , "clone" , "comparguments" , "compcall" , "compctl" , "compdescribe" , "compfiles" , "compgroups" , "compquote" , "comptags" , "comptry" , "compvalues" , "dirs" , "disable" , "disown" , "echotc" , "echoti" , "emulate" , "fc" , "fg" , "float" , "functions" , "getcap" , "getln" , "history" , "integer" , "jobs" , "kill" , "limit" , "log" , "noglob" , "popd" , "print" , "pushd" , "pushln" , "rehash" , "sched" , "setcap" , "setopt" , "stat" , "suspend" , "ttyctl" , "unfunction" , "unhash" , "unlimit" , "unsetopt" , "vared" , "wait" , "whence" , "where" , "which" , "zcompile" , "zformat" , "zftp" , "zle" , "zmodload" , "zparseopts" , "zprof" , "zpty" , "zregexparse" , "zsocket" , "zstyle" , "ztcp" , "chcon" , "chgrp" , "chown" , "chmod" , "cp" , "dd" , "df" , "dir" , "dircolors" , "ln" , "ls" , "mkdir" , "mkfifo" , "mknod" , "mktemp" , "mv" , "realpath" , "rm" , "rmdir" , "shred" , "sync" , "touch" , "truncate" , "vdir" , "b2sum" , "base32" , "base64" , "cat" , "cksum" , "comm" , "csplit" , "cut" , "expand" , "fmt" , "fold" , "head" , "join" , "md5sum" , "nl" , "numfmt" , "od" , "paste" , "ptx" , "pr" , "sha1sum" , "sha224sum" , "sha256sum" , "sha384sum" , "sha512sum" , "shuf" , "sort" , "split" , "sum" , "tac" , "tail" , "tr" , "tsort" , "unexpand" , "uniq" , "wc" , "arch" , "basename" , "chroot" , "date" , "dirname" , "du" , "echo" , "env" , "expr" , "factor" , "groups" , "hostid" , "id" , "link" , "logname" , "nice" , "nohup" , "nproc" , "pathchk" , "pinky" , "printenv" , "printf" , "pwd" , "readlink" , "runcon" , "seq" , "sleep" , "stat" , "stdbuf" , "stty" , "tee" , "test" , "timeout" , "tty" , "uname" , "unlink" , "uptime" , "users" , "who" , "whoami" , "yes" ]
} , contains : [ l , e . SHEBANG ( ) , m , r , i , c , { match : /(\/[a-z._-]+)+/ } , o , { match : /\\"/ } , {
className : "string" , begin : /'/ , end : /'/ } , { match : /\\'/ } , t ] } } } ) ( )
; hljs . registerLanguage ( "bash" , e ) } ) ( ) ; /*! `c` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const n = e . regex , t = e . COMMENT ( "//" , "$" , {
contains : [ { begin : /\\\n/ } ]
2025-01-13 09:56:01 +00:00
} ) , a = "decltype\\(auto\\)" , s = "[a-zA-Z_]\\w*::" , i = "(" + a + "|" + n . optional ( s ) + "[a-zA-Z_]\\w*" + n . optional ( "<[^<>]+>" ) + ")" , r = {
2024-06-20 14:10:42 +00:00
className : "type" , variants : [ { begin : "\\b[a-z\\d_]*_t\\b" } , {
match : /\batomic_[a-z]{3,6}\b/ } ] } , l = { className : "string" , variants : [ {
begin : '(u8?|U|L)?"' , end : '"' , illegal : "\\n" , contains : [ e . BACKSLASH _ESCAPE ] } , {
begin : "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)" ,
end : "'" , illegal : "." } , e . END _SAME _AS _BEGIN ( {
begin : /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/ , end : /\)([^()\\ ]{0,16})"/ } ) ] } , o = {
className : "number" , variants : [ { begin : "\\b(0b[01']+)" } , {
begin : "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"
} , {
begin : "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"
} ] , relevance : 0 } , c = { className : "meta" , begin : /#\s*[a-z]+\b/ , end : /$/ , keywords : {
2025-01-13 09:56:01 +00:00
keyword : "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"
2024-06-20 14:10:42 +00:00
} , contains : [ { begin : /\\\n/ , relevance : 0 } , e . inherit ( l , { className : "string" } ) , {
className : "string" , begin : /<.*?>/ } , t , e . C _BLOCK _COMMENT _MODE ] } , d = {
2025-01-13 09:56:01 +00:00
className : "title" , begin : n . optional ( s ) + e . IDENT _RE , relevance : 0
} , _ = n . optional ( s ) + e . IDENT _RE + "\\s*\\(" , u = {
keyword : [ "asm" , "auto" , "break" , "case" , "continue" , "default" , "do" , "else" , "enum" , "extern" , "for" , "fortran" , "goto" , "if" , "inline" , "register" , "restrict" , "return" , "sizeof" , "typeof" , "typeof_unqual" , "struct" , "switch" , "typedef" , "union" , "volatile" , "while" , "_Alignas" , "_Alignof" , "_Atomic" , "_Generic" , "_Noreturn" , "_Static_assert" , "_Thread_local" , "alignas" , "alignof" , "noreturn" , "static_assert" , "thread_local" , "_Pragma" ] ,
type : [ "float" , "double" , "signed" , "unsigned" , "int" , "short" , "long" , "char" , "void" , "_Bool" , "_BitInt" , "_Complex" , "_Imaginary" , "_Decimal32" , "_Decimal64" , "_Decimal96" , "_Decimal128" , "_Decimal64x" , "_Decimal128x" , "_Float16" , "_Float32" , "_Float64" , "_Float128" , "_Float32x" , "_Float64x" , "_Float128x" , "const" , "static" , "constexpr" , "complex" , "bool" , "imaginary" ] ,
2024-06-20 14:10:42 +00:00
literal : "true false NULL" ,
built _in : "std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"
2025-01-13 09:56:01 +00:00
} , g = [ c , r , t , e . C _BLOCK _COMMENT _MODE , o , l ] , m = { variants : [ { begin : /=/ , end : /;/ } , {
2024-06-20 14:10:42 +00:00
begin : /\(/ , end : /\)/ } , { beginKeywords : "new throw return else" , end : /;/ } ] ,
2025-01-13 09:56:01 +00:00
keywords : u , contains : g . concat ( [ { begin : /\(/ , end : /\)/ , keywords : u ,
contains : g . concat ( [ "self" ] ) , relevance : 0 } ] ) , relevance : 0 } , p = {
begin : "(" + i + "[\\*&\\s]+)+" + _ , returnBegin : ! 0 , end : /[{;=]/ , excludeEnd : ! 0 ,
keywords : u , illegal : /[^\w\s\*&:<>.]/ , contains : [ { begin : a , keywords : u , relevance : 0 } , {
begin : _ , returnBegin : ! 0 , contains : [ e . inherit ( d , { className : "title.function" } ) ] ,
2024-06-20 14:10:42 +00:00
relevance : 0 } , { relevance : 0 , match : /,/ } , { className : "params" , begin : /\(/ , end : /\)/ ,
2025-01-13 09:56:01 +00:00
keywords : u , relevance : 0 , contains : [ t , e . C _BLOCK _COMMENT _MODE , l , o , r , { begin : /\(/ ,
end : /\)/ , keywords : u , relevance : 0 , contains : [ "self" , t , e . C _BLOCK _COMMENT _MODE , l , o , r ]
} ] } , r , t , e . C _BLOCK _COMMENT _MODE , c ] } ; return { name : "C" , aliases : [ "h" ] , keywords : u ,
disableAutodetect : ! 0 , illegal : "</" , contains : [ ] . concat ( m , p , g , [ c , {
2024-06-20 14:10:42 +00:00
begin : e . IDENT _RE + "::" , keywords : u } , { className : "class" ,
beginKeywords : "enum class struct union" , end : /[{;:<>=]/ , contains : [ {
beginKeywords : "final class struct" } , e . TITLE _MODE ] } ] ) , exports : { preprocessor : c ,
2025-01-13 09:56:01 +00:00
strings : l , keywords : u } } } } ) ( ) ; hljs . registerLanguage ( "c" , e ) } ) ( ) ; /*! `cpp` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const t = e . regex , a = e . COMMENT ( "//" , "$" , {
contains : [ { begin : /\\\n/ } ]
} ) , n = "decltype\\(auto\\)" , r = "[a-zA-Z_]\\w*::" , i = "(?!struct)(" + n + "|" + t . optional ( r ) + "[a-zA-Z_]\\w*" + t . optional ( "<[^<>]+>" ) + ")" , s = {
className : "type" , begin : "\\b[a-z\\d_]*_t\\b" } , c = { className : "string" , variants : [ {
begin : '(u8?|U|L)?"' , end : '"' , illegal : "\\n" , contains : [ e . BACKSLASH _ESCAPE ] } , {
begin : "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)" ,
end : "'" , illegal : "." } , e . END _SAME _AS _BEGIN ( {
begin : /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/ , end : /\)([^()\\ ]{0,16})"/ } ) ] } , o = {
2025-01-13 09:56:01 +00:00
className : "number" , variants : [ {
begin : "[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"
2024-06-20 14:10:42 +00:00
} , {
2025-01-13 09:56:01 +00:00
begin : "[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"
2024-06-20 14:10:42 +00:00
} ] , relevance : 0 } , l = { className : "meta" , begin : /#\s*[a-z]+\b/ , end : /$/ , keywords : {
keyword : "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"
} , contains : [ { begin : /\\\n/ , relevance : 0 } , e . inherit ( c , { className : "string" } ) , {
2025-01-13 09:56:01 +00:00
className : "string" , begin : /<.*?>/ } , a , e . C _BLOCK _COMMENT _MODE ] } , u = {
2024-06-20 14:10:42 +00:00
className : "title" , begin : t . optional ( r ) + e . IDENT _RE , relevance : 0
2025-01-13 09:56:01 +00:00
} , d = t . optional ( r ) + e . IDENT _RE + "\\s*\\(" , p = {
2024-06-20 14:10:42 +00:00
type : [ "bool" , "char" , "char16_t" , "char32_t" , "char8_t" , "double" , "float" , "int" , "long" , "short" , "void" , "wchar_t" , "unsigned" , "signed" , "const" , "static" ] ,
keyword : [ "alignas" , "alignof" , "and" , "and_eq" , "asm" , "atomic_cancel" , "atomic_commit" , "atomic_noexcept" , "auto" , "bitand" , "bitor" , "break" , "case" , "catch" , "class" , "co_await" , "co_return" , "co_yield" , "compl" , "concept" , "const_cast|10" , "consteval" , "constexpr" , "constinit" , "continue" , "decltype" , "default" , "delete" , "do" , "dynamic_cast|10" , "else" , "enum" , "explicit" , "export" , "extern" , "false" , "final" , "for" , "friend" , "goto" , "if" , "import" , "inline" , "module" , "mutable" , "namespace" , "new" , "noexcept" , "not" , "not_eq" , "nullptr" , "operator" , "or" , "or_eq" , "override" , "private" , "protected" , "public" , "reflexpr" , "register" , "reinterpret_cast|10" , "requires" , "return" , "sizeof" , "static_assert" , "static_cast|10" , "struct" , "switch" , "synchronized" , "template" , "this" , "thread_local" , "throw" , "transaction_safe" , "transaction_safe_dynamic" , "true" , "try" , "typedef" , "typeid" , "typename" , "union" , "using" , "virtual" , "volatile" , "while" , "xor" , "xor_eq" ] ,
literal : [ "NULL" , "false" , "nullopt" , "nullptr" , "true" ] , built _in : [ "_Pragma" ] ,
_type _hints : [ "any" , "auto_ptr" , "barrier" , "binary_semaphore" , "bitset" , "complex" , "condition_variable" , "condition_variable_any" , "counting_semaphore" , "deque" , "false_type" , "future" , "imaginary" , "initializer_list" , "istringstream" , "jthread" , "latch" , "lock_guard" , "multimap" , "multiset" , "mutex" , "optional" , "ostringstream" , "packaged_task" , "pair" , "promise" , "priority_queue" , "queue" , "recursive_mutex" , "recursive_timed_mutex" , "scoped_lock" , "set" , "shared_future" , "shared_lock" , "shared_mutex" , "shared_timed_mutex" , "shared_ptr" , "stack" , "string_view" , "stringstream" , "timed_mutex" , "thread" , "true_type" , "tuple" , "unique_lock" , "unique_ptr" , "unordered_map" , "unordered_multimap" , "unordered_multiset" , "unordered_set" , "variant" , "vector" , "weak_ptr" , "wstring" , "wstring_view" ]
} , _ = { className : "function.dispatch" , relevance : 0 , keywords : {
_hint : [ "abort" , "abs" , "acos" , "apply" , "as_const" , "asin" , "atan" , "atan2" , "calloc" , "ceil" , "cerr" , "cin" , "clog" , "cos" , "cosh" , "cout" , "declval" , "endl" , "exchange" , "exit" , "exp" , "fabs" , "floor" , "fmod" , "forward" , "fprintf" , "fputs" , "free" , "frexp" , "fscanf" , "future" , "invoke" , "isalnum" , "isalpha" , "iscntrl" , "isdigit" , "isgraph" , "islower" , "isprint" , "ispunct" , "isspace" , "isupper" , "isxdigit" , "labs" , "launder" , "ldexp" , "log" , "log10" , "make_pair" , "make_shared" , "make_shared_for_overwrite" , "make_tuple" , "make_unique" , "malloc" , "memchr" , "memcmp" , "memcpy" , "memset" , "modf" , "move" , "pow" , "printf" , "putchar" , "puts" , "realloc" , "scanf" , "sin" , "sinh" , "snprintf" , "sprintf" , "sqrt" , "sscanf" , "std" , "stderr" , "stdin" , "stdout" , "strcat" , "strchr" , "strcmp" , "strcpy" , "strcspn" , "strlen" , "strncat" , "strncmp" , "strncpy" , "strpbrk" , "strrchr" , "strspn" , "strstr" , "swap" , "tan" , "tanh" , "terminate" , "to_underlying" , "tolower" , "toupper" , "vfprintf" , "visit" , "vprintf" , "vsprintf" ]
} ,
begin : t . concat ( /\b/ , /(?!decltype)/ , /(?!if)/ , /(?!for)/ , /(?!switch)/ , /(?!while)/ , e . IDENT _RE , t . lookahead ( /(<[^<>]+>|)\s*\(/ ) )
2025-01-13 09:56:01 +00:00
} , m = [ _ , l , s , a , e . C _BLOCK _COMMENT _MODE , o , c ] , f = { variants : [ { begin : /=/ , end : /;/ } , {
2024-06-20 14:10:42 +00:00
begin : /\(/ , end : /\)/ } , { beginKeywords : "new throw return else" , end : /;/ } ] ,
keywords : p , contains : m . concat ( [ { begin : /\(/ , end : /\)/ , keywords : p ,
2025-01-13 09:56:01 +00:00
contains : m . concat ( [ "self" ] ) , relevance : 0 } ] ) , relevance : 0 } , g = { className : "function" ,
begin : "(" + i + "[\\*&\\s]+)+" + d , returnBegin : ! 0 , end : /[{;=]/ , excludeEnd : ! 0 ,
2024-06-20 14:10:42 +00:00
keywords : p , illegal : /[^\w\s\*&:<>.]/ , contains : [ { begin : n , keywords : p , relevance : 0 } , {
2025-01-13 09:56:01 +00:00
begin : d , returnBegin : ! 0 , contains : [ u ] , relevance : 0 } , { begin : /::/ , relevance : 0 } , {
2024-06-20 14:10:42 +00:00
begin : /:/ , endsWithParent : ! 0 , contains : [ c , o ] } , { relevance : 0 , match : /,/ } , {
className : "params" , begin : /\(/ , end : /\)/ , keywords : p , relevance : 0 ,
contains : [ a , e . C _BLOCK _COMMENT _MODE , c , o , s , { begin : /\(/ , end : /\)/ , keywords : p ,
relevance : 0 , contains : [ "self" , a , e . C _BLOCK _COMMENT _MODE , c , o , s ] } ]
} , s , a , e . C _BLOCK _COMMENT _MODE , l ] } ; return { name : "C++" ,
aliases : [ "cc" , "c++" , "h++" , "hpp" , "hh" , "hxx" , "cxx" ] , keywords : p , illegal : "</" ,
classNameAliases : { "function.dispatch" : "built_in" } ,
2025-01-13 09:56:01 +00:00
contains : [ ] . concat ( f , g , _ , m , [ l , {
2024-06-20 14:10:42 +00:00
begin : "\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function)\\s*<(?!<)" ,
end : ">" , keywords : p , contains : [ "self" , s ] } , { begin : e . IDENT _RE + "::" , keywords : p } , {
match : [ /\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/ , /\s+/ , /\w+/ ] ,
className : { 1 : "keyword" , 3 : "title.class" } } ] ) } } } ) ( ) ; hljs . registerLanguage ( "cpp" , e )
2025-01-13 09:56:01 +00:00
} ) ( ) ; /*! `csharp` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const n = {
keyword : [ "abstract" , "as" , "base" , "break" , "case" , "catch" , "class" , "const" , "continue" , "do" , "else" , "event" , "explicit" , "extern" , "finally" , "fixed" , "for" , "foreach" , "goto" , "if" , "implicit" , "in" , "interface" , "internal" , "is" , "lock" , "namespace" , "new" , "operator" , "out" , "override" , "params" , "private" , "protected" , "public" , "readonly" , "record" , "ref" , "return" , "scoped" , "sealed" , "sizeof" , "stackalloc" , "static" , "struct" , "switch" , "this" , "throw" , "try" , "typeof" , "unchecked" , "unsafe" , "using" , "virtual" , "void" , "volatile" , "while" ] . concat ( [ "add" , "alias" , "and" , "ascending" , "async" , "await" , "by" , "descending" , "equals" , "from" , "get" , "global" , "group" , "init" , "into" , "join" , "let" , "nameof" , "not" , "notnull" , "on" , "or" , "orderby" , "partial" , "remove" , "select" , "set" , "unmanaged" , "value|0" , "var" , "when" , "where" , "with" , "yield" ] ) ,
built _in : [ "bool" , "byte" , "char" , "decimal" , "delegate" , "double" , "dynamic" , "enum" , "float" , "int" , "long" , "nint" , "nuint" , "object" , "sbyte" , "short" , "string" , "ulong" , "uint" , "ushort" ] ,
literal : [ "default" , "false" , "null" , "true" ] } , a = e . inherit ( e . TITLE _MODE , {
begin : "[a-zA-Z](\\.?\\w)*" } ) , i = { className : "number" , variants : [ {
begin : "\\b(0b[01']+)" } , {
begin : "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)" } , {
begin : "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"
} ] , relevance : 0 } , s = { className : "string" , begin : '@"' , end : '"' , contains : [ { begin : '""' } ]
} , t = e . inherit ( s , { illegal : /\n/ } ) , r = { className : "subst" , begin : /\{/ , end : /\}/ ,
keywords : n } , l = e . inherit ( r , { illegal : /\n/ } ) , c = { className : "string" , begin : /\$"/ ,
end : '"' , illegal : /\n/ , contains : [ { begin : /\{\{/ } , { begin : /\}\}/
} , e . BACKSLASH _ESCAPE , l ] } , o = { className : "string" , begin : /\$@"/ , end : '"' , contains : [ {
begin : /\{\{/ } , { begin : /\}\}/ } , { begin : '""' } , r ] } , d = e . inherit ( o , { illegal : /\n/ ,
contains : [ { begin : /\{\{/ } , { begin : /\}\}/ } , { begin : '""' } , l ] } )
; r . contains = [ o , c , s , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE , i , e . C _BLOCK _COMMENT _MODE ] ,
l . contains = [ d , c , t , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE , i , e . inherit ( e . C _BLOCK _COMMENT _MODE , {
2025-01-13 09:56:01 +00:00
illegal : /\n/ } ) ] ; const g = { variants : [ { className : "string" ,
begin : /"""("*)(?!")(.|\n)*?"""\1/ , relevance : 1
} , o , c , s , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE ] } , E = { begin : "<" , end : ">" ,
contains : [ { beginKeywords : "in out" } , a ]
2024-06-20 14:10:42 +00:00
} , _ = e . IDENT _RE + "(<" + e . IDENT _RE + "(\\s*,\\s*" + e . IDENT _RE + ")*>)?(\\[\\])?" , b = {
begin : "@" + e . IDENT _RE , relevance : 0 } ; return { name : "C#" , aliases : [ "cs" , "c#" ] ,
keywords : n , illegal : /::/ , contains : [ e . COMMENT ( "///" , "$" , { returnBegin : ! 0 ,
contains : [ { className : "doctag" , variants : [ { begin : "///" , relevance : 0 } , {
begin : "\x3c!--|--\x3e" } , { begin : "</?" , end : ">" } ] } ]
} ) , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE , { className : "meta" , begin : "#" ,
end : "$" , keywords : {
keyword : "if else elif endif define undef warning error line region endregion pragma checksum"
} } , g , i , { beginKeywords : "class interface" , relevance : 0 , end : /[{;=]/ ,
illegal : /[^\s:,]/ , contains : [ { beginKeywords : "where class"
} , a , E , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , { beginKeywords : "namespace" ,
relevance : 0 , end : /[{;=]/ , illegal : /[^\s:]/ ,
contains : [ a , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , {
beginKeywords : "record" , relevance : 0 , end : /[{;=]/ , illegal : /[^\s:]/ ,
contains : [ a , E , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , { className : "meta" ,
begin : "^\\s*\\[(?=[\\w])" , excludeBegin : ! 0 , end : "\\]" , excludeEnd : ! 0 , contains : [ {
className : "string" , begin : /"/ , end : /"/ } ] } , {
beginKeywords : "new return throw await else" , relevance : 0 } , { className : "function" ,
begin : "(" + _ + "\\s+)+" + e . IDENT _RE + "\\s*(<[^=]+>\\s*)?\\(" , returnBegin : ! 0 ,
end : /\s*[{;=]/ , excludeEnd : ! 0 , keywords : n , contains : [ {
beginKeywords : "public private protected static internal protected abstract async extern override unsafe virtual new sealed partial" ,
relevance : 0 } , { begin : e . IDENT _RE + "\\s*(<[^=]+>\\s*)?\\(" , returnBegin : ! 0 ,
contains : [ e . TITLE _MODE , E ] , relevance : 0 } , { match : /\(\)/ } , { className : "params" ,
begin : /\(/ , end : /\)/ , excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : n , relevance : 0 ,
contains : [ g , i , e . C _BLOCK _COMMENT _MODE ]
} , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , b ] } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "csharp" , e ) } ) ( ) ; /*! `css` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
2025-01-13 09:56:01 +00:00
; const e = [ "a" , "abbr" , "address" , "article" , "aside" , "audio" , "b" , "blockquote" , "body" , "button" , "canvas" , "caption" , "cite" , "code" , "dd" , "del" , "details" , "dfn" , "div" , "dl" , "dt" , "em" , "fieldset" , "figcaption" , "figure" , "footer" , "form" , "h1" , "h2" , "h3" , "h4" , "h5" , "h6" , "header" , "hgroup" , "html" , "i" , "iframe" , "img" , "input" , "ins" , "kbd" , "label" , "legend" , "li" , "main" , "mark" , "menu" , "nav" , "object" , "ol" , "optgroup" , "option" , "p" , "picture" , "q" , "quote" , "samp" , "section" , "select" , "source" , "span" , "strong" , "summary" , "sup" , "table" , "tbody" , "td" , "textarea" , "tfoot" , "th" , "thead" , "time" , "tr" , "ul" , "var" , "video" , "defs" , "g" , "marker" , "mask" , "pattern" , "svg" , "switch" , "symbol" , "feBlend" , "feColorMatrix" , "feComponentTransfer" , "feComposite" , "feConvolveMatrix" , "feDiffuseLighting" , "feDisplacementMap" , "feFlood" , "feGaussianBlur" , "feImage" , "feMerge" , "feMorphology" , "feOffset" , "feSpecularLighting" , "feTile" , "feTurbulence" , "linearGradient" , "radialGradient" , "stop" , "circle" , "ellipse" , "image" , "line" , "path" , "polygon" , "polyline" , "rect" , "text" , "use" , "textPath" , "tspan" , "foreignObject" , "clipPath" ] , r = [ "any-hover" , "any-pointer" , "aspect-ratio" , "color" , "color-gamut" , "color-index" , "device-aspect-ratio" , "device-height" , "device-width" , "display-mode" , "forced-colors" , "grid" , "height" , "hover" , "inverted-colors" , "monochrome" , "orientation" , "overflow-block" , "overflow-inline" , "pointer" , "prefers-color-scheme" , "prefers-contrast" , "prefers-reduced-motion" , "prefers-reduced-transparency" , "resolution" , "scan" , "scripting" , "update" , "width" , "min-width" , "max-width" , "min-height" , "max-height" ] . sort ( ) . reverse ( ) , t = [ "active" , "any-link" , "blank" , "checked" , "current" , "default" , "defined" , "dir" , "disabled" , "drop" , "empty" , "enabled" , "first" , "first-child" , "first-of-type" , "fullscreen" , "future" , "focus" , "focus-visible" , "focus-within" , "has" , "host" , "host-context" , "hover" , "indeterminate" , "in-range" , "invalid" , "is" , "lang" , "last-child" , "last-of-type" , "left" , "link" , "local-link" , "not" , "nth-child" , "nth-col" , "nth-last-child" , "nth-last-col" , "nth-last-of-type" , "nth-of-type" , "only-child" , "only-of-type" , "optional" , "out-of-range" , "past" , "placeholder-shown" , "read-only" , "read-write" , "required" , "right" , "root" , "scope" , "target" , "target-within" , "user-invalid" , "valid" , "visited" , "where" ] . sort ( ) . reverse ( ) , i = [ "after" , "backdrop" , "before" , "cue" , "cue-region" , "first-letter" , "first-line" , "grammar-error" , "marker" , "part" , "placeholder" , "selection" , "slotted" , "spelling-error" ] . sort ( ) . reverse ( ) , o = [ "accent-color" , "align-content" , "align-items" , "align-self" , "alignment-baseline" , "all" , "animation" , "animation-delay" , "animation-direction" , "animation-duration" , "animation-fill-mode" , "animation-iteration-count" , "animation-name" , "animation-play-state" , "animation-timing-function" , "appearance" , "backface-visibility" , "background" , "background-attachment" , "background-blend-mode" , "background-clip" , "background-color" , "background-image" , "background-origin" , "background-position" , "background-repeat" , "background-size" , "baseline-shift" , "block-size" , "border" , "border-block" , "border-block-color" , "border-block-end" , "border-block-end-color" , "border-block-end-style" , "border-block-end-width" , "border-block-start" , "border-block-start-color" , "border-block-start-style" , "border-block-start-width" , "border-block-style" , "border-block-width" , "border-bottom" , "border-bottom-color" , "border-bottom-left-radius" , "border-bottom-right-radius" , "border-bottom-style" , "border-bottom-width" , "border-collapse" , "border-color" , "border-image" , "border-image-outset" , "border-image-repeat" , "border-image-slice" , "border-image-source" , "border-image-width" , "border-inline" , "border-inline-color" , "border-inline-end" , "border-inline-end-color" , "border-inline-end-style" , "border-inline-end-width" , "border-inline-start" , "border-inline-start-color" , "border-inline-start-style" , "border-inline-start-width" , "border-inline-style" , "border-inline-width" , "border-left" , "border-left-color" , "border-left-style" , "border-left-width" , "border-radius" , "border-right" , "border-end-end-radius" , "border-end-start-radius" , "border-right-color" , "border-right-style" , "border-right-width" , "border-spacing" , "border-start-end-radius" , "border-start-start-radius" , "border-style"
2024-06-20 14:10:42 +00:00
; return n => { const a = n . regex , l = ( e => ( { IMPORTANT : { scope : "meta" , begin : "!important" } ,
BLOCK _COMMENT : e . C _BLOCK _COMMENT _MODE , HEXCOLOR : { scope : "number" ,
begin : /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/ } , FUNCTION _DISPATCH : {
className : "built_in" , begin : /[\w-]+(?=\()/ } , ATTRIBUTE _SELECTOR _MODE : {
scope : "selector-attr" , begin : /\[/ , end : /\]/ , illegal : "$" ,
contains : [ e . APOS _STRING _MODE , e . QUOTE _STRING _MODE ] } , CSS _NUMBER _MODE : {
scope : "number" ,
begin : e . NUMBER _RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?" ,
relevance : 0 } , CSS _VARIABLE : { className : "attr" , begin : /--[A-Za-z_][A-Za-z0-9_-]*/ }
} ) ) ( n ) , s = [ n . APOS _STRING _MODE , n . QUOTE _STRING _MODE ] ; return { name : "CSS" ,
case _insensitive : ! 0 , illegal : /[=|'\$]/ , keywords : { keyframePosition : "from to" } ,
classNameAliases : { keyframePosition : "selector-tag" } , contains : [ l . BLOCK _COMMENT , {
begin : /-(webkit|moz|ms|o)-(?=[a-z])/ } , l . CSS _NUMBER _MODE , {
className : "selector-id" , begin : /#[A-Za-z0-9_-]+/ , relevance : 0 } , {
className : "selector-class" , begin : "\\.[a-zA-Z-][a-zA-Z0-9_-]*" , relevance : 0
} , l . ATTRIBUTE _SELECTOR _MODE , { className : "selector-pseudo" , variants : [ {
2025-01-13 09:56:01 +00:00
begin : ":(" + t . join ( "|" ) + ")" } , { begin : ":(:)?(" + i . join ( "|" ) + ")" } ] } , l . CSS _VARIABLE , {
2024-06-20 14:10:42 +00:00
className : "attribute" , begin : "\\b(" + o . join ( "|" ) + ")\\b" } , { begin : /:/ , end : /[;}{]/ ,
contains : [ l . BLOCK _COMMENT , l . HEXCOLOR , l . IMPORTANT , l . CSS _NUMBER _MODE , ... s , {
begin : /(url|data-uri)\(/ , end : /\)/ , relevance : 0 , keywords : { built _in : "url data-uri"
} , contains : [ ... s , { className : "string" , begin : /[^)]/ , endsWithParent : ! 0 ,
excludeEnd : ! 0 } ] } , l . FUNCTION _DISPATCH ] } , { begin : a . lookahead ( /@/ ) , end : "[{;]" ,
relevance : 0 , illegal : /:/ , contains : [ { className : "keyword" , begin : /@-?\w[\w]*(-\w+)*/
} , { begin : /\s/ , endsWithParent : ! 0 , excludeEnd : ! 0 , relevance : 0 , keywords : {
2025-01-13 09:56:01 +00:00
$pattern : /[a-z-]+/ , keyword : "and or not only" , attribute : r . join ( " " ) } , contains : [ {
2024-06-20 14:10:42 +00:00
begin : /[a-z-]+(?=:)/ , className : "attribute" } , ... s , l . CSS _NUMBER _MODE ] } ] } , {
className : "selector-tag" , begin : "\\b(" + e . join ( "|" ) + ")\\b" } ] } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "css" , e ) } ) ( ) ; /*! `diff` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const a = e . regex ; return { name : "Diff" ,
aliases : [ "patch" ] , contains : [ { className : "meta" , relevance : 10 ,
match : a . either ( /^@@ +-\d+,\d+ +\+\d+,\d+ +@@/ , /^\*\*\* +\d+,\d+ +\*\*\*\*$/ , /^--- +\d+,\d+ +----$/ )
} , { className : "comment" , variants : [ {
begin : a . either ( /Index: / , /^index/ , /={3,}/ , /^-{3}/ , /^\*{3} / , /^\+{3}/ , /^diff --git/ ) ,
end : /$/ } , { match : /^\*{15}$/ } ] } , { className : "addition" , begin : /^\+/ , end : /$/ } , {
className : "deletion" , begin : /^-/ , end : /$/ } , { className : "addition" , begin : /^!/ ,
2025-01-13 09:56:01 +00:00
end : /$/ } ] } } } ) ( ) ; hljs . registerLanguage ( "diff" , e ) } ) ( ) ; /*! `go` grammar compiled for Highlight.js 11.10.0 */
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const a = {
2024-06-20 14:10:42 +00:00
keyword : [ "break" , "case" , "chan" , "const" , "continue" , "default" , "defer" , "else" , "fallthrough" , "for" , "func" , "go" , "goto" , "if" , "import" , "interface" , "map" , "package" , "range" , "return" , "select" , "struct" , "switch" , "type" , "var" ] ,
type : [ "bool" , "byte" , "complex64" , "complex128" , "error" , "float32" , "float64" , "int8" , "int16" , "int32" , "int64" , "string" , "uint8" , "uint16" , "uint32" , "uint64" , "int" , "uint" , "uintptr" , "rune" ] ,
literal : [ "true" , "false" , "iota" , "nil" ] ,
built _in : [ "append" , "cap" , "close" , "complex" , "copy" , "imag" , "len" , "make" , "new" , "panic" , "print" , "println" , "real" , "recover" , "delete" ]
2025-01-13 09:56:01 +00:00
} ; return { name : "Go" , aliases : [ "golang" ] , keywords : a , illegal : "</" ,
2024-06-20 14:10:42 +00:00
contains : [ e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE , { className : "string" ,
variants : [ e . QUOTE _STRING _MODE , e . APOS _STRING _MODE , { begin : "`" , end : "`" } ] } , {
2025-01-13 09:56:01 +00:00
className : "number" , variants : [ {
match : /-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/ , relevance : 0
} , {
match : /-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/ ,
relevance : 0 } , { match : /-?\b0[oO](_?[0-7])*i?/ , relevance : 0 } , {
match : /-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/ , relevance : 0 } , {
match : /-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/ , relevance : 0 } ] } , {
begin : /:=/ } , { className : "function" , beginKeywords : "func" , end : "\\s*(\\{|$)" ,
excludeEnd : ! 0 , contains : [ e . TITLE _MODE , { className : "params" , begin : /\(/ , end : /\)/ ,
endsParent : ! 0 , keywords : a , illegal : /["']/ } ] } ] } } } ) ( ) ; hljs . registerLanguage ( "go" , e )
} ) ( ) ; /*! `graphql` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const a = e . regex ; return { name : "GraphQL" ,
aliases : [ "gql" ] , case _insensitive : ! 0 , disableAutodetect : ! 1 , keywords : {
keyword : [ "query" , "mutation" , "subscription" , "type" , "input" , "schema" , "directive" , "interface" , "union" , "scalar" , "fragment" , "enum" , "on" ] ,
literal : [ "true" , "false" , "null" ] } ,
contains : [ e . HASH _COMMENT _MODE , e . QUOTE _STRING _MODE , e . NUMBER _MODE , {
scope : "punctuation" , match : /[.]{3}/ , relevance : 0 } , { scope : "punctuation" ,
begin : /[\!\(\)\:\=\[\]\{\|\}]{1}/ , relevance : 0 } , { scope : "variable" , begin : /\$/ ,
end : /\W/ , excludeEnd : ! 0 , relevance : 0 } , { scope : "meta" , match : /@\w+/ , excludeEnd : ! 0 } , {
scope : "symbol" , begin : a . concat ( /[_A-Za-z][_0-9A-Za-z]*/ , a . lookahead ( /\s*:/ ) ) ,
relevance : 0 } ] , illegal : [ /[;<']/ , /BEGIN/ ] } } } ) ( ) ; hljs . registerLanguage ( "graphql" , e )
2025-01-13 09:56:01 +00:00
} ) ( ) ; /*! `ini` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const n = e . regex , a = { className : "number" ,
relevance : 0 , variants : [ { begin : /([+-]+)?[\d]+_[\d_]+/ } , { begin : e . NUMBER _RE } ]
} , s = e . COMMENT ( ) ; s . variants = [ { begin : /;/ , end : /$/ } , { begin : /#/ , end : /$/ } ] ; const i = {
className : "variable" , variants : [ { begin : /\$[\w\d"][\w\d_]*/ } , { begin : /\$\{(.*?)\}/
} ] } , t = { className : "literal" , begin : /\bon|off|true|false|yes|no\b/ } , r = {
className : "string" , contains : [ e . BACKSLASH _ESCAPE ] , variants : [ { begin : "'''" ,
end : "'''" , relevance : 10 } , { begin : '"""' , end : '"""' , relevance : 10 } , { begin : '"' , end : '"'
} , { begin : "'" , end : "'" } ] } , l = { begin : /\[/ , end : /\]/ , contains : [ s , t , i , r , a , "self" ] ,
relevance : 0 } , c = n . either ( /[A-Za-z0-9_-]+/ , /"(\\"|[^"])*"/ , /'[^']*'/ ) ; return {
name : "TOML, also INI" , aliases : [ "toml" ] , case _insensitive : ! 0 , illegal : /\S/ ,
contains : [ s , { className : "section" , begin : /\[+/ , end : /\]+/ } , {
begin : n . concat ( c , "(\\s*\\.\\s*" , c , ")*" , n . lookahead ( /\s*=\s*[^#\s]/ ) ) ,
className : "attr" , starts : { end : /$/ , contains : [ s , l , t , i , r , a ] } } ] } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "ini" , e ) } ) ( ) ; /*! `java` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
; var e = "[0-9](_*[0-9])*" , a = ` \\ .( ${ e } ) ` , n = "[0-9a-fA-F](_*[0-9a-fA-F])*" , s = {
className : "number" , variants : [ {
begin : ` ( \\ b( ${ e } )(( ${ a } )| \\ .)?|( ${ a } ))[eE][+-]?( ${ e } )[fFdD]? \\ b ` } , {
begin : ` \\ b( ${ e } )(( ${ a } )[fFdD]? \\ b| \\ .([fFdD] \\ b)?) ` } , { begin : ` ( ${ a } )[fFdD]? \\ b `
} , { begin : ` \\ b( ${ e } )[fFdD] \\ b ` } , {
begin : ` \\ b0[xX](( ${ n } ) \\ .?|( ${ n } )? \\ .( ${ n } ))[pP][+-]?( ${ e } )[fFdD]? \\ b ` } , {
begin : "\\b(0|[1-9](_*[0-9])*)[lL]?\\b" } , { begin : ` \\ b0[xX]( ${ n } )[lL]? \\ b ` } , {
begin : "\\b0(_*[0-7])*[lL]?\\b" } , { begin : "\\b0[bB][01](_*[01])*[lL]?\\b" } ] ,
relevance : 0 } ; function t ( e , a , n ) { return - 1 === n ? "" : e . replace ( a , ( s => t ( e , a , n - 1 ) ) ) }
return e => {
const a = e . regex , n = "[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*" , i = n + t ( "(?:<" + n + "~~~(?:\\s*,\\s*" + n + "~~~)*>)?" , /~~~/g , 2 ) , r = {
2025-01-13 09:56:01 +00:00
keyword : [ "synchronized" , "abstract" , "private" , "var" , "static" , "if" , "const " , "for" , "while" , "strictfp" , "finally" , "protected" , "import" , "native" , "final" , "void" , "enum" , "else" , "break" , "transient" , "catch" , "instanceof" , "volatile" , "case" , "assert" , "package" , "default" , "public" , "try" , "switch" , "continue" , "throws" , "protected" , "public" , "private" , "module" , "requires" , "exports" , "do" , "sealed" , "yield" , "permits" , "goto" ] ,
2024-06-20 14:10:42 +00:00
literal : [ "false" , "true" , "null" ] ,
type : [ "char" , "boolean" , "long" , "float" , "int" , "byte" , "short" , "double" ] ,
built _in : [ "super" , "this" ] } , l = { className : "meta" , begin : "@" + n , contains : [ {
begin : /\(/ , end : /\)/ , contains : [ "self" ] } ] } , c = { className : "params" , begin : /\(/ ,
end : /\)/ , keywords : r , relevance : 0 , contains : [ e . C _BLOCK _COMMENT _MODE ] , endsParent : ! 0 }
; return { name : "Java" , aliases : [ "jsp" ] , keywords : r , illegal : /<\/|#/ ,
contains : [ e . COMMENT ( "/\\*\\*" , "\\*/" , { relevance : 0 , contains : [ { begin : /\w+@/ ,
relevance : 0 } , { className : "doctag" , begin : "@[A-Za-z]+" } ] } ) , {
begin : /import java\.[a-z]+\./ , keywords : "import" , relevance : 2
} , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE , { begin : /"""/ , end : /"""/ ,
className : "string" , contains : [ e . BACKSLASH _ESCAPE ]
} , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE , {
match : [ /\b(?:class|interface|enum|extends|implements|new)/ , /\s+/ , n ] , className : {
1 : "keyword" , 3 : "title.class" } } , { match : /non-sealed/ , scope : "keyword" } , {
begin : [ a . concat ( /(?!else)/ , n ) , /\s+/ , n , /\s+/ , /=(?!=)/ ] , className : { 1 : "type" ,
3 : "variable" , 5 : "operator" } } , { begin : [ /record/ , /\s+/ , n ] , className : { 1 : "keyword" ,
3 : "title.class" } , contains : [ c , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , {
beginKeywords : "new throw return else" , relevance : 0 } , {
begin : [ "(?:" + i + "\\s+)" , e . UNDERSCORE _IDENT _RE , /\s*(?=\()/ ] , className : {
2 : "title.function" } , keywords : r , contains : [ { className : "params" , begin : /\(/ ,
end : /\)/ , keywords : r , relevance : 0 ,
contains : [ l , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE , s , e . C _BLOCK _COMMENT _MODE ]
} , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , s , l ] } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "java" , e ) } ) ( ) ; /*! `javascript` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
; const e = "[A-Za-z$_][0-9A-Za-z$_]*" , n = [ "as" , "in" , "of" , "if" , "for" , "while" , "finally" , "var" , "new" , "function" , "do" , "return" , "void" , "else" , "break" , "catch" , "instanceof" , "with" , "throw" , "case" , "default" , "try" , "switch" , "continue" , "typeof" , "delete" , "let" , "yield" , "const" , "class" , "debugger" , "async" , "await" , "static" , "import" , "from" , "export" , "extends" ] , a = [ "true" , "false" , "null" , "undefined" , "NaN" , "Infinity" ] , t = [ "Object" , "Function" , "Boolean" , "Symbol" , "Math" , "Date" , "Number" , "BigInt" , "String" , "RegExp" , "Array" , "Float32Array" , "Float64Array" , "Int8Array" , "Uint8Array" , "Uint8ClampedArray" , "Int16Array" , "Int32Array" , "Uint16Array" , "Uint32Array" , "BigInt64Array" , "BigUint64Array" , "Set" , "Map" , "WeakSet" , "WeakMap" , "ArrayBuffer" , "SharedArrayBuffer" , "Atomics" , "DataView" , "JSON" , "Promise" , "Generator" , "GeneratorFunction" , "AsyncFunction" , "Reflect" , "Proxy" , "Intl" , "WebAssembly" ] , s = [ "Error" , "EvalError" , "InternalError" , "RangeError" , "ReferenceError" , "SyntaxError" , "TypeError" , "URIError" ] , r = [ "setInterval" , "setTimeout" , "clearInterval" , "clearTimeout" , "require" , "exports" , "eval" , "isFinite" , "isNaN" , "parseFloat" , "parseInt" , "decodeURI" , "decodeURIComponent" , "encodeURI" , "encodeURIComponent" , "escape" , "unescape" ] , c = [ "arguments" , "this" , "super" , "console" , "window" , "document" , "localStorage" , "sessionStorage" , "module" , "global" ] , i = [ ] . concat ( r , t , s )
; return o => { const l = o . regex , b = e , d = { begin : /<[A-Za-z0-9\\._:-]+/ ,
end : /\/[A-Za-z0-9\\._:-]+>|\/>/ , isTrulyOpeningTag : ( e , n ) => {
const a = e [ 0 ] . length + e . index , t = e . input [ a ]
; if ( "<" === t || "," === t ) return void n . ignoreMatch ( ) ; let s
; ">" === t && ( ( ( e , { after : n } ) => { const a = "</" + e [ 0 ] . slice ( 1 )
; return - 1 !== e . input . indexOf ( a , n ) } ) ( e , { after : a } ) || n . ignoreMatch ( ) )
; const r = e . input . substring ( a )
; ( ( s = r . match ( /^\s*=/ ) ) || ( s = r . match ( /^\s+extends\s+/ ) ) && 0 === s . index ) && n . ignoreMatch ( )
} } , g = { $pattern : e , keyword : n , literal : a , built _in : i , "variable.language" : c
} , u = "[0-9](_?[0-9])*" , m = ` \\ .( ${ u } ) ` , E = "0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*" , A = {
className : "number" , variants : [ {
begin : ` ( \\ b( ${ E } )(( ${ m } )| \\ .)?|( ${ m } ))[eE][+-]?( ${ u } ) \\ b ` } , {
begin : ` \\ b( ${ E } ) \\ b(( ${ m } ) \\ b| \\ .)?|( ${ m } ) \\ b ` } , {
begin : "\\b(0|[1-9](_?[0-9])*)n\\b" } , {
begin : "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" } , {
begin : "\\b0[bB][0-1](_?[0-1])*n?\\b" } , { begin : "\\b0[oO][0-7](_?[0-7])*n?\\b" } , {
begin : "\\b0[0-7]+n?\\b" } ] , relevance : 0 } , y = { className : "subst" , begin : "\\$\\{" ,
2025-01-13 09:56:01 +00:00
end : "\\}" , keywords : g , contains : [ ] } , h = { begin : ".?html`" , end : "" , starts : { end : "`" ,
2024-06-20 14:10:42 +00:00
returnEnd : ! 1 , contains : [ o . BACKSLASH _ESCAPE , y ] , subLanguage : "xml" } } , N = {
2025-01-13 09:56:01 +00:00
begin : ".?css`" , end : "" , starts : { end : "`" , returnEnd : ! 1 ,
contains : [ o . BACKSLASH _ESCAPE , y ] , subLanguage : "css" } } , _ = { begin : ".?gql`" , end : "" ,
2024-06-20 14:10:42 +00:00
starts : { end : "`" , returnEnd : ! 1 , contains : [ o . BACKSLASH _ESCAPE , y ] ,
subLanguage : "graphql" } } , f = { className : "string" , begin : "`" , end : "`" ,
2025-01-13 09:56:01 +00:00
contains : [ o . BACKSLASH _ESCAPE , y ] } , p = { className : "comment" ,
2024-06-20 14:10:42 +00:00
variants : [ o . COMMENT ( /\/\*\*(?!\/)/ , "\\*/" , { relevance : 0 , contains : [ {
begin : "(?=@[A-Za-z]+)" , relevance : 0 , contains : [ { className : "doctag" ,
begin : "@[A-Za-z]+" } , { className : "type" , begin : "\\{" , end : "\\}" , excludeEnd : ! 0 ,
excludeBegin : ! 0 , relevance : 0 } , { className : "variable" , begin : b + "(?=\\s*(-)|$)" ,
endsParent : ! 0 , relevance : 0 } , { begin : /(?=[^\n])\s/ , relevance : 0 } ] } ]
} ) , o . C _BLOCK _COMMENT _MODE , o . C _LINE _COMMENT _MODE ]
2025-01-13 09:56:01 +00:00
} , v = [ o . APOS _STRING _MODE , o . QUOTE _STRING _MODE , h , N , _ , f , { match : /\$\d+/ } , A ]
; y . contains = v . concat ( { begin : /\{/ , end : /\}/ , keywords : g , contains : [ "self" ] . concat ( v )
} ) ; const S = [ ] . concat ( p , y . contains ) , w = S . concat ( [ { begin : /(\s*)\(/ , end : /\)/ ,
keywords : g , contains : [ "self" ] . concat ( S ) } ] ) , R = { className : "params" , begin : /(\s*)\(/ ,
end : /\)/ , excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : g , contains : w } , O = { variants : [ {
2024-06-20 14:10:42 +00:00
match : [ /class/ , /\s+/ , b , /\s+/ , /extends/ , /\s+/ , l . concat ( b , "(" , l . concat ( /\./ , b ) , ")*" ) ] ,
scope : { 1 : "keyword" , 3 : "title.class" , 5 : "keyword" , 7 : "title.class.inherited" } } , {
match : [ /class/ , /\s+/ , b ] , scope : { 1 : "keyword" , 3 : "title.class" } } ] } , k = { relevance : 0 ,
match : l . either ( /\bJSON/ , /\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/ , /\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/ , /\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/ ) ,
className : "title.class" , keywords : { _ : [ ... t , ... s ] } } , I = { variants : [ {
match : [ /function/ , /\s+/ , b , /(?=\s*\()/ ] } , { match : [ /function/ , /\s*(?=\()/ ] } ] ,
className : { 1 : "keyword" , 3 : "title.function" } , label : "func.def" , contains : [ R ] ,
illegal : /%/ } , x = {
2025-01-13 09:56:01 +00:00
match : l . concat ( /\b/ , ( T = [ ... r , "super" , "import" ] . map ( ( e => e + "\\s*\\(" ) ) ,
l . concat ( "(?!" , T . join ( "|" ) , ")" ) ) , b , l . lookahead ( /\s*\(/ ) ) ,
2024-06-20 14:10:42 +00:00
className : "title.function" , relevance : 0 } ; var T ; const C = {
begin : l . concat ( /\./ , l . lookahead ( l . concat ( b , /(?![0-9A-Za-z$_(])/ ) ) ) , end : b ,
excludeBegin : ! 0 , keywords : "prototype" , className : "property" , relevance : 0 } , M = {
match : [ /get|set/ , /\s+/ , b , /(?=\()/ ] , className : { 1 : "keyword" , 3 : "title.function" } ,
contains : [ { begin : /\(\)/ } , R ]
} , B = "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + o . UNDERSCORE _IDENT _RE + ")\\s*=>" , $ = {
match : [ /const|var|let/ , /\s+/ , b , /\s*/ , /=\s*/ , /(async\s*)?/ , l . lookahead ( B ) ] ,
keywords : "async" , className : { 1 : "keyword" , 3 : "title.function" } , contains : [ R ] }
; return { name : "JavaScript" , aliases : [ "js" , "jsx" , "mjs" , "cjs" ] , keywords : g , exports : {
PARAMS _CONTAINS : w , CLASS _REFERENCE : k } , illegal : /#(?![$_A-z])/ ,
contains : [ o . SHEBANG ( { label : "shebang" , binary : "node" , relevance : 5 } ) , {
label : "use_strict" , className : "meta" , relevance : 10 ,
begin : /^\s*['"]use (strict|asm)['"]/
2025-01-13 09:56:01 +00:00
} , o . APOS _STRING _MODE , o . QUOTE _STRING _MODE , h , N , _ , f , p , { match : /\$\d+/ } , A , k , {
2024-06-20 14:10:42 +00:00
className : "attr" , begin : b + l . lookahead ( ":" ) , relevance : 0 } , $ , {
begin : "(" + o . RE _STARTERS _RE + "|\\b(case|return|throw)\\b)\\s*" ,
2025-01-13 09:56:01 +00:00
keywords : "return throw case" , relevance : 0 , contains : [ p , o . REGEXP _MODE , {
2024-06-20 14:10:42 +00:00
className : "function" , begin : B , returnBegin : ! 0 , end : "\\s*=>" , contains : [ {
className : "params" , variants : [ { begin : o . UNDERSCORE _IDENT _RE , relevance : 0 } , {
2025-01-13 09:56:01 +00:00
className : null , begin : /\(\s*\)/ , skip : ! 0 } , { begin : /(\s*)\(/ , end : /\)/ ,
excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : g , contains : w } ] } ] } , { begin : /,/ , relevance : 0
} , { match : /\s+/ , relevance : 0 } , { variants : [ { begin : "<>" , end : "</>" } , {
2024-06-20 14:10:42 +00:00
match : /<[A-Za-z0-9\\._:-]+\s*\/>/ } , { begin : d . begin ,
"on:begin" : d . isTrulyOpeningTag , end : d . end } ] , subLanguage : "xml" , contains : [ {
begin : d . begin , end : d . end , skip : ! 0 , contains : [ "self" ] } ] } ] } , I , {
beginKeywords : "while if switch catch for" } , {
begin : "\\b(?!function)" + o . UNDERSCORE _IDENT _RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{" ,
returnBegin : ! 0 , label : "func.def" , contains : [ R , o . inherit ( o . TITLE _MODE , { begin : b ,
className : "title.function" } ) ] } , { match : /\.\.\./ , relevance : 0 } , C , { match : "\\$" + b ,
relevance : 0 } , { match : [ /\bconstructor(?=\s*\()/ ] , className : { 1 : "title.function" } ,
contains : [ R ] } , x , { relevance : 0 , match : /\b[A-Z][A-Z_0-9]+\b/ ,
className : "variable.constant" } , O , M , { match : /\$[(.]/ } ] } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "javascript" , e ) } ) ( ) ; /*! `json` grammar compiled for Highlight.js 11.10.0 */
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const a = [ "true" , "false" , "null" ] , s = {
scope : "literal" , beginKeywords : a . join ( " " ) } ; return { name : "JSON" , aliases : [ "jsonc" ] ,
keywords : { literal : a } , contains : [ { className : "attr" ,
begin : /"(\\.|[^\\"\r\n])*"(?=\s*:)/ , relevance : 1.01 } , { match : /[{}[\],:]/ ,
className : "punctuation" , relevance : 0
} , e . QUOTE _STRING _MODE , s , e . C _NUMBER _MODE , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] ,
illegal : "\\S" } } } ) ( ) ; hljs . registerLanguage ( "json" , e ) } ) ( ) ; /*! `kotlin` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
; var e = "[0-9](_*[0-9])*" , n = ` \\ .( ${ e } ) ` , a = "[0-9a-fA-F](_*[0-9a-fA-F])*" , i = {
className : "number" , variants : [ {
begin : ` ( \\ b( ${ e } )(( ${ n } )| \\ .)?|( ${ n } ))[eE][+-]?( ${ e } )[fFdD]? \\ b ` } , {
begin : ` \\ b( ${ e } )(( ${ n } )[fFdD]? \\ b| \\ .([fFdD] \\ b)?) ` } , { begin : ` ( ${ n } )[fFdD]? \\ b `
} , { begin : ` \\ b( ${ e } )[fFdD] \\ b ` } , {
begin : ` \\ b0[xX](( ${ a } ) \\ .?|( ${ a } )? \\ .( ${ a } ))[pP][+-]?( ${ e } )[fFdD]? \\ b ` } , {
begin : "\\b(0|[1-9](_*[0-9])*)[lL]?\\b" } , { begin : ` \\ b0[xX]( ${ a } )[lL]? \\ b ` } , {
begin : "\\b0(_*[0-7])*[lL]?\\b" } , { begin : "\\b0[bB][01](_*[01])*[lL]?\\b" } ] ,
relevance : 0 } ; return e => { const n = {
keyword : "abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual" ,
built _in : "Byte Short Char Int Long Boolean Float Double Void Unit Nothing" ,
literal : "true false null" } , a = { className : "symbol" , begin : e . UNDERSCORE _IDENT _RE + "@"
} , s = { className : "subst" , begin : /\$\{/ , end : /\}/ , contains : [ e . C _NUMBER _MODE ] } , t = {
className : "variable" , begin : "\\$" + e . UNDERSCORE _IDENT _RE } , r = { className : "string" ,
variants : [ { begin : '"""' , end : '"""(?=[^"])' , contains : [ t , s ] } , { begin : "'" , end : "'" ,
illegal : /\n/ , contains : [ e . BACKSLASH _ESCAPE ] } , { begin : '"' , end : '"' , illegal : /\n/ ,
contains : [ e . BACKSLASH _ESCAPE , t , s ] } ] } ; s . contains . push ( r ) ; const l = {
className : "meta" ,
begin : "@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*" + e . UNDERSCORE _IDENT _RE + ")?"
} , c = { className : "meta" , begin : "@" + e . UNDERSCORE _IDENT _RE , contains : [ { begin : /\(/ ,
end : /\)/ , contains : [ e . inherit ( r , { className : "string" } ) , "self" ] } ]
} , o = i , b = e . COMMENT ( "/\\*" , "\\*/" , { contains : [ e . C _BLOCK _COMMENT _MODE ] } ) , E = {
variants : [ { className : "type" , begin : e . UNDERSCORE _IDENT _RE } , { begin : /\(/ , end : /\)/ ,
contains : [ ] } ] } , d = E ; return d . variants [ 1 ] . contains = [ E ] , E . variants [ 1 ] . contains = [ d ] ,
{ name : "Kotlin" , aliases : [ "kt" , "kts" ] , keywords : n ,
contains : [ e . COMMENT ( "/\\*\\*" , "\\*/" , { relevance : 0 , contains : [ { className : "doctag" ,
begin : "@[A-Za-z]+" } ] } ) , e . C _LINE _COMMENT _MODE , b , { className : "keyword" ,
begin : /\b(break|continue|return|this)\b/ , starts : { contains : [ { className : "symbol" ,
begin : /@\w+/ } ] } } , a , l , c , { className : "function" , beginKeywords : "fun" , end : "[(]|$" ,
returnBegin : ! 0 , excludeEnd : ! 0 , keywords : n , relevance : 5 , contains : [ {
begin : e . UNDERSCORE _IDENT _RE + "\\s*\\(" , returnBegin : ! 0 , relevance : 0 ,
contains : [ e . UNDERSCORE _TITLE _MODE ] } , { className : "type" , begin : /</ , end : />/ ,
keywords : "reified" , relevance : 0 } , { className : "params" , begin : /\(/ , end : /\)/ ,
endsParent : ! 0 , keywords : n , relevance : 0 , contains : [ { begin : /:/ , end : /[=,\/]/ ,
endsWithParent : ! 0 , contains : [ E , e . C _LINE _COMMENT _MODE , b ] , relevance : 0
} , e . C _LINE _COMMENT _MODE , b , l , c , r , e . C _NUMBER _MODE ] } , b ] } , {
begin : [ /class|interface|trait/ , /\s+/ , e . UNDERSCORE _IDENT _RE ] , beginScope : {
3 : "title.class" } , keywords : "class interface trait" , end : /[:\{(]|$/ , excludeEnd : ! 0 ,
illegal : "extends implements" , contains : [ {
beginKeywords : "public protected internal private constructor"
} , e . UNDERSCORE _TITLE _MODE , { className : "type" , begin : /</ , end : />/ , excludeBegin : ! 0 ,
excludeEnd : ! 0 , relevance : 0 } , { className : "type" , begin : /[,:]\s*/ , end : /[<\(,){\s]|$/ ,
excludeBegin : ! 0 , returnEnd : ! 0 } , l , c ] } , r , { className : "meta" , begin : "^#!/usr/bin/env" ,
2025-01-13 09:56:01 +00:00
end : "$" , illegal : "\n" } , o ] } } } ) ( ) ; hljs . registerLanguage ( "kotlin" , e ) } ) ( ) ; /*! `less` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
2025-01-13 09:56:01 +00:00
; const e = [ "a" , "abbr" , "address" , "article" , "aside" , "audio" , "b" , "blockquote" , "body" , "button" , "canvas" , "caption" , "cite" , "code" , "dd" , "del" , "details" , "dfn" , "div" , "dl" , "dt" , "em" , "fieldset" , "figcaption" , "figure" , "footer" , "form" , "h1" , "h2" , "h3" , "h4" , "h5" , "h6" , "header" , "hgroup" , "html" , "i" , "iframe" , "img" , "input" , "ins" , "kbd" , "label" , "legend" , "li" , "main" , "mark" , "menu" , "nav" , "object" , "ol" , "optgroup" , "option" , "p" , "picture" , "q" , "quote" , "samp" , "section" , "select" , "source" , "span" , "strong" , "summary" , "sup" , "table" , "tbody" , "td" , "textarea" , "tfoot" , "th" , "thead" , "time" , "tr" , "ul" , "var" , "video" , "defs" , "g" , "marker" , "mask" , "pattern" , "svg" , "switch" , "symbol" , "feBlend" , "feColorMatrix" , "feComponentTransfer" , "feComposite" , "feConvolveMatrix" , "feDiffuseLighting" , "feDisplacementMap" , "feFlood" , "feGaussianBlur" , "feImage" , "feMerge" , "feMorphology" , "feOffset" , "feSpecularLighting" , "feTile" , "feTurbulence" , "linearGradient" , "radialGradient" , "stop" , "circle" , "ellipse" , "image" , "line" , "path" , "polygon" , "polyline" , "rect" , "text" , "use" , "textPath" , "tspan" , "foreignObject" , "clipPath" ] , t = [ "any-hover" , "any-pointer" , "aspect-ratio" , "color" , "color-gamut" , "color-index" , "device-aspect-ratio" , "device-height" , "device-width" , "display-mode" , "forced-colors" , "grid" , "height" , "hover" , "inverted-colors" , "monochrome" , "orientation" , "overflow-block" , "overflow-inline" , "pointer" , "prefers-color-scheme" , "prefers-contrast" , "prefers-reduced-motion" , "prefers-reduced-transparency" , "resolution" , "scan" , "scripting" , "update" , "width" , "min-width" , "max-width" , "min-height" , "max-height" ] . sort ( ) . reverse ( ) , r = [ "active" , "any-link" , "blank" , "checked" , "current" , "default" , "defined" , "dir" , "disabled" , "drop" , "empty" , "enabled" , "first" , "first-child" , "first-of-type" , "fullscreen" , "future" , "focus" , "focus-visible" , "focus-within" , "has" , "host" , "host-context" , "hover" , "indeterminate" , "in-range" , "invalid" , "is" , "lang" , "last-child" , "last-of-type" , "left" , "link" , "local-link" , "not" , "nth-child" , "nth-col" , "nth-last-child" , "nth-last-col" , "nth-last-of-type" , "nth-of-type" , "only-child" , "only-of-type" , "optional" , "out-of-range" , "past" , "placeholder-shown" , "read-only" , "read-write" , "required" , "right" , "root" , "scope" , "target" , "target-within" , "user-invalid" , "valid" , "visited" , "where" ] . sort ( ) . reverse ( ) , i = [ "after" , "backdrop" , "before" , "cue" , "cue-region" , "first-letter" , "first-line" , "grammar-error" , "marker" , "part" , "placeholder" , "selection" , "slotted" , "spelling-error" ] . sort ( ) . reverse ( ) , o = [ "accent-color" , "align-content" , "align-items" , "align-self" , "alignment-baseline" , "all" , "animation" , "animation-delay" , "animation-direction" , "animation-duration" , "animation-fill-mode" , "animation-iteration-count" , "animation-name" , "animation-play-state" , "animation-timing-function" , "appearance" , "backface-visibility" , "background" , "background-attachment" , "background-blend-mode" , "background-clip" , "background-color" , "background-image" , "background-origin" , "background-position" , "background-repeat" , "background-size" , "baseline-shift" , "block-size" , "border" , "border-block" , "border-block-color" , "border-block-end" , "border-block-end-color" , "border-block-end-style" , "border-block-end-width" , "border-block-start" , "border-block-start-color" , "border-block-start-style" , "border-block-start-width" , "border-block-style" , "border-block-width" , "border-bottom" , "border-bottom-color" , "border-bottom-left-radius" , "border-bottom-right-radius" , "border-bottom-style" , "border-bottom-width" , "border-collapse" , "border-color" , "border-image" , "border-image-outset" , "border-image-repeat" , "border-image-slice" , "border-image-source" , "border-image-width" , "border-inline" , "border-inline-color" , "border-inline-end" , "border-inline-end-color" , "border-inline-end-style" , "border-inline-end-width" , "border-inline-start" , "border-inline-start-color" , "border-inline-start-style" , "border-inline-start-width" , "border-inline-style" , "border-inline-width" , "border-left" , "border-left-color" , "border-left-style" , "border-left-width" , "border-radius" , "border-right" , "border-end-end-radius" , "border-end-start-radius" , "border-right-color" , "border-right-style" , "border-right-width" , "border-spacing" , "border-start-end-radius" , "border-start-start-radius" , "border-style"
2024-06-20 14:10:42 +00:00
; return a => { const l = ( e => ( { IMPORTANT : { scope : "meta" , begin : "!important" } ,
BLOCK _COMMENT : e . C _BLOCK _COMMENT _MODE , HEXCOLOR : { scope : "number" ,
begin : /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/ } , FUNCTION _DISPATCH : {
className : "built_in" , begin : /[\w-]+(?=\()/ } , ATTRIBUTE _SELECTOR _MODE : {
scope : "selector-attr" , begin : /\[/ , end : /\]/ , illegal : "$" ,
contains : [ e . APOS _STRING _MODE , e . QUOTE _STRING _MODE ] } , CSS _NUMBER _MODE : {
scope : "number" ,
begin : e . NUMBER _RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?" ,
relevance : 0 } , CSS _VARIABLE : { className : "attr" , begin : /--[A-Za-z_][A-Za-z0-9_-]*/ }
} ) ) ( a ) , s = n , d = "[\\w-]+" , c = "(" + d + "|@\\{" + d + "\\})" , g = [ ] , b = [ ] , m = e => ( {
className : "string" , begin : "~?" + e + ".*?" + e } ) , p = ( e , t , r ) => ( { className : e , begin : t ,
2025-01-13 09:56:01 +00:00
relevance : r } ) , f = { $pattern : /[a-z-]+/ , keyword : "and or not only" ,
attribute : t . join ( " " ) } , u = { begin : "\\(" , end : "\\)" , contains : b , keywords : f ,
2024-06-20 14:10:42 +00:00
relevance : 0 }
; b . push ( a . C _LINE _COMMENT _MODE , a . C _BLOCK _COMMENT _MODE , m ( "'" ) , m ( '"' ) , l . CSS _NUMBER _MODE , {
begin : "(url|data-uri)\\(" , starts : { className : "string" , end : "[\\)\\n]" ,
excludeEnd : ! 0 }
2025-01-13 09:56:01 +00:00
} , l . HEXCOLOR , u , p ( "variable" , "@@?" + d , 10 ) , p ( "variable" , "@\\{" + d + "\\}" ) , p ( "built_in" , "~?`[^`]*?`" ) , {
2024-06-20 14:10:42 +00:00
className : "attribute" , begin : d + "\\s*:" , end : ":" , returnBegin : ! 0 , excludeEnd : ! 0
2025-01-13 09:56:01 +00:00
} , l . IMPORTANT , { beginKeywords : "and not" } , l . FUNCTION _DISPATCH ) ; const h = b . concat ( {
2024-06-20 14:10:42 +00:00
begin : /\{/ , end : /\}/ , contains : g } ) , k = { beginKeywords : "when" , endsWithParent : ! 0 ,
contains : [ { beginKeywords : "and not" } ] . concat ( b ) } , v = { begin : c + "\\s*:" ,
returnBegin : ! 0 , end : /[;}]/ , relevance : 0 , contains : [ { begin : /-(webkit|moz|ms|o)-/
} , l . CSS _VARIABLE , { className : "attribute" , begin : "\\b(" + o . join ( "|" ) + ")\\b" ,
end : /(?=:)/ , starts : { endsWithParent : ! 0 , illegal : "[<=$]" , relevance : 0 , contains : b } } ]
2025-01-13 09:56:01 +00:00
} , y = { className : "keyword" ,
2024-06-20 14:10:42 +00:00
begin : "@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b" ,
2025-01-13 09:56:01 +00:00
starts : { end : "[;{}]" , keywords : f , returnEnd : ! 0 , contains : b , relevance : 0 } } , w = {
2024-06-20 14:10:42 +00:00
className : "variable" , variants : [ { begin : "@" + d + "\\s*:" , relevance : 15 } , { begin : "@" + d
2025-01-13 09:56:01 +00:00
} ] , starts : { end : "[;}]" , returnEnd : ! 0 , contains : h } } , x = { variants : [ {
2024-06-20 14:10:42 +00:00
begin : "[\\.#:&\\[>]" , end : "[;{}]" } , { begin : c , end : /\{/ } ] , returnBegin : ! 0 ,
returnEnd : ! 0 , illegal : "[<='$\"]" , relevance : 0 ,
contains : [ a . C _LINE _COMMENT _MODE , a . C _BLOCK _COMMENT _MODE , k , p ( "keyword" , "all\\b" ) , p ( "variable" , "@\\{" + d + "\\}" ) , {
begin : "\\b(" + e . join ( "|" ) + ")\\b" , className : "selector-tag"
} , l . CSS _NUMBER _MODE , p ( "selector-tag" , c , 0 ) , p ( "selector-id" , "#" + c ) , p ( "selector-class" , "\\." + c , 0 ) , p ( "selector-tag" , "&" , 0 ) , l . ATTRIBUTE _SELECTOR _MODE , {
className : "selector-pseudo" , begin : ":(" + r . join ( "|" ) + ")" } , {
className : "selector-pseudo" , begin : ":(:)?(" + i . join ( "|" ) + ")" } , { begin : /\(/ ,
2025-01-13 09:56:01 +00:00
end : /\)/ , relevance : 0 , contains : h } , { begin : "!important" } , l . FUNCTION _DISPATCH ] } , _ = {
2024-06-20 14:10:42 +00:00
begin : d + ":(:)?" + ` ( ${ s . join ( "|" ) } ) ` , returnBegin : ! 0 , contains : [ x ] }
2025-01-13 09:56:01 +00:00
; return g . push ( a . C _LINE _COMMENT _MODE , a . C _BLOCK _COMMENT _MODE , y , w , _ , v , x , k , l . FUNCTION _DISPATCH ) ,
2024-06-20 14:10:42 +00:00
{ name : "Less" , case _insensitive : ! 0 , illegal : "[=>'/<($\"]" , contains : g } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "less" , e ) } ) ( ) ; /*! `lua` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const t = "\\[=*\\[" , a = "\\]=*\\]" , n = {
begin : t , end : a , contains : [ "self" ]
} , o = [ e . COMMENT ( "--(?!" + t + ")" , "$" ) , e . COMMENT ( "--" + t , a , { contains : [ n ] , relevance : 10
} ) ] ; return { name : "Lua" , keywords : { $pattern : e . UNDERSCORE _IDENT _RE ,
literal : "true false nil" ,
keyword : "and break do else elseif end for goto if in local not or repeat return then until while" ,
built _in : "_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"
} , contains : o . concat ( [ { className : "function" , beginKeywords : "function" , end : "\\)" ,
contains : [ e . inherit ( e . TITLE _MODE , {
begin : "([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*" } ) , { className : "params" ,
begin : "\\(" , endsWithParent : ! 0 , contains : o } ] . concat ( o )
} , e . C _NUMBER _MODE , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE , { className : "string" ,
begin : t , end : a , contains : [ n ] , relevance : 5 } ] ) } } } ) ( ) ; hljs . registerLanguage ( "lua" , e )
2025-01-13 09:56:01 +00:00
} ) ( ) ; /*! `makefile` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const i = { className : "variable" ,
variants : [ { begin : "\\$\\(" + e . UNDERSCORE _IDENT _RE + "\\)" ,
contains : [ e . BACKSLASH _ESCAPE ] } , { begin : /\$[@%<?\^\+\*]/ } ] } , a = { className : "string" ,
begin : /"/ , end : /"/ , contains : [ e . BACKSLASH _ESCAPE , i ] } , n = { className : "variable" ,
begin : /\$\([\w-]+\s/ , end : /\)/ , keywords : {
built _in : "subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"
} , contains : [ i ] } , s = { begin : "^" + e . UNDERSCORE _IDENT _RE + "\\s*(?=[:+?]?=)" } , r = {
className : "section" , begin : /^[^\s]+:/ , end : /$/ , contains : [ i ] } ; return {
name : "Makefile" , aliases : [ "mk" , "mak" , "make" ] , keywords : { $pattern : /[\w-]+/ ,
keyword : "define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"
} , contains : [ e . HASH _COMMENT _MODE , i , a , n , s , { className : "meta" , begin : /^\.PHONY:/ ,
end : /$/ , keywords : { $pattern : /[\.\w]+/ , keyword : ".PHONY" } } , r ] } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "makefile" , e ) } ) ( ) ; /*! `markdown` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const n = { begin : /<\/?[A-Za-z_]/ ,
end : ">" , subLanguage : "xml" , relevance : 0 } , a = { variants : [ { begin : /\[.+?\]\[.*?\]/ ,
relevance : 0 } , {
begin : /\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/ ,
relevance : 2 } , {
begin : e . regex . concat ( /\[.+?\]\(/ , /[A-Za-z][A-Za-z0-9+.-]*/ , /:\/\/.*?\)/ ) ,
relevance : 2 } , { begin : /\[.+?\]\([./?&#].*?\)/ , relevance : 1 } , {
begin : /\[.*?\]\(.*?\)/ , relevance : 0 } ] , returnBegin : ! 0 , contains : [ { match : /\[(?=\])/
} , { className : "string" , relevance : 0 , begin : "\\[" , end : "\\]" , excludeBegin : ! 0 ,
returnEnd : ! 0 } , { className : "link" , relevance : 0 , begin : "\\]\\(" , end : "\\)" ,
excludeBegin : ! 0 , excludeEnd : ! 0 } , { className : "symbol" , relevance : 0 , begin : "\\]\\[" ,
end : "\\]" , excludeBegin : ! 0 , excludeEnd : ! 0 } ] } , i = { className : "strong" , contains : [ ] ,
variants : [ { begin : /_{2}(?!\s)/ , end : /_{2}/ } , { begin : /\*{2}(?!\s)/ , end : /\*{2}/ } ]
} , s = { className : "emphasis" , contains : [ ] , variants : [ { begin : /\*(?![*\s])/ , end : /\*/ } , {
begin : /_(?![_\s])/ , end : /_/ , relevance : 0 } ] } , c = e . inherit ( i , { contains : [ ]
} ) , t = e . inherit ( s , { contains : [ ] } ) ; i . contains . push ( t ) , s . contains . push ( c )
; let g = [ n , a ] ; return [ i , s , c , t ] . forEach ( ( e => { e . contains = e . contains . concat ( g )
} ) ) , g = g . concat ( i , s ) , { name : "Markdown" , aliases : [ "md" , "mkdown" , "mkd" ] , contains : [ {
className : "section" , variants : [ { begin : "^#{1,6}" , end : "$" , contains : g } , {
begin : "(?=^.+?\\n[=-]{2,}$)" , contains : [ { begin : "^[=-]*$" } , { begin : "^" , end : "\\n" ,
contains : g } ] } ] } , n , { className : "bullet" , begin : "^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)" ,
end : "\\s+" , excludeEnd : ! 0 } , i , s , { className : "quote" , begin : "^>\\s+" , contains : g ,
end : "$" } , { className : "code" , variants : [ { begin : "(`{3,})[^`](.|\\n)*?\\1`*[ ]*" } , {
begin : "(~{3,})[^~](.|\\n)*?\\1~*[ ]*" } , { begin : "```" , end : "```+[ ]*$" } , {
begin : "~~~" , end : "~~~+[ ]*$" } , { begin : "`.+?`" } , { begin : "(?=^( {4}|\\t))" ,
contains : [ { begin : "^( {4}|\\t)" , end : "(\\n)$" } ] , relevance : 0 } ] } , {
begin : "^[-\\*]{3,}" , end : "$" } , a , { begin : /^\[[^\n]+\]:/ , returnBegin : ! 0 , contains : [ {
className : "symbol" , begin : /\[/ , end : /\]/ , excludeBegin : ! 0 , excludeEnd : ! 0 } , {
2025-01-13 09:56:01 +00:00
className : "link" , begin : /:\s*/ , end : /$/ , excludeBegin : ! 0 } ] } , { scope : "literal" ,
match : /&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/ } ] } } } ) ( )
; hljs . registerLanguage ( "markdown" , e ) } ) ( ) ; /*! `objectivec` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { const n = /[a-zA-Z@][a-zA-Z0-9_]*/ , _ = {
$pattern : n , keyword : [ "@interface" , "@class" , "@protocol" , "@implementation" ] }
; return { name : "Objective-C" ,
aliases : [ "mm" , "objc" , "obj-c" , "obj-c++" , "objective-c++" ] , keywords : {
"variable.language" : [ "this" , "super" ] , $pattern : n ,
keyword : [ "while" , "export" , "sizeof" , "typedef" , "const" , "struct" , "for" , "union" , "volatile" , "static" , "mutable" , "if" , "do" , "return" , "goto" , "enum" , "else" , "break" , "extern" , "asm" , "case" , "default" , "register" , "explicit" , "typename" , "switch" , "continue" , "inline" , "readonly" , "assign" , "readwrite" , "self" , "@synchronized" , "id" , "typeof" , "nonatomic" , "IBOutlet" , "IBAction" , "strong" , "weak" , "copy" , "in" , "out" , "inout" , "bycopy" , "byref" , "oneway" , "__strong" , "__weak" , "__block" , "__autoreleasing" , "@private" , "@protected" , "@public" , "@try" , "@property" , "@end" , "@throw" , "@catch" , "@finally" , "@autoreleasepool" , "@synthesize" , "@dynamic" , "@selector" , "@optional" , "@required" , "@encode" , "@package" , "@import" , "@defs" , "@compatibility_alias" , "__bridge" , "__bridge_transfer" , "__bridge_retained" , "__bridge_retain" , "__covariant" , "__contravariant" , "__kindof" , "_Nonnull" , "_Nullable" , "_Null_unspecified" , "__FUNCTION__" , "__PRETTY_FUNCTION__" , "__attribute__" , "getter" , "setter" , "retain" , "unsafe_unretained" , "nonnull" , "nullable" , "null_unspecified" , "null_resettable" , "class" , "instancetype" , "NS_DESIGNATED_INITIALIZER" , "NS_UNAVAILABLE" , "NS_REQUIRES_SUPER" , "NS_RETURNS_INNER_POINTER" , "NS_INLINE" , "NS_AVAILABLE" , "NS_DEPRECATED" , "NS_ENUM" , "NS_OPTIONS" , "NS_SWIFT_UNAVAILABLE" , "NS_ASSUME_NONNULL_BEGIN" , "NS_ASSUME_NONNULL_END" , "NS_REFINED_FOR_SWIFT" , "NS_SWIFT_NAME" , "NS_SWIFT_NOTHROW" , "NS_DURING" , "NS_HANDLER" , "NS_ENDHANDLER" , "NS_VALUERETURN" , "NS_VOIDRETURN" ] ,
literal : [ "false" , "true" , "FALSE" , "TRUE" , "nil" , "YES" , "NO" , "NULL" ] ,
built _in : [ "dispatch_once_t" , "dispatch_queue_t" , "dispatch_sync" , "dispatch_async" , "dispatch_once" ] ,
type : [ "int" , "float" , "char" , "unsigned" , "signed" , "short" , "long" , "double" , "wchar_t" , "unichar" , "void" , "bool" , "BOOL" , "id|0" , "_Bool" ]
} , illegal : "</" , contains : [ { className : "built_in" ,
begin : "\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"
} , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE , e . C _NUMBER _MODE , e . QUOTE _STRING _MODE , e . APOS _STRING _MODE , {
className : "string" , variants : [ { begin : '@"' , end : '"' , illegal : "\\n" ,
contains : [ e . BACKSLASH _ESCAPE ] } ] } , { className : "meta" , begin : /#\s*[a-z]+\b/ , end : /$/ ,
keywords : {
keyword : "if else elif endif define undef warning error line pragma ifdef ifndef include"
} , contains : [ { begin : /\\\n/ , relevance : 0 } , e . inherit ( e . QUOTE _STRING _MODE , {
className : "string" } ) , { className : "string" , begin : /<.*?>/ , end : /$/ , illegal : "\\n"
} , e . C _LINE _COMMENT _MODE , e . C _BLOCK _COMMENT _MODE ] } , { className : "class" ,
begin : "(" + _ . keyword . join ( "|" ) + ")\\b" , end : /(\{|$)/ , excludeEnd : ! 0 , keywords : _ ,
contains : [ e . UNDERSCORE _TITLE _MODE ] } , { begin : "\\." + e . UNDERSCORE _IDENT _RE ,
2025-01-13 09:56:01 +00:00
relevance : 0 } ] } } } ) ( ) ; hljs . registerLanguage ( "objectivec" , e ) } ) ( ) ; /*! `perl` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
2025-01-13 09:56:01 +00:00
const n = e . regex , t = /[dualxmsipngr]{0,12}/ , s = { $pattern : /[\w.]+/ ,
keyword : "abs accept alarm and atan2 bind binmode bless break caller chdir chmod chomp chop chown chr chroot class close closedir connect continue cos crypt dbmclose dbmopen defined delete die do dump each else elsif endgrent endhostent endnetent endprotoent endpwent endservent eof eval exec exists exit exp fcntl field fileno flock for foreach fork format formline getc getgrent getgrgid getgrnam gethostbyaddr gethostbyname gethostent getlogin getnetbyaddr getnetbyname getnetent getpeername getpgrp getpriority getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid getservbyname getservbyport getservent getsockname getsockopt given glob gmtime goto grep gt hex if index int ioctl join keys kill last lc lcfirst length link listen local localtime log lstat lt ma map method mkdir msgctl msgget msgrcv msgsnd my ne next no not oct open opendir or ord our pack package pipe pop pos print printf prototype push q|0 qq quotemeta qw qx rand read readdir readline readlink readpipe recv redo ref rename require reset return reverse rewinddir rindex rmdir say scalar seek seekdir select semctl semget semop send setgrent sethostent setnetent setpgrp setpriority setprotoent setpwent setservent setsockopt shift shmctl shmget shmread shmwrite shutdown sin sleep socket socketpair sort splice split sprintf sqrt srand stat state study sub substr symlink syscall sysopen sysread sysseek system syswrite tell telldir tie tied time times tr truncate uc ucfirst umask undef unless unlink unpack unshift untie until use utime values vec wait waitpid wantarray warn when while write x|0 xor y|0"
} , r = { className : "subst" , begin : "[$@]\\{" , end : "\\}" , keywords : s } , a = { begin : /->\{/ ,
end : /\}/ } , i = { scope : "attr" , match : /\s+:\s*\w+(\s*\(.*?\))?/ } , c = { scope : "variable" ,
variants : [ { begin : /\$\d/ } , {
begin : n . concat ( /[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/ , "(?![A-Za-z])(?![@$%])" )
} , { begin : /[$%@](?!")[^\s\w{=]|\$=/ , relevance : 0 } ] , contains : [ i ] } , o = {
className : "number" , variants : [ { match : /0?\.[0-9][0-9_]+\b/ } , {
match : /\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/ } , {
match : /\b0[0-7][0-7_]*\b/ } , { match : /\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/ } , {
match : /\b0b[0-1][0-1_]*\b/ } ] , relevance : 0
} , l = [ e . BACKSLASH _ESCAPE , r , c ] , g = [ /!/ , /\// , /\|/ , /\?/ , /'/ , /"/ , /#/ ] , d = ( e , s , r = "\\1" ) => {
const a = "\\1" === r ? r : n . concat ( r , s )
; return n . concat ( n . concat ( "(?:" , e , ")" ) , s , /(?:\\.|[^\\\/])*?/ , a , /(?:\\.|[^\\\/])*?/ , r , t )
} , m = ( e , s , r ) => n . concat ( n . concat ( "(?:" , e , ")" ) , s , /(?:\\.|[^\\\/])*?/ , r , t ) , p = [ c , e . HASH _COMMENT _MODE , e . COMMENT ( /^=\w/ , /=cut/ , {
endsWithParent : ! 0 } ) , a , { className : "string" , contains : l , variants : [ {
2024-06-20 14:10:42 +00:00
begin : "q[qwxr]?\\s*\\(" , end : "\\)" , relevance : 5 } , { begin : "q[qwxr]?\\s*\\[" ,
end : "\\]" , relevance : 5 } , { begin : "q[qwxr]?\\s*\\{" , end : "\\}" , relevance : 5 } , {
begin : "q[qwxr]?\\s*\\|" , end : "\\|" , relevance : 5 } , { begin : "q[qwxr]?\\s*<" , end : ">" ,
relevance : 5 } , { begin : "qw\\s+q" , end : "q" , relevance : 5 } , { begin : "'" , end : "'" ,
contains : [ e . BACKSLASH _ESCAPE ] } , { begin : '"' , end : '"' } , { begin : "`" , end : "`" ,
contains : [ e . BACKSLASH _ESCAPE ] } , { begin : /\{\w+\}/ , relevance : 0 } , {
2025-01-13 09:56:01 +00:00
begin : "-?\\w+\\s*=>" , relevance : 0 } ] } , o , {
2024-06-20 14:10:42 +00:00
begin : "(\\/\\/|" + e . RE _STARTERS _RE + "|\\b(split|return|print|reverse|grep)\\b)\\s*" ,
keywords : "split return print reverse grep" , relevance : 0 ,
contains : [ e . HASH _COMMENT _MODE , { className : "regexp" , variants : [ {
2025-01-13 09:56:01 +00:00
begin : d ( "s|tr|y" , n . either ( ... g , { capture : ! 0 } ) ) } , { begin : d ( "s|tr|y" , "\\(" , "\\)" ) } , {
begin : d ( "s|tr|y" , "\\[" , "\\]" ) } , { begin : d ( "s|tr|y" , "\\{" , "\\}" ) } ] , relevance : 2 } , {
2024-06-20 14:10:42 +00:00
className : "regexp" , variants : [ { begin : /(m|qr)\/\// , relevance : 0 } , {
2025-01-13 09:56:01 +00:00
begin : m ( "(?:m|qr)?" , /\// , /\// ) } , { begin : m ( "m|qr" , n . either ( ... g , { capture : ! 0
} ) , /\1/ ) } , { begin : m ( "m|qr" , /\(/ , /\)/ ) } , { begin : m ( "m|qr" , /\[/ , /\]/ ) } , {
begin : m ( "m|qr" , /\{/ , /\}/ ) } ] } ] } , { className : "function" , beginKeywords : "sub method" ,
end : "(\\s*\\(.*?\\))?[;{]" , excludeEnd : ! 0 , relevance : 5 , contains : [ e . TITLE _MODE , i ]
} , { className : "class" , beginKeywords : "class" , end : "[;{]" , excludeEnd : ! 0 , relevance : 5 ,
contains : [ e . TITLE _MODE , i , o ] } , { begin : "-\\w\\b" , relevance : 0 } , { begin : "^__DATA__$" ,
end : "^__END__$" , subLanguage : "mojolicious" , contains : [ { begin : "^@@.*" , end : "$" ,
className : "comment" } ] } ] ; return r . contains = p , a . contains = p , { name : "Perl" ,
aliases : [ "pl" , "pm" ] , keywords : s , contains : p } } } ) ( ) ; hljs . registerLanguage ( "perl" , e )
} ) ( ) ; /*! `php` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const t = e . regex , a = /(?![A-Za-z0-9])(?![$])/ , r = t . concat ( /[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/ , a ) , n = t . concat ( /(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/ , a ) , o = {
scope : "variable" , match : "\\$+" + r } , c = { scope : "subst" , variants : [ { begin : /\$\w+/ } , {
begin : /\{\$/ , end : /\}/ } ] } , i = e . inherit ( e . APOS _STRING _MODE , { illegal : null
} ) , s = "[ \t\n]" , l = { scope : "string" , variants : [ e . inherit ( e . QUOTE _STRING _MODE , {
illegal : null , contains : e . QUOTE _STRING _MODE . contains . concat ( c ) } ) , i , {
begin : /<<<[ \t]*(?:(\w+)|"(\w+)")\n/ , end : /[ \t]*(\w+)\b/ ,
contains : e . QUOTE _STRING _MODE . contains . concat ( c ) , "on:begin" : ( e , t ) => {
t . data . _beginMatch = e [ 1 ] || e [ 2 ] } , "on:end" : ( e , t ) => {
t . data . _beginMatch !== e [ 1 ] && t . ignoreMatch ( ) } } , e . END _SAME _AS _BEGIN ( {
begin : /<<<[ \t]*'(\w+)'\n/ , end : /[ \t]*(\w+)\b/ } ) ] } , d = { scope : "number" , variants : [ {
begin : "\\b0[bB][01]+(?:_[01]+)*\\b" } , { begin : "\\b0[oO][0-7]+(?:_[0-7]+)*\\b" } , {
begin : "\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b" } , {
begin : "(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"
} ] , relevance : 0
} , _ = [ "false" , "null" , "true" ] , p = [ "__CLASS__" , "__DIR__" , "__FILE__" , "__FUNCTION__" , "__COMPILER_HALT_OFFSET__" , "__LINE__" , "__METHOD__" , "__NAMESPACE__" , "__TRAIT__" , "die" , "echo" , "exit" , "include" , "include_once" , "print" , "require" , "require_once" , "array" , "abstract" , "and" , "as" , "binary" , "bool" , "boolean" , "break" , "callable" , "case" , "catch" , "class" , "clone" , "const" , "continue" , "declare" , "default" , "do" , "double" , "else" , "elseif" , "empty" , "enddeclare" , "endfor" , "endforeach" , "endif" , "endswitch" , "endwhile" , "enum" , "eval" , "extends" , "final" , "finally" , "float" , "for" , "foreach" , "from" , "global" , "goto" , "if" , "implements" , "instanceof" , "insteadof" , "int" , "integer" , "interface" , "isset" , "iterable" , "list" , "match|0" , "mixed" , "new" , "never" , "object" , "or" , "private" , "protected" , "public" , "readonly" , "real" , "return" , "string" , "switch" , "throw" , "trait" , "try" , "unset" , "use" , "var" , "void" , "while" , "xor" , "yield" ] , b = [ "Error|0" , "AppendIterator" , "ArgumentCountError" , "ArithmeticError" , "ArrayIterator" , "ArrayObject" , "AssertionError" , "BadFunctionCallException" , "BadMethodCallException" , "CachingIterator" , "CallbackFilterIterator" , "CompileError" , "Countable" , "DirectoryIterator" , "DivisionByZeroError" , "DomainException" , "EmptyIterator" , "ErrorException" , "Exception" , "FilesystemIterator" , "FilterIterator" , "GlobIterator" , "InfiniteIterator" , "InvalidArgumentException" , "IteratorIterator" , "LengthException" , "LimitIterator" , "LogicException" , "MultipleIterator" , "NoRewindIterator" , "OutOfBoundsException" , "OutOfRangeException" , "OuterIterator" , "OverflowException" , "ParentIterator" , "ParseError" , "RangeException" , "RecursiveArrayIterator" , "RecursiveCachingIterator" , "RecursiveCallbackFilterIterator" , "RecursiveDirectoryIterator" , "RecursiveFilterIterator" , "RecursiveIterator" , "RecursiveIteratorIterator" , "RecursiveRegexIterator" , "RecursiveTreeIterator" , "RegexIterator" , "RuntimeException" , "SeekableIterator" , "SplDoublyLinkedList" , "SplFileInfo" , "SplFileObject" , "SplFixedArray" , "SplHeap" , "SplMaxHeap" , "SplMinHeap" , "SplObjectStorage" , "SplObserver" , "SplPriorityQueue" , "SplQueue" , "SplStack" , "SplSubject" , "SplTempFileObject" , "TypeError" , "UnderflowException" , "UnexpectedValueException" , "UnhandledMatchError" , "ArrayAccess" , "BackedEnum" , "Closure" , "Fiber" , "Generator" , "Iterator" , "IteratorAggregate" , "Serializable" , "Stringable" , "Throwable" , "Traversable" , "UnitEnum" , "WeakReference" , "WeakMap" , "Directory" , "__PHP_Incomplete_Class" , "parent" , "php_user_filter" , "self" , "static" , "stdClass" ] , E = {
keyword : p , literal : ( e => { const t = [ ] ; return e . forEach ( ( e => {
t . push ( e ) , e . toLowerCase ( ) === e ? t . push ( e . toUpperCase ( ) ) : t . push ( e . toLowerCase ( ) )
} ) ) , t } ) ( _ ) , built _in : b } , u = e => e . map ( ( e => e . replace ( /\|\d+$/ , "" ) ) ) , g = { variants : [ {
match : [ /new/ , t . concat ( s , "+" ) , t . concat ( "(?!" , u ( b ) . join ( "\\b|" ) , "\\b)" ) , n ] , scope : {
1 : "keyword" , 4 : "title.class" } } ] } , h = t . concat ( r , "\\b(?!\\()" ) , m = { variants : [ {
match : [ t . concat ( /::/ , t . lookahead ( /(?!class\b)/ ) ) , h ] , scope : { 2 : "variable.constant"
} } , { match : [ /::/ , /class/ ] , scope : { 2 : "variable.language" } } , {
match : [ n , t . concat ( /::/ , t . lookahead ( /(?!class\b)/ ) ) , h ] , scope : { 1 : "title.class" ,
3 : "variable.constant" } } , { match : [ n , t . concat ( "::" , t . lookahead ( /(?!class\b)/ ) ) ] ,
scope : { 1 : "title.class" } } , { match : [ n , /::/ , /class/ ] , scope : { 1 : "title.class" ,
3 : "variable.language" } } ] } , I = { scope : "attr" ,
match : t . concat ( r , t . lookahead ( ":" ) , t . lookahead ( /(?!::)/ ) ) } , f = { relevance : 0 ,
begin : /\(/ , end : /\)/ , keywords : E , contains : [ I , o , m , e . C _BLOCK _COMMENT _MODE , l , d , g ]
} , O = { relevance : 0 ,
match : [ /\b/ , t . concat ( "(?!fn\\b|function\\b|" , u ( p ) . join ( "\\b|" ) , "|" , u ( b ) . join ( "\\b|" ) , "\\b)" ) , r , t . concat ( s , "*" ) , t . lookahead ( /(?=\()/ ) ] ,
scope : { 3 : "title.function.invoke" } , contains : [ f ] } ; f . contains . push ( O )
; const v = [ I , m , e . C _BLOCK _COMMENT _MODE , l , d , g ] ; return { case _insensitive : ! 1 ,
keywords : E , contains : [ { begin : t . concat ( /#\[\s*/ , n ) , beginScope : "meta" , end : /]/ ,
endScope : "meta" , keywords : { literal : _ , keyword : [ "new" , "array" ] } , contains : [ {
begin : /\[/ , end : /]/ , keywords : { literal : _ , keyword : [ "new" , "array" ] } ,
contains : [ "self" , ... v ] } , ... v , { scope : "meta" , match : n } ]
} , e . HASH _COMMENT _MODE , e . COMMENT ( "//" , "$" ) , e . COMMENT ( "/\\*" , "\\*/" , { contains : [ {
scope : "doctag" , match : "@[A-Za-z]+" } ] } ) , { match : /__halt_compiler\(\);/ ,
keywords : "__halt_compiler" , starts : { scope : "comment" , end : e . MATCH _NOTHING _RE ,
contains : [ { match : /\?>/ , scope : "meta" , endsParent : ! 0 } ] } } , { scope : "meta" , variants : [ {
begin : /<\?php/ , relevance : 10 } , { begin : /<\?=/ } , { begin : /<\?/ , relevance : . 1 } , {
begin : /\?>/ } ] } , { scope : "variable.language" , match : /\$this\b/ } , o , O , m , {
match : [ /const/ , /\s/ , r ] , scope : { 1 : "keyword" , 3 : "variable.constant" } } , g , {
scope : "function" , relevance : 0 , beginKeywords : "fn function" , end : /[;{]/ ,
excludeEnd : ! 0 , illegal : "[$%\\[]" , contains : [ { beginKeywords : "use"
} , e . UNDERSCORE _TITLE _MODE , { begin : "=>" , endsParent : ! 0 } , { scope : "params" ,
begin : "\\(" , end : "\\)" , excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : E ,
contains : [ "self" , o , m , e . C _BLOCK _COMMENT _MODE , l , d ] } ] } , { scope : "class" , variants : [ {
beginKeywords : "enum" , illegal : /[($"]/ } , { beginKeywords : "class interface trait" ,
illegal : /[:($"]/ } ] , relevance : 0 , end : /\{/ , excludeEnd : ! 0 , contains : [ {
beginKeywords : "extends implements" } , e . UNDERSCORE _TITLE _MODE ] } , {
beginKeywords : "namespace" , relevance : 0 , end : ";" , illegal : /[.']/ ,
contains : [ e . inherit ( e . UNDERSCORE _TITLE _MODE , { scope : "title.class" } ) ] } , {
beginKeywords : "use" , relevance : 0 , end : ";" , contains : [ {
match : /\b(as|const|function)\b/ , scope : "keyword" } , e . UNDERSCORE _TITLE _MODE ] } , l , d ] }
2025-01-13 09:56:01 +00:00
} } ) ( ) ; hljs . registerLanguage ( "php" , e ) } ) ( ) ; /*! `php-template` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var n = ( ( ) => { "use strict" ; return n => ( { name : "PHP template" ,
subLanguage : "xml" , contains : [ { begin : /<\?(php|=)?/ , end : /\?>/ , subLanguage : "php" ,
contains : [ { begin : "/\\*" , end : "\\*/" , skip : ! 0 } , { begin : 'b"' , end : '"' , skip : ! 0 } , {
begin : "b'" , end : "'" , skip : ! 0 } , n . inherit ( n . APOS _STRING _MODE , { illegal : null ,
className : null , contains : null , skip : ! 0 } ) , n . inherit ( n . QUOTE _STRING _MODE , {
illegal : null , className : null , contains : null , skip : ! 0 } ) ] } ] } ) } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "php-template" , n ) } ) ( ) ; /*! `plaintext` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var t = ( ( ) => { "use strict" ; return t => ( { name : "Plain text" ,
aliases : [ "text" , "txt" ] , disableAutodetect : ! 0 } ) } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "plaintext" , t ) } ) ( ) ; /*! `python` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
2025-01-13 09:56:01 +00:00
const n = e . regex , a = /[\p{XID_Start}_]\p{XID_Continue}*/u , s = [ "and" , "as" , "assert" , "async" , "await" , "break" , "case" , "class" , "continue" , "def" , "del" , "elif" , "else" , "except" , "finally" , "for" , "from" , "global" , "if" , "import" , "in" , "is" , "lambda" , "match" , "nonlocal|10" , "not" , "or" , "pass" , "raise" , "return" , "try" , "while" , "with" , "yield" ] , t = {
$pattern : /[A-Za-z]\w+|__\w+__/ , keyword : s ,
2024-06-20 14:10:42 +00:00
built _in : [ "__import__" , "abs" , "all" , "any" , "ascii" , "bin" , "bool" , "breakpoint" , "bytearray" , "bytes" , "callable" , "chr" , "classmethod" , "compile" , "complex" , "delattr" , "dict" , "dir" , "divmod" , "enumerate" , "eval" , "exec" , "filter" , "float" , "format" , "frozenset" , "getattr" , "globals" , "hasattr" , "hash" , "help" , "hex" , "id" , "input" , "int" , "isinstance" , "issubclass" , "iter" , "len" , "list" , "locals" , "map" , "max" , "memoryview" , "min" , "next" , "object" , "oct" , "open" , "ord" , "pow" , "print" , "property" , "range" , "repr" , "reversed" , "round" , "set" , "setattr" , "slice" , "sorted" , "staticmethod" , "str" , "sum" , "super" , "tuple" , "type" , "vars" , "zip" ] ,
literal : [ "__debug__" , "Ellipsis" , "False" , "None" , "NotImplemented" , "True" ] ,
type : [ "Any" , "Callable" , "Coroutine" , "Dict" , "List" , "Literal" , "Generic" , "Optional" , "Sequence" , "Set" , "Tuple" , "Type" , "Union" ]
2025-01-13 09:56:01 +00:00
} , i = { className : "meta" , begin : /^(>>>|\.\.\.) / } , r = { className : "subst" , begin : /\{/ ,
end : /\}/ , keywords : t , illegal : /#/ } , l = { begin : /\{\{/ , relevance : 0 } , o = {
2024-06-20 14:10:42 +00:00
className : "string" , contains : [ e . BACKSLASH _ESCAPE ] , variants : [ {
begin : /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/ , end : /'''/ ,
2025-01-13 09:56:01 +00:00
contains : [ e . BACKSLASH _ESCAPE , i ] , relevance : 10 } , {
2024-06-20 14:10:42 +00:00
begin : /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/ , end : /"""/ ,
2025-01-13 09:56:01 +00:00
contains : [ e . BACKSLASH _ESCAPE , i ] , relevance : 10 } , {
2024-06-20 14:10:42 +00:00
begin : /([fF][rR]|[rR][fF]|[fF])'''/ , end : /'''/ ,
2025-01-13 09:56:01 +00:00
contains : [ e . BACKSLASH _ESCAPE , i , l , r ] } , { begin : /([fF][rR]|[rR][fF]|[fF])"""/ ,
end : /"""/ , contains : [ e . BACKSLASH _ESCAPE , i , l , r ] } , { begin : /([uU]|[rR])'/ , end : /'/ ,
2024-06-20 14:10:42 +00:00
relevance : 10 } , { begin : /([uU]|[rR])"/ , end : /"/ , relevance : 10 } , {
begin : /([bB]|[bB][rR]|[rR][bB])'/ , end : /'/ } , { begin : /([bB]|[bB][rR]|[rR][bB])"/ ,
end : /"/ } , { begin : /([fF][rR]|[rR][fF]|[fF])'/ , end : /'/ ,
contains : [ e . BACKSLASH _ESCAPE , l , r ] } , { begin : /([fF][rR]|[rR][fF]|[fF])"/ , end : /"/ ,
contains : [ e . BACKSLASH _ESCAPE , l , r ] } , e . APOS _STRING _MODE , e . QUOTE _STRING _MODE ]
2025-01-13 09:56:01 +00:00
} , b = "[0-9](_?[0-9])*" , c = ` ( \\ b( ${ b } ))? \\ .( ${ b } )| \\ b( ${ b } ) \\ . ` , d = "\\b|" + s . join ( "|" ) , g = {
2024-06-20 14:10:42 +00:00
className : "number" , relevance : 0 , variants : [ {
2025-01-13 09:56:01 +00:00
begin : ` ( \\ b( ${ b } )|( ${ c } ))[eE][+-]?( ${ b } )[jJ]?(?= ${ d } ) ` } , { begin : ` ( ${ c } )[jJ]? ` } , {
2024-06-20 14:10:42 +00:00
begin : ` \\ b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?= ${ d } ) ` } , {
begin : ` \\ b0[bB](_?[01])+[lL]?(?= ${ d } ) ` } , { begin : ` \\ b0[oO](_?[0-7])+[lL]?(?= ${ d } ) `
2025-01-13 09:56:01 +00:00
} , { begin : ` \\ b0[xX](_?[0-9a-fA-F])+[lL]?(?= ${ d } ) ` } , { begin : ` \\ b( ${ b } )[jJ](?= ${ d } ) `
} ] } , p = { className : "comment" , begin : n . lookahead ( /# type:/ ) , end : /$/ , keywords : t ,
2024-06-20 14:10:42 +00:00
contains : [ { begin : /# type:/ } , { begin : /#/ , end : /\b\B/ , endsWithParent : ! 0 } ] } , m = {
className : "params" , variants : [ { className : "" , begin : /\(\s*\)/ , skip : ! 0 } , { begin : /\(/ ,
2025-01-13 09:56:01 +00:00
end : /\)/ , excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : t ,
contains : [ "self" , i , g , o , e . HASH _COMMENT _MODE ] } ] } ; return r . contains = [ o , g , i ] , {
name : "Python" , aliases : [ "py" , "gyp" , "ipython" ] , unicodeRegex : ! 0 , keywords : t ,
illegal : /(<\/|\?)|=>/ , contains : [ i , g , { scope : "variable.language" , match : /\bself\b/
} , { beginKeywords : "if" , relevance : 0 } , { match : /\bor\b/ , scope : "keyword"
} , o , p , e . HASH _COMMENT _MODE , { match : [ /\bdef/ , /\s+/ , a ] , scope : { 1 : "keyword" ,
3 : "title.function" } , contains : [ m ] } , { variants : [ {
2024-06-20 14:10:42 +00:00
match : [ /\bclass/ , /\s+/ , a , /\s*/ , /\(\s*/ , a , /\s*\)/ ] } , { match : [ /\bclass/ , /\s+/ , a ] } ] ,
scope : { 1 : "keyword" , 3 : "title.class" , 6 : "title.class.inherited" } } , {
2025-01-13 09:56:01 +00:00
className : "meta" , begin : /^[\t ]*@/ , end : /(?=#)|$/ , contains : [ g , m , o ] } ] } } } ) ( )
; hljs . registerLanguage ( "python" , e ) } ) ( ) ; /*! `python-repl` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var a = ( ( ) => { "use strict" ; return a => ( { aliases : [ "pycon" ] , contains : [ {
className : "meta.prompt" , starts : { end : / |$/ , starts : { end : "$" , subLanguage : "python" }
} , variants : [ { begin : /^>>>(?=[ ]|$)/ } , { begin : /^\.\.\.(?=[ ]|$)/ } ] } ] } ) } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "python-repl" , a ) } ) ( ) ; /*! `r` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const a = e . regex , n = /(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/ , i = a . either ( /0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/ , /0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/ , /(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/ ) , s = /[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/ , t = a . either ( /[()]/ , /[{}]/ , /\[\[/ , /[[\]]/ , /\\/ , /,/ )
; return { name : "R" , keywords : { $pattern : n ,
keyword : "function if in break next repeat else for while" ,
literal : "NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10" ,
built _in : "LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"
} , contains : [ e . COMMENT ( /#'/ , /$/ , { contains : [ { scope : "doctag" , match : /@examples/ ,
starts : { end : a . lookahead ( a . either ( /\n^#'\s*(?=@[a-zA-Z]+)/ , /\n^(?!#')/ ) ) ,
endsParent : ! 0 } } , { scope : "doctag" , begin : "@param" , end : /$/ , contains : [ {
scope : "variable" , variants : [ { match : n } , { match : /`(?:\\.|[^`\\])+`/ } ] , endsParent : ! 0
} ] } , { scope : "doctag" , match : /@[a-zA-Z]+/ } , { scope : "keyword" , match : /\\[a-zA-Z]+/ } ]
} ) , e . HASH _COMMENT _MODE , { scope : "string" , contains : [ e . BACKSLASH _ESCAPE ] ,
variants : [ e . END _SAME _AS _BEGIN ( { begin : /[rR]"(-*)\(/ , end : /\)(-*)"/
} ) , e . END _SAME _AS _BEGIN ( { begin : /[rR]"(-*)\{/ , end : /\}(-*)"/
} ) , e . END _SAME _AS _BEGIN ( { begin : /[rR]"(-*)\[/ , end : /\](-*)"/
} ) , e . END _SAME _AS _BEGIN ( { begin : /[rR]'(-*)\(/ , end : /\)(-*)'/
} ) , e . END _SAME _AS _BEGIN ( { begin : /[rR]'(-*)\{/ , end : /\}(-*)'/
} ) , e . END _SAME _AS _BEGIN ( { begin : /[rR]'(-*)\[/ , end : /\](-*)'/ } ) , { begin : '"' , end : '"' ,
relevance : 0 } , { begin : "'" , end : "'" , relevance : 0 } ] } , { relevance : 0 , variants : [ { scope : {
1 : "operator" , 2 : "number" } , match : [ s , i ] } , { scope : { 1 : "operator" , 2 : "number" } ,
match : [ /%[^%]*%/ , i ] } , { scope : { 1 : "punctuation" , 2 : "number" } , match : [ t , i ] } , { scope : {
2 : "number" } , match : [ /[^a-zA-Z0-9._]|^/ , i ] } ] } , { scope : { 3 : "operator" } ,
match : [ n , /\s+/ , /<-/ , /\s+/ ] } , { scope : "operator" , relevance : 0 , variants : [ { match : s } , {
match : /%[^%]*%/ } ] } , { scope : "punctuation" , relevance : 0 , match : t } , { begin : "`" , end : "`" ,
2025-01-13 09:56:01 +00:00
contains : [ { begin : /\\./ } ] } ] } } } ) ( ) ; hljs . registerLanguage ( "r" , e ) } ) ( ) ; /*! `ruby` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const n = e . regex , a = "([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)" , s = n . either ( /\b([A-Z]+[a-z0-9]+)+/ , /\b([A-Z]+[a-z0-9]+)+[A-Z]+/ ) , i = n . concat ( s , /(::\w+)*/ ) , t = {
"variable.constant" : [ "__FILE__" , "__LINE__" , "__ENCODING__" ] ,
"variable.language" : [ "self" , "super" ] ,
keyword : [ "alias" , "and" , "begin" , "BEGIN" , "break" , "case" , "class" , "defined" , "do" , "else" , "elsif" , "end" , "END" , "ensure" , "for" , "if" , "in" , "module" , "next" , "not" , "or" , "redo" , "require" , "rescue" , "retry" , "return" , "then" , "undef" , "unless" , "until" , "when" , "while" , "yield" , "include" , "extend" , "prepend" , "public" , "private" , "protected" , "raise" , "throw" ] ,
built _in : [ "proc" , "lambda" , "attr_accessor" , "attr_reader" , "attr_writer" , "define_method" , "private_constant" , "module_function" ] ,
literal : [ "true" , "false" , "nil" ] } , c = { className : "doctag" , begin : "@[A-Za-z]+" } , r = {
begin : "#<" , end : ">" } , b = [ e . COMMENT ( "#" , "$" , { contains : [ c ]
} ) , e . COMMENT ( "^=begin" , "^=end" , { contains : [ c ] , relevance : 10
} ) , e . COMMENT ( "^__END__" , e . MATCH _NOTHING _RE ) ] , l = { className : "subst" , begin : /#\{/ ,
end : /\}/ , keywords : t } , d = { className : "string" , contains : [ e . BACKSLASH _ESCAPE , l ] ,
variants : [ { begin : /'/ , end : /'/ } , { begin : /"/ , end : /"/ } , { begin : /`/ , end : /`/ } , {
begin : /%[qQwWx]?\(/ , end : /\)/ } , { begin : /%[qQwWx]?\[/ , end : /\]/ } , {
begin : /%[qQwWx]?\{/ , end : /\}/ } , { begin : /%[qQwWx]?</ , end : />/ } , { begin : /%[qQwWx]?\// ,
end : /\// } , { begin : /%[qQwWx]?%/ , end : /%/ } , { begin : /%[qQwWx]?-/ , end : /-/ } , {
begin : /%[qQwWx]?\|/ , end : /\|/ } , { begin : /\B\?(\\\d{1,3})/ } , {
begin : /\B\?(\\x[A-Fa-f0-9]{1,2})/ } , { begin : /\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/ } , {
begin : /\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/ } , {
begin : /\B\?\\(c|C-)[\x20-\x7e]/ } , { begin : /\B\?\\?\S/ } , {
begin : n . concat ( /<<[-~]?'?/ , n . lookahead ( /(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/ ) ) ,
contains : [ e . END _SAME _AS _BEGIN ( { begin : /(\w+)/ , end : /(\w+)/ ,
contains : [ e . BACKSLASH _ESCAPE , l ] } ) ] } ] } , o = "[0-9](_?[0-9])*" , g = { className : "number" ,
relevance : 0 , variants : [ {
begin : ` \\ b([1-9](_?[0-9])*|0)( \\ .( ${ o } ))?([eE][+-]?( ${ o } )|r)?i? \\ b ` } , {
begin : "\\b0[dD][0-9](_?[0-9])*r?i?\\b" } , { begin : "\\b0[bB][0-1](_?[0-1])*r?i?\\b"
} , { begin : "\\b0[oO][0-7](_?[0-7])*r?i?\\b" } , {
begin : "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b" } , {
begin : "\\b0(_?[0-7])+r?i?\\b" } ] } , _ = { variants : [ { match : /\(\)/ } , {
className : "params" , begin : /\(/ , end : /(?=\))/ , excludeBegin : ! 0 , endsParent : ! 0 ,
keywords : t } ] } , u = [ d , { variants : [ { match : [ /class\s+/ , i , /\s+<\s+/ , i ] } , {
match : [ /\b(class|module)\s+/ , i ] } ] , scope : { 2 : "title.class" ,
4 : "title.class.inherited" } , keywords : t } , { match : [ /(include|extend)\s+/ , i ] , scope : {
2 : "title.class" } , keywords : t } , { relevance : 0 , match : [ i , /\.new[. (]/ ] , scope : {
1 : "title.class" } } , { relevance : 0 , match : /\b[A-Z][A-Z_0-9]+\b/ ,
className : "variable.constant" } , { relevance : 0 , match : s , scope : "title.class" } , {
match : [ /def/ , /\s+/ , a ] , scope : { 1 : "keyword" , 3 : "title.function" } , contains : [ _ ] } , {
begin : e . IDENT _RE + "::" } , { className : "symbol" ,
begin : e . UNDERSCORE _IDENT _RE + "(!|\\?)?:" , relevance : 0 } , { className : "symbol" ,
begin : ":(?!\\s)" , contains : [ d , { begin : a } ] , relevance : 0 } , g , { className : "variable" ,
begin : "(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])" } , {
className : "params" , begin : /\|/ , end : /\|/ , excludeBegin : ! 0 , excludeEnd : ! 0 ,
relevance : 0 , keywords : t } , { begin : "(" + e . RE _STARTERS _RE + "|unless)\\s*" ,
keywords : "unless" , contains : [ { className : "regexp" , contains : [ e . BACKSLASH _ESCAPE , l ] ,
illegal : /\n/ , variants : [ { begin : "/" , end : "/[a-z]*" } , { begin : /%r\{/ , end : /\}[a-z]*/ } , {
begin : "%r\\(" , end : "\\)[a-z]*" } , { begin : "%r!" , end : "![a-z]*" } , { begin : "%r\\[" ,
end : "\\][a-z]*" } ] } ] . concat ( r , b ) , relevance : 0 } ] . concat ( r , b )
; l . contains = u , _ . contains = u ; const m = [ { begin : /^\s*=>/ , starts : { end : "$" , contains : u }
} , { className : "meta.prompt" ,
begin : "^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])" ,
starts : { end : "$" , keywords : t , contains : u } } ] ; return b . unshift ( r ) , { name : "Ruby" ,
aliases : [ "rb" , "gemspec" , "podspec" , "thor" , "irb" ] , keywords : t , illegal : /\/\*/ ,
contains : [ e . SHEBANG ( { binary : "ruby" } ) ] . concat ( m ) . concat ( b ) . concat ( u ) } } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "ruby" , e ) } ) ( ) ; /*! `rust` grammar compiled for Highlight.js 11.10.0 */
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const t = e . regex , n = /(r#)?/ , a = t . concat ( n , e . UNDERSCORE _IDENT _RE ) , i = t . concat ( n , e . IDENT _RE ) , r = {
2024-06-20 14:10:42 +00:00
className : "title.function.invoke" , relevance : 0 ,
2025-01-13 09:56:01 +00:00
begin : t . concat ( /\b/ , /(?!let|for|while|if|else|match\b)/ , i , t . lookahead ( /\s*\(/ ) )
} , s = "([ui](8|16|32|64|128|size)|f(32|64))?" , l = [ "drop " , "Copy" , "Send" , "Sized" , "Sync" , "Drop" , "Fn" , "FnMut" , "FnOnce" , "ToOwned" , "Clone" , "Debug" , "PartialEq" , "PartialOrd" , "Eq" , "Ord" , "AsRef" , "AsMut" , "Into" , "From" , "Default" , "Iterator" , "Extend" , "IntoIterator" , "DoubleEndedIterator" , "ExactSizeIterator" , "SliceConcatExt" , "ToString" , "assert!" , "assert_eq!" , "bitflags!" , "bytes!" , "cfg!" , "col!" , "concat!" , "concat_idents!" , "debug_assert!" , "debug_assert_eq!" , "env!" , "eprintln!" , "panic!" , "file!" , "format!" , "format_args!" , "include_bytes!" , "include_str!" , "line!" , "local_data_key!" , "module_path!" , "option_env!" , "print!" , "println!" , "select!" , "stringify!" , "try!" , "unimplemented!" , "unreachable!" , "vec!" , "write!" , "writeln!" , "macro_rules!" , "assert_ne!" , "debug_assert_ne!" ] , o = [ "i8" , "i16" , "i32" , "i64" , "i128" , "isize" , "u8" , "u16" , "u32" , "u64" , "u128" , "usize" , "f32" , "f64" , "str" , "char" , "bool" , "Box" , "Option" , "Result" , "String" , "Vec" ]
; return { name : "Rust" , aliases : [ "rs" ] , keywords : { $pattern : e . IDENT _RE + "!?" , type : o ,
keyword : [ "abstract" , "as" , "async" , "await" , "become" , "box" , "break" , "const" , "continue" , "crate" , "do" , "dyn" , "else" , "enum" , "extern" , "false" , "final" , "fn" , "for" , "if" , "impl" , "in" , "let" , "loop" , "macro" , "match" , "mod" , "move" , "mut" , "override" , "priv" , "pub" , "ref" , "return" , "self" , "Self" , "static" , "struct" , "super" , "trait" , "true" , "try" , "type" , "typeof" , "union" , "unsafe" , "unsized" , "use" , "virtual" , "where" , "while" , "yield" ] ,
literal : [ "true" , "false" , "Some" , "None" , "Ok" , "Err" ] , built _in : l } , illegal : "</" ,
2024-06-20 14:10:42 +00:00
contains : [ e . C _LINE _COMMENT _MODE , e . COMMENT ( "/\\*" , "\\*/" , { contains : [ "self" ]
} ) , e . inherit ( e . QUOTE _STRING _MODE , { begin : /b?"/ , illegal : null } ) , {
className : "string" , variants : [ { begin : /b?r(#*)"(.|\n)*?"\1(?!#)/ } , {
begin : /b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/ } ] } , { className : "symbol" ,
begin : /'[a-zA-Z_][a-zA-Z0-9_]*/ } , { className : "number" , variants : [ {
2025-01-13 09:56:01 +00:00
begin : "\\b0b([01_]+)" + s } , { begin : "\\b0o([0-7_]+)" + s } , {
begin : "\\b0x([A-Fa-f0-9_]+)" + s } , {
begin : "\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)" + s } ] , relevance : 0 } , {
begin : [ /fn/ , /\s+/ , a ] , className : { 1 : "keyword" , 3 : "title.function" } } , {
className : "meta" , begin : "#!?\\[" , end : "\\]" , contains : [ { className : "string" ,
begin : /"/ , end : /"/ , contains : [ e . BACKSLASH _ESCAPE ] } ] } , {
begin : [ /let/ , /\s+/ , /(?:mut\s+)?/ , a ] , className : { 1 : "keyword" , 3 : "keyword" ,
4 : "variable" } } , { begin : [ /for/ , /\s+/ , a , /\s+/ , /in/ ] , className : { 1 : "keyword" ,
3 : "variable" , 5 : "keyword" } } , { begin : [ /type/ , /\s+/ , a ] , className : { 1 : "keyword" ,
3 : "title.class" } } , { begin : [ /(?:trait|enum|struct|union|impl|for)/ , /\s+/ , a ] ,
2024-06-20 14:10:42 +00:00
className : { 1 : "keyword" , 3 : "title.class" } } , { begin : e . IDENT _RE + "::" , keywords : {
2025-01-13 09:56:01 +00:00
keyword : "Self" , built _in : l , type : o } } , { className : "punctuation" , begin : "->" } , r ] } } } ) ( )
; hljs . registerLanguage ( "rust" , e ) } ) ( ) ; /*! `scss` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
2025-01-13 09:56:01 +00:00
; const e = [ "a" , "abbr" , "address" , "article" , "aside" , "audio" , "b" , "blockquote" , "body" , "button" , "canvas" , "caption" , "cite" , "code" , "dd" , "del" , "details" , "dfn" , "div" , "dl" , "dt" , "em" , "fieldset" , "figcaption" , "figure" , "footer" , "form" , "h1" , "h2" , "h3" , "h4" , "h5" , "h6" , "header" , "hgroup" , "html" , "i" , "iframe" , "img" , "input" , "ins" , "kbd" , "label" , "legend" , "li" , "main" , "mark" , "menu" , "nav" , "object" , "ol" , "optgroup" , "option" , "p" , "picture" , "q" , "quote" , "samp" , "section" , "select" , "source" , "span" , "strong" , "summary" , "sup" , "table" , "tbody" , "td" , "textarea" , "tfoot" , "th" , "thead" , "time" , "tr" , "ul" , "var" , "video" , "defs" , "g" , "marker" , "mask" , "pattern" , "svg" , "switch" , "symbol" , "feBlend" , "feColorMatrix" , "feComponentTransfer" , "feComposite" , "feConvolveMatrix" , "feDiffuseLighting" , "feDisplacementMap" , "feFlood" , "feGaussianBlur" , "feImage" , "feMerge" , "feMorphology" , "feOffset" , "feSpecularLighting" , "feTile" , "feTurbulence" , "linearGradient" , "radialGradient" , "stop" , "circle" , "ellipse" , "image" , "line" , "path" , "polygon" , "polyline" , "rect" , "text" , "use" , "textPath" , "tspan" , "foreignObject" , "clipPath" ] , r = [ "any-hover" , "any-pointer" , "aspect-ratio" , "color" , "color-gamut" , "color-index" , "device-aspect-ratio" , "device-height" , "device-width" , "display-mode" , "forced-colors" , "grid" , "height" , "hover" , "inverted-colors" , "monochrome" , "orientation" , "overflow-block" , "overflow-inline" , "pointer" , "prefers-color-scheme" , "prefers-contrast" , "prefers-reduced-motion" , "prefers-reduced-transparency" , "resolution" , "scan" , "scripting" , "update" , "width" , "min-width" , "max-width" , "min-height" , "max-height" ] . sort ( ) . reverse ( ) , t = [ "active" , "any-link" , "blank" , "checked" , "current" , "default" , "defined" , "dir" , "disabled" , "drop" , "empty" , "enabled" , "first" , "first-child" , "first-of-type" , "fullscreen" , "future" , "focus" , "focus-visible" , "focus-within" , "has" , "host" , "host-context" , "hover" , "indeterminate" , "in-range" , "invalid" , "is" , "lang" , "last-child" , "last-of-type" , "left" , "link" , "local-link" , "not" , "nth-child" , "nth-col" , "nth-last-child" , "nth-last-col" , "nth-last-of-type" , "nth-of-type" , "only-child" , "only-of-type" , "optional" , "out-of-range" , "past" , "placeholder-shown" , "read-only" , "read-write" , "required" , "right" , "root" , "scope" , "target" , "target-within" , "user-invalid" , "valid" , "visited" , "where" ] . sort ( ) . reverse ( ) , i = [ "after" , "backdrop" , "before" , "cue" , "cue-region" , "first-letter" , "first-line" , "grammar-error" , "marker" , "part" , "placeholder" , "selection" , "slotted" , "spelling-error" ] . sort ( ) . reverse ( ) , o = [ "accent-color" , "align-content" , "align-items" , "align-self" , "alignment-baseline" , "all" , "animation" , "animation-delay" , "animation-direction" , "animation-duration" , "animation-fill-mode" , "animation-iteration-count" , "animation-name" , "animation-play-state" , "animation-timing-function" , "appearance" , "backface-visibility" , "background" , "background-attachment" , "background-blend-mode" , "background-clip" , "background-color" , "background-image" , "background-origin" , "background-position" , "background-repeat" , "background-size" , "baseline-shift" , "block-size" , "border" , "border-block" , "border-block-color" , "border-block-end" , "border-block-end-color" , "border-block-end-style" , "border-block-end-width" , "border-block-start" , "border-block-start-color" , "border-block-start-style" , "border-block-start-width" , "border-block-style" , "border-block-width" , "border-bottom" , "border-bottom-color" , "border-bottom-left-radius" , "border-bottom-right-radius" , "border-bottom-style" , "border-bottom-width" , "border-collapse" , "border-color" , "border-image" , "border-image-outset" , "border-image-repeat" , "border-image-slice" , "border-image-source" , "border-image-width" , "border-inline" , "border-inline-color" , "border-inline-end" , "border-inline-end-color" , "border-inline-end-style" , "border-inline-end-width" , "border-inline-start" , "border-inline-start-color" , "border-inline-start-style" , "border-inline-start-width" , "border-inline-style" , "border-inline-width" , "border-left" , "border-left-color" , "border-left-style" , "border-left-width" , "border-radius" , "border-right" , "border-end-end-radius" , "border-end-start-radius" , "border-right-color" , "border-right-style" , "border-right-width" , "border-spacing" , "border-start-end-radius" , "border-start-start-radius" , "border-style"
2024-06-20 14:10:42 +00:00
; return n => { const a = ( e => ( { IMPORTANT : { scope : "meta" , begin : "!important" } ,
BLOCK _COMMENT : e . C _BLOCK _COMMENT _MODE , HEXCOLOR : { scope : "number" ,
begin : /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/ } , FUNCTION _DISPATCH : {
className : "built_in" , begin : /[\w-]+(?=\()/ } , ATTRIBUTE _SELECTOR _MODE : {
scope : "selector-attr" , begin : /\[/ , end : /\]/ , illegal : "$" ,
contains : [ e . APOS _STRING _MODE , e . QUOTE _STRING _MODE ] } , CSS _NUMBER _MODE : {
scope : "number" ,
begin : e . NUMBER _RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?" ,
relevance : 0 } , CSS _VARIABLE : { className : "attr" , begin : /--[A-Za-z_][A-Za-z0-9_-]*/ }
2025-01-13 09:56:01 +00:00
} ) ) ( n ) , l = i , s = t , d = "@[a-z-]+" , c = { className : "variable" ,
2024-06-20 14:10:42 +00:00
begin : "(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b" , relevance : 0 } ; return { name : "SCSS" ,
case _insensitive : ! 0 , illegal : "[=/|']" ,
contains : [ n . C _LINE _COMMENT _MODE , n . C _BLOCK _COMMENT _MODE , a . CSS _NUMBER _MODE , {
className : "selector-id" , begin : "#[A-Za-z0-9_-]+" , relevance : 0 } , {
className : "selector-class" , begin : "\\.[A-Za-z0-9_-]+" , relevance : 0
} , a . ATTRIBUTE _SELECTOR _MODE , { className : "selector-tag" ,
begin : "\\b(" + e . join ( "|" ) + ")\\b" , relevance : 0 } , { className : "selector-pseudo" ,
begin : ":(" + s . join ( "|" ) + ")" } , { className : "selector-pseudo" ,
begin : ":(:)?(" + l . join ( "|" ) + ")" } , c , { begin : /\(/ , end : /\)/ ,
contains : [ a . CSS _NUMBER _MODE ] } , a . CSS _VARIABLE , { className : "attribute" ,
begin : "\\b(" + o . join ( "|" ) + ")\\b" } , {
begin : "\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"
} , { begin : /:/ , end : /[;}{]/ , relevance : 0 ,
contains : [ a . BLOCK _COMMENT , c , a . HEXCOLOR , a . CSS _NUMBER _MODE , n . QUOTE _STRING _MODE , n . APOS _STRING _MODE , a . IMPORTANT , a . FUNCTION _DISPATCH ]
} , { begin : "@(page|font-face)" , keywords : { $pattern : d , keyword : "@page @font-face" } } , {
begin : "@" , end : "[{;]" , returnBegin : ! 0 , keywords : { $pattern : /[a-z-]+/ ,
keyword : "and or not only" , attribute : r . join ( " " ) } , contains : [ { begin : d ,
className : "keyword" } , { begin : /[a-z-]+(?=:)/ , className : "attribute"
} , c , n . QUOTE _STRING _MODE , n . APOS _STRING _MODE , a . HEXCOLOR , a . CSS _NUMBER _MODE ]
2025-01-13 09:56:01 +00:00
} , a . FUNCTION _DISPATCH ] } } } ) ( ) ; hljs . registerLanguage ( "scss" , e ) } ) ( ) ; /*! `shell` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var s = ( ( ) => { "use strict" ; return s => ( { name : "Shell Session" ,
aliases : [ "console" , "shellsession" ] , contains : [ { className : "meta.prompt" ,
begin : /^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/ , starts : { end : /[^\\](?=\s*$)/ ,
2025-01-13 09:56:01 +00:00
subLanguage : "bash" } } ] } ) } ) ( ) ; hljs . registerLanguage ( "shell" , s ) } ) ( ) ; /*! `sql` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const r = e . regex , t = e . COMMENT ( "--" , "$" ) , n = [ "true" , "false" , "unknown" ] , a = [ "bigint" , "binary" , "blob" , "boolean" , "char" , "character" , "clob" , "date" , "dec" , "decfloat" , "decimal" , "float" , "int" , "integer" , "interval" , "nchar" , "nclob" , "national" , "numeric" , "real" , "row" , "smallint" , "time" , "timestamp" , "varchar" , "varying" , "varbinary" ] , i = [ "abs" , "acos" , "array_agg" , "asin" , "atan" , "avg" , "cast" , "ceil" , "ceiling" , "coalesce" , "corr" , "cos" , "cosh" , "count" , "covar_pop" , "covar_samp" , "cume_dist" , "dense_rank" , "deref" , "element" , "exp" , "extract" , "first_value" , "floor" , "json_array" , "json_arrayagg" , "json_exists" , "json_object" , "json_objectagg" , "json_query" , "json_table" , "json_table_primitive" , "json_value" , "lag" , "last_value" , "lead" , "listagg" , "ln" , "log" , "log10" , "lower" , "max" , "min" , "mod" , "nth_value" , "ntile" , "nullif" , "percent_rank" , "percentile_cont" , "percentile_disc" , "position" , "position_regex" , "power" , "rank" , "regr_avgx" , "regr_avgy" , "regr_count" , "regr_intercept" , "regr_r2" , "regr_slope" , "regr_sxx" , "regr_sxy" , "regr_syy" , "row_number" , "sin" , "sinh" , "sqrt" , "stddev_pop" , "stddev_samp" , "substring" , "substring_regex" , "sum" , "tan" , "tanh" , "translate" , "translate_regex" , "treat" , "trim" , "trim_array" , "unnest" , "upper" , "value_of" , "var_pop" , "var_samp" , "width_bucket" ] , s = [ "create table" , "insert into" , "primary key" , "foreign key" , "not null" , "alter table" , "add constraint" , "grouping sets" , "on overflow" , "character set" , "respect nulls" , "ignore nulls" , "nulls first" , "nulls last" , "depth first" , "breadth first" ] , o = i , c = [ "abs" , "acos" , "all" , "allocate" , "alter" , "and" , "any" , "are" , "array" , "array_agg" , "array_max_cardinality" , "as" , "asensitive" , "asin" , "asymmetric" , "at" , "atan" , "atomic" , "authorization" , "avg" , "begin" , "begin_frame" , "begin_partition" , "between" , "bigint" , "binary" , "blob" , "boolean" , "both" , "by" , "call" , "called" , "cardinality" , "cascaded" , "case" , "cast" , "ceil" , "ceiling" , "char" , "char_length" , "character" , "character_length" , "check" , "classifier" , "clob" , "close" , "coalesce" , "collate" , "collect" , "column" , "commit" , "condition" , "connect" , "constraint" , "contains" , "convert" , "copy" , "corr" , "corresponding" , "cos" , "cosh" , "count" , "covar_pop" , "covar_samp" , "create" , "cross" , "cube" , "cume_dist" , "current" , "current_catalog" , "current_date" , "current_default_transform_group" , "current_path" , "current_role" , "current_row" , "current_schema" , "current_time" , "current_timestamp" , "current_path" , "current_role" , "current_transform_group_for_type" , "current_user" , "cursor" , "cycle" , "date" , "day" , "deallocate" , "dec" , "decimal" , "decfloat" , "declare" , "default" , "define" , "delete" , "dense_rank" , "deref" , "describe" , "deterministic" , "disconnect" , "distinct" , "double" , "drop" , "dynamic" , "each" , "element" , "else" , "empty" , "end" , "end_frame" , "end_partition" , "end-exec" , "equals" , "escape" , "every" , "except" , "exec" , "execute" , "exists" , "exp" , "external" , "extract" , "false" , "fetch" , "filter" , "first_value" , "float" , "floor" , "for" , "foreign" , "frame_row" , "free" , "from" , "full" , "function" , "fusion" , "get" , "global" , "grant" , "group" , "grouping" , "groups" , "having" , "hold" , "hour" , "identity" , "in" , "indicator" , "initial" , "inner" , "inout" , "insensitive" , "insert" , "int" , "integer" , "intersect" , "intersection" , "interval" , "into" , "is" , "join" , "json_array" , "json_arrayagg" , "json_exists" , "json_object" , "json_objectagg" , "json_query" , "json_table" , "json_table_primitive" , "json_value" , "lag" , "language" , "large" , "last_value" , "lateral" , "lead" , "leading" , "left" , "like" , "like_regex" , "listagg" , "ln" , "local" , "localtime" , "localtimestamp" , "log" , "log10" , "lower" , "match" , "match_number" , "match_recognize" , "matches" , "max" , "member" , "merge" , "method" , "min" , "minute" , "mod" , "modifies" , "module" , "month" , "multiset" , "national" , "natural" , "nchar" , "nclob" , "new" , "no" , "none" , "normalize" , "not" , "nth_value" , "ntile" , "null" , "nullif" , "numeric" , "octet_length" , "occurrences_regex" , "of" , "offset" , "old" , "omit" , "on" , "one" , "only" , "open" , "or" , "order" , "out" , "outer" , "over" , "overlaps" , "overlay" , "parameter" , "partition" , "pattern" , "per" , "percent" , "percent_rank" , "percentile_cont" , "percentile_disc" , "period" , "portion" , "position" , "position_regex" , "power" , "precedes" , "precision" , "prepare" , "primary" , "procedure" , "ptf" , "range" , "rank" , "reads" , "real" , "recursive" , "ref" , "references" , "referencing" , "regr_avgx" , " r
begin : r . concat ( /\b/ , r . either ( ... o ) , /\s*\(/ ) , relevance : 0 , keywords : { built _in : o } }
; return { name : "SQL" , case _insensitive : ! 0 , illegal : /[{}]|<\// , keywords : {
$pattern : /\b[\w\.]+/ , keyword : ( ( e , { exceptions : r , when : t } = { } ) => { const n = t
; return r = r || [ ] , e . map ( ( e => e . match ( /\|\d+$/ ) || r . includes ( e ) ? e : n ( e ) ? e + "|0" : e ) )
} ) ( c , { when : e => e . length < 3 } ) , literal : n , type : a ,
built _in : [ "current_catalog" , "current_date" , "current_default_transform_group" , "current_path" , "current_role" , "current_schema" , "current_transform_group_for_type" , "current_user" , "session_user" , "system_time" , "system_user" , "current_time" , "localtime" , "current_timestamp" , "localtimestamp" ]
} , contains : [ { begin : r . either ( ... s ) , relevance : 0 , keywords : { $pattern : /[\w\.]+/ ,
keyword : c . concat ( s ) , literal : n , type : a } } , { className : "type" ,
begin : r . either ( "double precision" , "large object" , "with timezone" , "without timezone" )
} , l , { className : "variable" , begin : /@[a-z0-9][a-z0-9_]*/ } , { className : "string" ,
variants : [ { begin : /'/ , end : /'/ , contains : [ { begin : /''/ } ] } ] } , { begin : /"/ , end : /"/ ,
contains : [ { begin : /""/ } ] } , e . C _NUMBER _MODE , e . C _BLOCK _COMMENT _MODE , t , {
className : "operator" , begin : /[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/ ,
2025-01-13 09:56:01 +00:00
relevance : 0 } ] } } } ) ( ) ; hljs . registerLanguage ( "sql" , e ) } ) ( ) ; /*! `swift` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; function e ( e ) {
return e ? "string" == typeof e ? e : e . source : null } function n ( e ) { return t ( "(?=" , e , ")" ) }
function t ( ... n ) { return n . map ( ( n => e ( n ) ) ) . join ( "" ) } function a ( ... n ) { const t = ( e => {
const n = e [ e . length - 1 ]
; return "object" == typeof n && n . constructor === Object ? ( e . splice ( e . length - 1 , 1 ) , n ) : { }
} ) ( n ) ; return "(" + ( t . capture ? "" : "?:" ) + n . map ( ( n => e ( n ) ) ) . join ( "|" ) + ")" }
2025-01-13 09:56:01 +00:00
const i = e => t ( /\b/ , e , /\w$/ . test ( e ) ? /\b/ : /\B/ ) , s = [ "Protocol" , "Type" ] . map ( i ) , c = [ "init" , "self" ] . map ( i ) , u = [ "Any" , "Self" ] , o = [ "actor" , "any" , "associatedtype" , "async" , "await" , /as\?/ , /as!/ , "as" , "borrowing" , "break" , "case" , "catch" , "class" , "consume" , "consuming" , "continue" , "convenience" , "copy" , "default" , "defer" , "deinit" , "didSet" , "distributed" , "do" , "dynamic" , "each" , "else" , "enum" , "extension" , "fallthrough" , /fileprivate\(set\)/ , "fileprivate" , "final" , "for" , "func" , "get" , "guard" , "if" , "import" , "indirect" , "infix" , /init\?/ , /init!/ , "inout" , /internal\(set\)/ , "internal" , "in" , "is" , "isolated" , "nonisolated" , "lazy" , "let" , "macro" , "mutating" , "nonmutating" , /open\(set\)/ , "open" , "operator" , "optional" , "override" , "package" , "postfix" , "precedencegroup" , "prefix" , /private\(set\)/ , "private" , "protocol" , /public\(set\)/ , "public" , "repeat" , "required" , "rethrows" , "return" , "set" , "some" , "static" , "struct" , "subscript" , "super" , "switch" , "throws" , "throw" , /try\?/ , /try!/ , "try" , "typealias" , /unowned\(safe\)/ , /unowned\(unsafe\)/ , "unowned" , "var" , "weak" , "where" , "while" , "willSet" ] , r = [ "false" , "nil" , "true" ] , l = [ "assignment" , "associativity" , "higherThan" , "left" , "lowerThan" , "none" , "right" ] , m = [ "#colorLiteral" , "#column" , "#dsohandle" , "#else" , "#elseif" , "#endif" , "#error" , "#file" , "#fileID" , "#fileLiteral" , "#filePath" , "#function" , "#if" , "#imageLiteral" , "#keyPath" , "#line" , "#selector" , "#sourceLocation" , "#warning" ] , p = [ "abs" , "all" , "any" , "assert" , "assertionFailure" , "debugPrint" , "dump" , "fatalError" , "getVaList" , "isKnownUniquelyReferenced" , "max" , "min" , "numericCast" , "pointwiseMax" , "pointwiseMin" , "precondition" , "preconditionFailure" , "print" , "readLine" , "repeatElement" , "sequence" , "stride" , "swap" , "swift_unboxFromSwiftValueWithType" , "transcode" , "type" , "unsafeBitCast" , "unsafeDowncast" , "withExtendedLifetime" , "withUnsafeMutablePointer" , "withUnsafePointer" , "withVaList" , "withoutActuallyEscaping" , "zip" ] , d = a ( /[/=\-+!*%<>&|^~?]/ , /[\u00A1-\u00A7]/ , /[\u00A9\u00AB]/ , /[\u00AC\u00AE]/ , /[\u00B0\u00B1]/ , /[\u00B6\u00BB\u00BF\u00D7\u00F7]/ , /[\u2016-\u2017]/ , /[\u2020-\u2027]/ , /[\u2030-\u203E]/ , /[\u2041-\u2053]/ , /[\u2055-\u205E]/ , /[\u2190-\u23FF]/ , /[\u2500-\u2775]/ , /[\u2794-\u2BFF]/ , /[\u2E00-\u2E7F]/ , /[\u3001-\u3003]/ , /[\u3008-\u3020]/ , /[\u3030]/ ) , F = a ( d , /[\u0300-\u036F]/ , /[\u1DC0-\u1DFF]/ , /[\u20D0-\u20FF]/ , /[\uFE00-\uFE0F]/ , /[\uFE20-\uFE2F]/ ) , b = t ( d , F , "*" ) , h = a ( /[a-zA-Z_]/ , /[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/ , /[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/ , /[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/ , /[\u1E00-\u1FFF]/ , /[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/ , /[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/ , /[\u2C00-\u2DFF\u2E80-\u2FFF]/ , /[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/ , /[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/ , /[\uFE47-\uFEFE\uFF00-\uFFFD]/ ) , f = a ( h , /\d/ , /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/ ) , w = t ( h , f , "*" ) , g = t ( /[A-Z]/ , f , "*" ) , y = [ "attached" , "autoclosure" , t ( /convention\(/ , a ( "swift" , "block" , "c" ) , /\)/ ) , "discardableResult" , "dynamicCallable" , "dynamicMemberLookup" , "escaping" , "freestanding" , "frozen" , "GKInspectable" , "IBAction" , "IBDesignable" , "IBInspectable" , "IBOutlet" , "IBSegueAction" , "inlinable" , "main" , "nonobjc" , "NSApplicationMain" , "NSCopying" , "NSManaged" , t ( /objc\(/ , w , /\)/ ) , "objc" , "objcMembers" , "propertyWrapper" , "requires_stored_property_inits" , "resultBuilder" , "Sendable" , "testable" , "UIApplicationMain" , "unchecked" , "unknown" , "usableFromInline" , "warn_unqualified_access" ] , v = [ "iOS" , "iOSApplicationExtension" , "macOS" , "macOSApplicationExtension" , "macCatalyst" , "macCatalystApplicationExtension" , "watchOS" , "watchOSApplicationExtension" , "tvOS" , "tvOSApplicationExtension" , "swift" ]
2024-06-20 14:10:42 +00:00
; return e => { const d = { match : /\s+/ , relevance : 0 } , h = e . COMMENT ( "/\\*" , "\\*/" , {
2025-01-13 09:56:01 +00:00
contains : [ "self" ] } ) , E = [ e . C _LINE _COMMENT _MODE , h ] , A = { match : [ /\./ , a ( ... s , ... c ) ] ,
className : { 2 : "keyword" } } , C = { match : t ( /\./ , a ( ... o ) ) , relevance : 0
} , k = o . filter ( ( e => "string" == typeof e ) ) . concat ( [ "_|0" ] ) , N = { variants : [ {
2024-06-20 14:10:42 +00:00
className : "keyword" ,
2025-01-13 09:56:01 +00:00
match : a ( ... o . filter ( ( e => "string" != typeof e ) ) . concat ( u ) . map ( i ) , ... c ) } ] } , S = {
$pattern : a ( /\b\w+/ , /#\w+/ ) , keyword : k . concat ( m ) , literal : r } , B = [ A , C , N ] , D = [ {
2024-06-20 14:10:42 +00:00
match : t ( /\./ , a ( ... p ) ) , relevance : 0 } , { className : "built_in" ,
match : t ( /\b/ , a ( ... p ) , /(?=\()/ ) } ] , _ = { match : /->/ , relevance : 0 } , M = [ _ , {
className : "operator" , relevance : 0 , variants : [ { match : b } , { match : ` \\ .( \\ .| ${ F } )+ ` } ]
2025-01-13 09:56:01 +00:00
} ] , x = "([0-9]_*)+" , L = "([0-9a-fA-F]_*)+" , $ = { className : "number" , relevance : 0 ,
2024-06-20 14:10:42 +00:00
variants : [ { match : ` \\ b( ${ x } )( \\ .( ${ x } ))?([eE][+-]?( ${ x } ))? \\ b ` } , {
2025-01-13 09:56:01 +00:00
match : ` \\ b0x( ${ L } )( \\ .( ${ L } ))?([pP][+-]?( ${ x } ))? \\ b ` } , { match : /\b0o([0-7]_*)+\b/
2024-06-20 14:10:42 +00:00
} , { match : /\b0b([01]_*)+\b/ } ] } , I = ( e = "" ) => ( { className : "subst" , variants : [ {
match : t ( /\\/ , e , /[0\\tnr"']/ ) } , { match : t ( /\\/ , e , /u\{[0-9a-fA-F]{1,8}\}/ ) } ]
} ) , O = ( e = "" ) => ( { className : "subst" , match : t ( /\\/ , e , /[\t ]*(?:[\r\n]|\r\n)/ )
} ) , P = ( e = "" ) => ( { className : "subst" , label : "interpol" , begin : t ( /\\/ , e , /\(/ ) , end : /\)/
2025-01-13 09:56:01 +00:00
} ) , j = ( e = "" ) => ( { begin : t ( e , /"""/ ) , end : t ( /"""/ , e ) , contains : [ I ( e ) , O ( e ) , P ( e ) ]
} ) , K = ( e = "" ) => ( { begin : t ( e , /"/ ) , end : t ( /"/ , e ) , contains : [ I ( e ) , P ( e ) ] } ) , T = {
2024-06-20 14:10:42 +00:00
className : "string" ,
2025-01-13 09:56:01 +00:00
variants : [ j ( ) , j ( "#" ) , j ( "##" ) , j ( "###" ) , K ( ) , K ( "#" ) , K ( "##" ) , K ( "###" ) ]
} , q = [ e . BACKSLASH _ESCAPE , { begin : /\[/ , end : /\]/ , relevance : 0 ,
contains : [ e . BACKSLASH _ESCAPE ] } ] , U = { begin : /\/[^\s](?=[^/\n]*\/)/ , end : /\// ,
contains : q } , z = e => { const n = t ( e , /\// ) , a = t ( /\// , e ) ; return { begin : n , end : a ,
contains : [ ... q , { scope : "comment" , begin : ` #(?!.* ${ a } ) ` , end : /$/ } ] } } , V = {
scope : "regexp" , variants : [ z ( "###" ) , z ( "##" ) , z ( "#" ) , U ] } , W = { match : t ( /`/ , w , /`/ )
} , Z = [ W , { className : "variable" , match : /\$\d+/ } , { className : "variable" ,
2024-06-20 14:10:42 +00:00
match : ` \\ $ ${ f } + ` } ] , G = [ { match : /(@|#(un)?)available/ , scope : "keyword" , starts : {
2025-01-13 09:56:01 +00:00
contains : [ { begin : /\(/ , end : /\)/ , keywords : v , contains : [ ... M , $ , T ] } ] } } , {
scope : "keyword" , match : t ( /@/ , a ( ... y ) , n ( a ( /\(/ , /\s+/ ) ) ) } , { scope : "meta" ,
match : t ( /@/ , w ) } ] , H = { match : n ( /\b[A-Z]/ ) , relevance : 0 , contains : [ { className : "type" ,
2024-06-20 14:10:42 +00:00
match : t ( /(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/ , f , "+" )
} , { className : "type" , match : g , relevance : 0 } , { match : /[?!]+/ , relevance : 0 } , {
match : /\.\.\./ , relevance : 0 } , { match : t ( /\s+&\s+/ , n ( g ) ) , relevance : 0 } ] } , R = {
2025-01-13 09:56:01 +00:00
begin : /</ , end : />/ , keywords : S , contains : [ ... E , ... B , ... G , _ , H ] } ; H . contains . push ( R )
; const X = { begin : /\(/ , end : /\)/ , relevance : 0 , keywords : S , contains : [ "self" , {
2024-06-20 14:10:42 +00:00
match : t ( w , /\s*:/ ) , keywords : "_|0" , relevance : 0
2025-01-13 09:56:01 +00:00
} , ... E , V , ... B , ... D , ... M , $ , T , ... Z , ... G , H ] } , J = { begin : /</ , end : />/ ,
keywords : "repeat each" , contains : [ ... E , H ] } , Q = { begin : /\(/ , end : /\)/ , keywords : S ,
2024-06-20 14:10:42 +00:00
contains : [ { begin : a ( n ( t ( w , /\s*:/ ) ) , n ( t ( w , /\s+/ , w , /\s*:/ ) ) ) , end : /:/ , relevance : 0 ,
contains : [ { className : "keyword" , match : /\b_\b/ } , { className : "params" , match : w } ]
2025-01-13 09:56:01 +00:00
} , ... E , ... B , ... M , $ , T , ... G , H , X ] , endsParent : ! 0 , illegal : /["']/ } , Y = {
match : [ /(func|macro)/ , /\s+/ , a ( W . match , w , b ) ] , className : { 1 : "keyword" ,
2024-06-20 14:10:42 +00:00
3 : "title.function" } , contains : [ J , Q , d ] , illegal : [ /\[/ , /%/ ] } , ee = {
match : [ /\b(?:subscript|init[?!]?)/ , /\s*(?=[<(])/ ] , className : { 1 : "keyword" } ,
contains : [ J , Q , d ] , illegal : /\[|%/ } , ne = { match : [ /operator/ , /\s+/ , b ] , className : {
1 : "keyword" , 3 : "title" } } , te = { begin : [ /precedencegroup/ , /\s+/ , g ] , className : {
2025-01-13 09:56:01 +00:00
1 : "keyword" , 3 : "title" } , contains : [ H ] , keywords : [ ... l , ... r ] , end : /}/ } , ae = {
begin : [ /(struct|protocol|class|extension|enum|actor)/ , /\s+/ , w , /\s*/ ] ,
beginScope : { 1 : "keyword" , 3 : "title.class" } , keywords : S , contains : [ J , ... B , { begin : /:/ ,
end : /\{/ , keywords : S , contains : [ { scope : "title.class.inherited" , match : g } , ... B ] ,
relevance : 0 } ] } ; for ( const e of T . variants ) {
const n = e . contains . find ( ( e => "interpol" === e . label ) ) ; n . keywords = S
; const t = [ ... B , ... D , ... M , $ , T , ... Z ] ; n . contains = [ ... t , { begin : /\(/ , end : /\)/ ,
contains : [ "self" , ... t ] } ] } return { name : "Swift" , keywords : S ,
contains : [ ... E , Y , ee , ae , ne , te , { beginKeywords : "import" , end : /$/ , contains : [ ... E ] ,
relevance : 0 } , V , ... B , ... D , ... M , $ , T , ... Z , ... G , H , X ] } } } ) ( )
; hljs . registerLanguage ( "swift" , e ) } ) ( ) ; /*! `twig` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const a = e . regex , t = [ "absolute_url" , "asset|0" , "asset_version" , "attribute" , "block" , "constant" , "controller|0" , "country_timezones" , "csrf_token" , "cycle" , "date" , "dump" , "expression" , "form|0" , "form_end" , "form_errors" , "form_help" , "form_label" , "form_rest" , "form_row" , "form_start" , "form_widget" , "html_classes" , "include" , "is_granted" , "logout_path" , "logout_url" , "max" , "min" , "parent" , "path|0" , "random" , "range" , "relative_path" , "render" , "render_esi" , "source" , "template_from_string" , "url|0" ]
; let r = [ "apply" , "autoescape" , "block" , "cache" , "deprecated" , "do" , "embed" , "extends" , "filter" , "flush" , "for" , "form_theme" , "from" , "if" , "import" , "include" , "macro" , "sandbox" , "set" , "stopwatch" , "trans" , "trans_default_domain" , "transchoice" , "use" , "verbatim" , "with" ]
; r = r . concat ( r . map ( ( e => "end" + e ) ) ) ; const n = { scope : "string" , variants : [ { begin : /'/ ,
end : /'/ } , { begin : /"/ , end : /"/ } ] } , o = { scope : "number" , match : /\d+/ } , s = { begin : /\(/ ,
end : /\)/ , excludeBegin : ! 0 , excludeEnd : ! 0 , contains : [ n , o ] } , c = {
beginKeywords : t . join ( " " ) , keywords : { name : t } , relevance : 0 , contains : [ s ] } , m = {
match : /\|(?=[A-Za-z_]+:?)/ , beginScope : "punctuation" , relevance : 0 , contains : [ {
match : /[A-Za-z_]+:?/ ,
keywords : [ "abs" , "abbr_class" , "abbr_method" , "batch" , "capitalize" , "column" , "convert_encoding" , "country_name" , "currency_name" , "currency_symbol" , "data_uri" , "date" , "date_modify" , "default" , "escape" , "file_excerpt" , "file_link" , "file_relative" , "filter" , "first" , "format" , "format_args" , "format_args_as_text" , "format_currency" , "format_date" , "format_datetime" , "format_file" , "format_file_from_text" , "format_number" , "format_time" , "html_to_markdown" , "humanize" , "inky_to_html" , "inline_css" , "join" , "json_encode" , "keys" , "language_name" , "last" , "length" , "locale_name" , "lower" , "map" , "markdown" , "markdown_to_html" , "merge" , "nl2br" , "number_format" , "raw" , "reduce" , "replace" , "reverse" , "round" , "slice" , "slug" , "sort" , "spaceless" , "split" , "striptags" , "timezone_name" , "title" , "trans" , "transchoice" , "trim" , "u|0" , "upper" , "url_encode" , "yaml_dump" , "yaml_encode" ]
} ] } , i = ( e , { relevance : t } ) => ( { beginScope : { 1 : "template-tag" , 3 : "name" } ,
relevance : t || 2 , endScope : "template-tag" , begin : [ /\{%/ , /\s*/ , a . either ( ... e ) ] ,
end : /%\}/ , keywords : "in" , contains : [ m , c , n , o ] } ) , l = i ( r , { relevance : 2
} ) , _ = i ( [ /[a-z_]+/ ] , { relevance : 1 } ) ; return { name : "Twig" , aliases : [ "craftcms" ] ,
case _insensitive : ! 0 , subLanguage : "xml" , contains : [ e . COMMENT ( /\{#/ , /#\}/ ) , l , _ , {
className : "template-variable" , begin : /\{\{/ , end : /\}\}/ , contains : [ "self" , m , c , n , o ]
2025-01-13 09:56:01 +00:00
} ] } } } ) ( ) ; hljs . registerLanguage ( "twig" , e ) } ) ( ) ; /*! `typescript` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict"
; const e = "[A-Za-z$_][0-9A-Za-z$_]*" , n = [ "as" , "in" , "of" , "if" , "for" , "while" , "finally" , "var" , "new" , "function" , "do" , "return" , "void" , "else" , "break" , "catch" , "instanceof" , "with" , "throw" , "case" , "default" , "try" , "switch" , "continue" , "typeof" , "delete" , "let" , "yield" , "const" , "class" , "debugger" , "async" , "await" , "static" , "import" , "from" , "export" , "extends" ] , a = [ "true" , "false" , "null" , "undefined" , "NaN" , "Infinity" ] , t = [ "Object" , "Function" , "Boolean" , "Symbol" , "Math" , "Date" , "Number" , "BigInt" , "String" , "RegExp" , "Array" , "Float32Array" , "Float64Array" , "Int8Array" , "Uint8Array" , "Uint8ClampedArray" , "Int16Array" , "Int32Array" , "Uint16Array" , "Uint32Array" , "BigInt64Array" , "BigUint64Array" , "Set" , "Map" , "WeakSet" , "WeakMap" , "ArrayBuffer" , "SharedArrayBuffer" , "Atomics" , "DataView" , "JSON" , "Promise" , "Generator" , "GeneratorFunction" , "AsyncFunction" , "Reflect" , "Proxy" , "Intl" , "WebAssembly" ] , s = [ "Error" , "EvalError" , "InternalError" , "RangeError" , "ReferenceError" , "SyntaxError" , "TypeError" , "URIError" ] , r = [ "setInterval" , "setTimeout" , "clearInterval" , "clearTimeout" , "require" , "exports" , "eval" , "isFinite" , "isNaN" , "parseFloat" , "parseInt" , "decodeURI" , "decodeURIComponent" , "encodeURI" , "encodeURIComponent" , "escape" , "unescape" ] , c = [ "arguments" , "this" , "super" , "console" , "window" , "document" , "localStorage" , "sessionStorage" , "module" , "global" ] , i = [ ] . concat ( r , t , s )
; function o ( o ) { const l = o . regex , d = e , b = { begin : /<[A-Za-z0-9\\._:-]+/ ,
end : /\/[A-Za-z0-9\\._:-]+>|\/>/ , isTrulyOpeningTag : ( e , n ) => {
const a = e [ 0 ] . length + e . index , t = e . input [ a ]
; if ( "<" === t || "," === t ) return void n . ignoreMatch ( ) ; let s
; ">" === t && ( ( ( e , { after : n } ) => { const a = "</" + e [ 0 ] . slice ( 1 )
; return - 1 !== e . input . indexOf ( a , n ) } ) ( e , { after : a } ) || n . ignoreMatch ( ) )
; const r = e . input . substring ( a )
; ( ( s = r . match ( /^\s*=/ ) ) || ( s = r . match ( /^\s+extends\s+/ ) ) && 0 === s . index ) && n . ignoreMatch ( )
} } , g = { $pattern : e , keyword : n , literal : a , built _in : i , "variable.language" : c
2025-01-13 09:56:01 +00:00
} , u = "[0-9](_?[0-9])*" , m = ` \\ .( ${ u } ) ` , E = "0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*" , A = {
2024-06-20 14:10:42 +00:00
className : "number" , variants : [ {
begin : ` ( \\ b( ${ E } )(( ${ m } )| \\ .)?|( ${ m } ))[eE][+-]?( ${ u } ) \\ b ` } , {
begin : ` \\ b( ${ E } ) \\ b(( ${ m } ) \\ b| \\ .)?|( ${ m } ) \\ b ` } , {
begin : "\\b(0|[1-9](_?[0-9])*)n\\b" } , {
begin : "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" } , {
begin : "\\b0[bB][0-1](_?[0-1])*n?\\b" } , { begin : "\\b0[oO][0-7](_?[0-7])*n?\\b" } , {
2025-01-13 09:56:01 +00:00
begin : "\\b0[0-7]+n?\\b" } ] , relevance : 0 } , y = { className : "subst" , begin : "\\$\\{" ,
end : "\\}" , keywords : g , contains : [ ] } , p = { begin : ".?html`" , end : "" , starts : { end : "`" ,
returnEnd : ! 1 , contains : [ o . BACKSLASH _ESCAPE , y ] , subLanguage : "xml" } } , N = {
begin : ".?css`" , end : "" , starts : { end : "`" , returnEnd : ! 1 ,
contains : [ o . BACKSLASH _ESCAPE , y ] , subLanguage : "css" } } , f = { begin : ".?gql`" , end : "" ,
starts : { end : "`" , returnEnd : ! 1 , contains : [ o . BACKSLASH _ESCAPE , y ] ,
2024-06-20 14:10:42 +00:00
subLanguage : "graphql" } } , _ = { className : "string" , begin : "`" , end : "`" ,
2025-01-13 09:56:01 +00:00
contains : [ o . BACKSLASH _ESCAPE , y ] } , h = { className : "comment" ,
2024-06-20 14:10:42 +00:00
variants : [ o . COMMENT ( /\/\*\*(?!\/)/ , "\\*/" , { relevance : 0 , contains : [ {
begin : "(?=@[A-Za-z]+)" , relevance : 0 , contains : [ { className : "doctag" ,
begin : "@[A-Za-z]+" } , { className : "type" , begin : "\\{" , end : "\\}" , excludeEnd : ! 0 ,
excludeBegin : ! 0 , relevance : 0 } , { className : "variable" , begin : d + "(?=\\s*(-)|$)" ,
endsParent : ! 0 , relevance : 0 } , { begin : /(?=[^\n])\s/ , relevance : 0 } ] } ]
} ) , o . C _BLOCK _COMMENT _MODE , o . C _LINE _COMMENT _MODE ]
2025-01-13 09:56:01 +00:00
} , S = [ o . APOS _STRING _MODE , o . QUOTE _STRING _MODE , p , N , f , _ , { match : /\$\d+/ } , A ]
; y . contains = S . concat ( { begin : /\{/ , end : /\}/ , keywords : g , contains : [ "self" ] . concat ( S )
} ) ; const v = [ ] . concat ( h , y . contains ) , w = v . concat ( [ { begin : /(\s*)\(/ , end : /\)/ ,
keywords : g , contains : [ "self" ] . concat ( v ) } ] ) , R = { className : "params" , begin : /(\s*)\(/ ,
end : /\)/ , excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : g , contains : w } , k = { variants : [ {
2024-06-20 14:10:42 +00:00
match : [ /class/ , /\s+/ , d , /\s+/ , /extends/ , /\s+/ , l . concat ( d , "(" , l . concat ( /\./ , d ) , ")*" ) ] ,
scope : { 1 : "keyword" , 3 : "title.class" , 5 : "keyword" , 7 : "title.class.inherited" } } , {
2025-01-13 09:56:01 +00:00
match : [ /class/ , /\s+/ , d ] , scope : { 1 : "keyword" , 3 : "title.class" } } ] } , x = { relevance : 0 ,
2024-06-20 14:10:42 +00:00
match : l . either ( /\bJSON/ , /\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/ , /\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/ , /\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/ ) ,
className : "title.class" , keywords : { _ : [ ... t , ... s ] } } , O = { variants : [ {
match : [ /function/ , /\s+/ , d , /(?=\s*\()/ ] } , { match : [ /function/ , /\s*(?=\()/ ] } ] ,
className : { 1 : "keyword" , 3 : "title.function" } , label : "func.def" , contains : [ R ] ,
2025-01-13 09:56:01 +00:00
illegal : /%/ } , I = {
match : l . concat ( /\b/ , ( C = [ ... r , "super" , "import" ] . map ( ( e => e + "\\s*\\(" ) ) ,
l . concat ( "(?!" , C . join ( "|" ) , ")" ) ) , d , l . lookahead ( /\s*\(/ ) ) ,
className : "title.function" , relevance : 0 } ; var C ; const T = {
2024-06-20 14:10:42 +00:00
begin : l . concat ( /\./ , l . lookahead ( l . concat ( d , /(?![0-9A-Za-z$_(])/ ) ) ) , end : d ,
excludeBegin : ! 0 , keywords : "prototype" , className : "property" , relevance : 0 } , M = {
match : [ /get|set/ , /\s+/ , d , /(?=\()/ ] , className : { 1 : "keyword" , 3 : "title.function" } ,
contains : [ { begin : /\(\)/ } , R ]
} , B = "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + o . UNDERSCORE _IDENT _RE + ")\\s*=>" , $ = {
match : [ /const|var|let/ , /\s+/ , d , /\s*/ , /=\s*/ , /(async\s*)?/ , l . lookahead ( B ) ] ,
keywords : "async" , className : { 1 : "keyword" , 3 : "title.function" } , contains : [ R ] }
; return { name : "JavaScript" , aliases : [ "js" , "jsx" , "mjs" , "cjs" ] , keywords : g , exports : {
2025-01-13 09:56:01 +00:00
PARAMS _CONTAINS : w , CLASS _REFERENCE : x } , illegal : /#(?![$_A-z])/ ,
2024-06-20 14:10:42 +00:00
contains : [ o . SHEBANG ( { label : "shebang" , binary : "node" , relevance : 5 } ) , {
label : "use_strict" , className : "meta" , relevance : 10 ,
begin : /^\s*['"]use (strict|asm)['"]/
2025-01-13 09:56:01 +00:00
} , o . APOS _STRING _MODE , o . QUOTE _STRING _MODE , p , N , f , _ , h , { match : /\$\d+/ } , A , x , {
2024-06-20 14:10:42 +00:00
className : "attr" , begin : d + l . lookahead ( ":" ) , relevance : 0 } , $ , {
begin : "(" + o . RE _STARTERS _RE + "|\\b(case|return|throw)\\b)\\s*" ,
keywords : "return throw case" , relevance : 0 , contains : [ h , o . REGEXP _MODE , {
className : "function" , begin : B , returnBegin : ! 0 , end : "\\s*=>" , contains : [ {
className : "params" , variants : [ { begin : o . UNDERSCORE _IDENT _RE , relevance : 0 } , {
2025-01-13 09:56:01 +00:00
className : null , begin : /\(\s*\)/ , skip : ! 0 } , { begin : /(\s*)\(/ , end : /\)/ ,
excludeBegin : ! 0 , excludeEnd : ! 0 , keywords : g , contains : w } ] } ] } , { begin : /,/ , relevance : 0
} , { match : /\s+/ , relevance : 0 } , { variants : [ { begin : "<>" , end : "</>" } , {
2024-06-20 14:10:42 +00:00
match : /<[A-Za-z0-9\\._:-]+\s*\/>/ } , { begin : b . begin ,
"on:begin" : b . isTrulyOpeningTag , end : b . end } ] , subLanguage : "xml" , contains : [ {
begin : b . begin , end : b . end , skip : ! 0 , contains : [ "self" ] } ] } ] } , O , {
beginKeywords : "while if switch catch for" } , {
begin : "\\b(?!function)" + o . UNDERSCORE _IDENT _RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{" ,
returnBegin : ! 0 , label : "func.def" , contains : [ R , o . inherit ( o . TITLE _MODE , { begin : d ,
className : "title.function" } ) ] } , { match : /\.\.\./ , relevance : 0 } , T , { match : "\\$" + d ,
relevance : 0 } , { match : [ /\bconstructor(?=\s*\()/ ] , className : { 1 : "title.function" } ,
2025-01-13 09:56:01 +00:00
contains : [ R ] } , I , { relevance : 0 , match : /\b[A-Z][A-Z_0-9]+\b/ ,
className : "variable.constant" } , k , M , { match : /\$[(.]/ } ] } } return t => {
2024-06-20 14:10:42 +00:00
const s = o ( t ) , r = e , l = [ "any" , "void" , "number" , "boolean" , "string" , "object" , "never" , "symbol" , "bigint" , "unknown" ] , d = {
2025-01-13 09:56:01 +00:00
begin : [ /namespace/ , /\s+/ , t . IDENT _RE ] , beginScope : { 1 : "keyword" , 3 : "title.class" }
} , b = { beginKeywords : "interface" , end : /\{/ , excludeEnd : ! 0 , keywords : {
keyword : "interface extends" , built _in : l } , contains : [ s . exports . CLASS _REFERENCE ]
} , g = { $pattern : e ,
keyword : n . concat ( [ "type" , "interface" , "public" , "private" , "protected" , "implements" , "declare" , "abstract" , "readonly" , "enum" , "override" , "satisfies" ] ) ,
2024-06-20 14:10:42 +00:00
literal : a , built _in : i . concat ( l ) , "variable.language" : c } , u = { className : "meta" ,
begin : "@" + r } , m = ( e , n , a ) => { const t = e . contains . findIndex ( ( e => e . label === n ) )
; if ( - 1 === t ) throw Error ( "can not find mode to replace" ) ; e . contains . splice ( t , 1 , a ) }
2025-01-13 09:56:01 +00:00
; Object . assign ( s . keywords , g ) , s . exports . PARAMS _CONTAINS . push ( u )
; const E = s . contains . find ( ( e => "attr" === e . className ) )
; return s . exports . PARAMS _CONTAINS . push ( [ s . exports . CLASS _REFERENCE , E ] ) ,
s . contains = s . contains . concat ( [ u , d , b ] ) ,
2024-06-20 14:10:42 +00:00
m ( s , "shebang" , t . SHEBANG ( ) ) , m ( s , "use_strict" , { className : "meta" , relevance : 10 ,
begin : /^\s*['"]use strict['"]/
} ) , s . contains . find ( ( e => "func.def" === e . label ) ) . relevance = 0 , Object . assign ( s , {
name : "TypeScript" , aliases : [ "ts" , "tsx" , "mts" , "cts" ] } ) , s } } ) ( )
2025-01-13 09:56:01 +00:00
; hljs . registerLanguage ( "typescript" , e ) } ) ( ) ; /*! `vbnet` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const n = e . regex , t = /\d{1,2}\/\d{1,2}\/\d{4}/ , a = /\d{4}-\d{1,2}-\d{1,2}/ , i = /(\d|1[012])(:\d+){0,2} *(AM|PM)/ , s = /\d{1,2}(:\d{1,2}){1,2}/ , r = {
className : "literal" , variants : [ { begin : n . concat ( /# */ , n . either ( a , t ) , / *#/ ) } , {
begin : n . concat ( /# */ , s , / *#/ ) } , { begin : n . concat ( /# */ , i , / *#/ ) } , {
begin : n . concat ( /# */ , n . either ( a , t ) , / +/ , n . either ( i , s ) , / *#/ ) } ]
} , l = e . COMMENT ( /'''/ , /$/ , { contains : [ { className : "doctag" , begin : /<\/?/ , end : />/ } ]
} ) , o = e . COMMENT ( null , /$/ , { variants : [ { begin : /'/ } , { begin : /([\t ]|^)REM(?=\s)/ } ] } )
; return { name : "Visual Basic .NET" , aliases : [ "vb" ] , case _insensitive : ! 0 ,
classNameAliases : { label : "symbol" } , keywords : {
keyword : "addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield" ,
built _in : "addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort" ,
type : "boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort" ,
literal : "true false nothing" } ,
illegal : "//|\\{|\\}|endif|gosub|variant|wend|^\\$ " , contains : [ {
className : "string" , begin : /"(""|[^/n])"C\b/ } , { className : "string" , begin : /"/ ,
end : /"/ , illegal : /\n/ , contains : [ { begin : /""/ } ] } , r , { className : "number" , relevance : 0 ,
variants : [ { begin : /\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/
} , { begin : /\b\d[\d_]*((U?[SIL])|[%&])?/ } , { begin : /&H[\dA-F_]+((U?[SIL])|[%&])?/ } , {
begin : /&O[0-7_]+((U?[SIL])|[%&])?/ } , { begin : /&B[01_]+((U?[SIL])|[%&])?/ } ] } , {
className : "label" , begin : /^\w+:/ } , l , o , { className : "meta" ,
begin : /[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/ ,
end : /$/ , keywords : {
keyword : "const disable else elseif enable end externalsource if region then" } ,
2025-01-13 09:56:01 +00:00
contains : [ o ] } ] } } } ) ( ) ; hljs . registerLanguage ( "vbnet" , e ) } ) ( ) ; /*! `wasm` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => { e . regex ; const a = e . COMMENT ( /\(;/ , /;\)/ )
; return a . contains . push ( "self" ) , { name : "WebAssembly" , keywords : { $pattern : /[\w.]+/ ,
keyword : [ "anyfunc" , "block" , "br" , "br_if" , "br_table" , "call" , "call_indirect" , "data" , "drop" , "elem" , "else" , "end" , "export" , "func" , "global.get" , "global.set" , "local.get" , "local.set" , "local.tee" , "get_global" , "get_local" , "global" , "if" , "import" , "local" , "loop" , "memory" , "memory.grow" , "memory.size" , "module" , "mut" , "nop" , "offset" , "param" , "result" , "return" , "select" , "set_global" , "set_local" , "start" , "table" , "tee_local" , "then" , "type" , "unreachable" ]
} , contains : [ e . COMMENT ( /;;/ , /$/ ) , a , { match : [ /(?:offset|align)/ , /\s*/ , /=/ ] ,
className : { 1 : "keyword" , 3 : "operator" } } , { className : "variable" , begin : /\$[\w_]+/ } , {
match : /(\((?!;)|\))+/ , className : "punctuation" , relevance : 0 } , {
begin : [ /(?:func|call|call_indirect)/ , /\s+/ , /\$[^\s)]+/ ] , className : { 1 : "keyword" ,
3 : "title.function" } } , e . QUOTE _STRING _MODE , { match : /(i32|i64|f32|f64)(?!\.)/ ,
className : "type" } , { className : "keyword" ,
match : /\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/
} , { className : "number" , relevance : 0 ,
match : /[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/
2025-01-13 09:56:01 +00:00
} ] } } } ) ( ) ; hljs . registerLanguage ( "wasm" , e ) } ) ( ) ; /*! `xml` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const a = e . regex , n = a . concat ( /[\p{L}_]/u , a . optional ( /[\p{L}0-9_.-]*:/u ) , /[\p{L}0-9_.-]*/u ) , s = {
className : "symbol" , begin : /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/ } , t = { begin : /\s/ ,
contains : [ { className : "keyword" , begin : /#?[a-z_][a-z1-9_-]+/ , illegal : /\n/ } ]
} , i = e . inherit ( t , { begin : /\(/ , end : /\)/ } ) , c = e . inherit ( e . APOS _STRING _MODE , {
className : "string" } ) , l = e . inherit ( e . QUOTE _STRING _MODE , { className : "string" } ) , r = {
endsWithParent : ! 0 , illegal : /</ , relevance : 0 , contains : [ { className : "attr" ,
begin : /[\p{L}0-9._:-]+/u , relevance : 0 } , { begin : /=\s*/ , relevance : 0 , contains : [ {
className : "string" , endsParent : ! 0 , variants : [ { begin : /"/ , end : /"/ , contains : [ s ] } , {
begin : /'/ , end : /'/ , contains : [ s ] } , { begin : /[^\s"'=<>`]+/ } ] } ] } ] } ; return {
name : "HTML, XML" ,
aliases : [ "html" , "xhtml" , "rss" , "atom" , "xjb" , "xsd" , "xsl" , "plist" , "wsf" , "svg" ] ,
case _insensitive : ! 0 , unicodeRegex : ! 0 , contains : [ { className : "meta" , begin : /<![a-z]/ ,
end : />/ , relevance : 10 , contains : [ t , l , c , i , { begin : /\[/ , end : /\]/ , contains : [ {
className : "meta" , begin : /<![a-z]/ , end : />/ , contains : [ t , i , l , c ] } ] } ]
} , e . COMMENT ( /<!--/ , /-->/ , { relevance : 10 } ) , { begin : /<!\[CDATA\[/ , end : /\]\]>/ ,
relevance : 10 } , s , { className : "meta" , end : /\?>/ , variants : [ { begin : /<\?xml/ ,
relevance : 10 , contains : [ l ] } , { begin : /<\?[a-z][a-z0-9]+/ } ] } , { className : "tag" ,
begin : /<style(?=\s|>)/ , end : />/ , keywords : { name : "style" } , contains : [ r ] , starts : {
end : /<\/style>/ , returnEnd : ! 0 , subLanguage : [ "css" , "xml" ] } } , { className : "tag" ,
begin : /<script(?=\s|>)/ , end : />/ , keywords : { name : "script" } , contains : [ r ] , starts : {
end : /<\/script>/ , returnEnd : ! 0 , subLanguage : [ "javascript" , "handlebars" , "xml" ] } } , {
className : "tag" , begin : /<>|<\/>/ } , { className : "tag" ,
begin : a . concat ( /</ , a . lookahead ( a . concat ( n , a . either ( /\/>/ , />/ , /\s/ ) ) ) ) ,
end : /\/?>/ , contains : [ { className : "name" , begin : n , relevance : 0 , starts : r } ] } , {
className : "tag" , begin : a . concat ( /<\// , a . lookahead ( a . concat ( n , />/ ) ) ) , contains : [ {
className : "name" , begin : n , relevance : 0 } , { begin : />/ , relevance : 0 , endsParent : ! 0 } ] } ] } }
2025-01-13 09:56:01 +00:00
} ) ( ) ; hljs . registerLanguage ( "xml" , e ) } ) ( ) ; /*! `yaml` grammar compiled for Highlight.js 11.10.0 */
2024-06-20 14:10:42 +00:00
( ( ) => { var e = ( ( ) => { "use strict" ; return e => {
const n = "true false yes no null" , a = "[\\w#;/?:@&=+$,.~*'()[\\]]+" , s = {
className : "string" , relevance : 0 , variants : [ { begin : /'/ , end : /'/ } , { begin : /"/ , end : /"/
} , { begin : /\S+/ } ] , contains : [ e . BACKSLASH _ESCAPE , { className : "template-variable" ,
variants : [ { begin : /\{\{/ , end : /\}\}/ } , { begin : /%\{/ , end : /\}/ } ] } ] } , i = e . inherit ( s , {
variants : [ { begin : /'/ , end : /'/ } , { begin : /"/ , end : /"/ } , { begin : /[^\s,{}[\]]+/ } ] } ) , l = {
end : "," , endsWithParent : ! 0 , excludeEnd : ! 0 , keywords : n , relevance : 0 } , t = { begin : /\{/ ,
end : /\}/ , contains : [ l ] , illegal : "\\n" , relevance : 0 } , g = { begin : "\\[" , end : "\\]" ,
contains : [ l ] , illegal : "\\n" , relevance : 0 } , b = [ { className : "attr" , variants : [ {
2025-01-13 09:56:01 +00:00
begin : /\w[\w :()\./-]*:(?=[ \t]|$)/ } , { begin : /"\w[\w :()\./-]*":(?=[ \t]|$)/ } , {
begin : /'\w[\w :()\./-]*':(?=[ \t]|$)/ } ] } , { className : "meta" , begin : "^---\\s*$" ,
2024-06-20 14:10:42 +00:00
relevance : 10 } , { className : "string" ,
begin : "[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*" } , {
begin : "<%[%=-]?" , end : "[%-]?%>" , subLanguage : "ruby" , excludeBegin : ! 0 , excludeEnd : ! 0 ,
relevance : 0 } , { className : "type" , begin : "!\\w+!" + a } , { className : "type" ,
begin : "!<" + a + ">" } , { className : "type" , begin : "!" + a } , { className : "type" , begin : "!!" + a
} , { className : "meta" , begin : "&" + e . UNDERSCORE _IDENT _RE + "$" } , { className : "meta" ,
begin : "\\*" + e . UNDERSCORE _IDENT _RE + "$" } , { className : "bullet" , begin : "-(?=[ ]|$)" ,
relevance : 0 } , e . HASH _COMMENT _MODE , { beginKeywords : n , keywords : { literal : n } } , {
className : "number" ,
begin : "\\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"
} , { className : "number" , begin : e . C _NUMBER _RE + "\\b" , relevance : 0 } , t , g , s ] , r = [ ... b ]
; return r . pop ( ) , r . push ( i ) , l . contains = r , { name : "YAML" , case _insensitive : ! 0 ,
aliases : [ "yml" ] , contains : b } } } ) ( ) ; hljs . registerLanguage ( "yaml" , e ) } ) ( ) ;