@@ -0,0 +1,90 @@
/* PrismJS 1.23.0
https://prismjs.com/download.html#themes=prism-twilight&languages=markup+css+clike+javascript+ada+apacheconf+bash+batch+c+csharp+cpp+coffeescript+css-extras+dart+django+dns-zone-file+docker+elixir+etlua+erlang+git+go+graphql+groovy+haml+handlebars+haskell+http+hpkp+hsts+ini+java+javadoc+javadoclike+jsdoc+js-extras+json+json5+jsonp+julia+kotlin+latex+less+lisp+lua+markup-templating+matlab+nginx+objectivec+perl+php+phpdoc+php-extras+powershell+promql+protobuf+puppet+purescript+python+r+jsx+tsx+regex+rest+ruby+rust+sass+scss+shell-session+sql+stylus+swift+toml+twig+typescript+typoscript+verilog+vhdl+vim+visual-basic+wasm+xml-doc+yaml&plugins=line-highlight+line-numbers+show-language+toolbar */
var _self = "undefined" != typeof window ? window : "undefined" != typeof WorkerGlobalScope && self instanceof WorkerGlobalScope ? self : { } , Prism = function ( u ) { var c = /\blang(?:uage)?-([\w-]+)\b/i , n = 0 , _ = { manual : u . Prism && u . Prism . manual , disableWorkerMessageHandler : u . Prism && u . Prism . disableWorkerMessageHandler , util : { encode : function e ( n ) { return n instanceof M ? new M ( n . type , e ( n . content ) , n . alias ) : Array . isArray ( n ) ? n . map ( e ) : n . replace ( /&/g , "&" ) . replace ( /</g , "<" ) . replace ( /\u00a0/g , " " ) } , type : function ( e ) { return Object . prototype . toString . call ( e ) . slice ( 8 , - 1 ) } , objId : function ( e ) { return e . _ _id || Object . defineProperty ( e , "__id" , { value : ++ n } ) , e . _ _id } , clone : function t ( e , r ) { var a , n ; switch ( r = r || { } , _ . util . type ( e ) ) { case "Object" : if ( n = _ . util . objId ( e ) , r [ n ] ) return r [ n ] ; for ( var i in a = { } , r [ n ] = a , e ) e . hasOwnProperty ( i ) && ( a [ i ] = t ( e [ i ] , r ) ) ; return a ; case "Array" : return n = _ . util . objId ( e ) , r [ n ] ? r [ n ] : ( a = [ ] , r [ n ] = a , e . forEach ( function ( e , n ) { a [ n ] = t ( e , r ) } ) , a ) ; default : return e } } , getLanguage : function ( e ) { for ( ; e && ! c . test ( e . className ) ; ) e = e . parentElement ; return e ? ( e . className . match ( c ) || [ , "none" ] ) [ 1 ] . toLowerCase ( ) : "none" } , currentScript : function ( ) { if ( "undefined" == typeof document ) return null ; if ( "currentScript" in document ) return document . currentScript ; try { throw new Error } catch ( e ) { var n = ( /at [^(\r\n]*\((.*):.+:.+\)$/i . exec ( e . stack ) || [ ] ) [ 1 ] ; if ( n ) { var t = document . getElementsByTagName ( "script" ) ; for ( var r in t ) if ( t [ r ] . src == n ) return t [ r ] } return null } } , isActive : function ( e , n , t ) { for ( var r = "no-" + n ; e ; ) { var a = e . classList ; if ( a . contains ( n ) ) return ! 0 ; if ( a . contains ( r ) ) return ! 1 ; e = e . parentElement } return ! ! t } } , languages : { extend : function ( e , n ) { var t = _ . util . clone ( _ . languages [ e ] ) ; for ( var r in n ) t [ r ] = n [ r ] ; return t } , insertBefore : function ( t , e , n , r ) { var a = ( r = r || _ . languages ) [ t ] , i = { } ; for ( var l in a ) if ( a . hasOwnProperty ( l ) ) { if ( l == e ) for ( var o in n ) n . hasOwnProperty ( o ) && ( i [ o ] = n [ o ] ) ; n . hasOwnProperty ( l ) || ( i [ l ] = a [ l ] ) } var s = r [ t ] ; return r [ t ] = i , _ . languages . DFS ( _ . languages , function ( e , n ) { n === s && e != t && ( this [ e ] = i ) } ) , i } , DFS : function e ( n , t , r , a ) { a = a || { } ; var i = _ . util . objId ; for ( var l in n ) if ( n . hasOwnProperty ( l ) ) { t . call ( n , l , n [ l ] , r || l ) ; var o = n [ l ] , s = _ . util . type ( o ) ; "Object" !== s || a [ i ( o ) ] ? "Array" !== s || a [ i ( o ) ] || ( a [ i ( o ) ] = ! 0 , e ( o , t , l , a ) ) : ( a [ i ( o ) ] = ! 0 , e ( o , t , null , a ) ) } } } , plugins : { } , highlightAll : function ( e , n ) { _ . highlightAllUnder ( document , e , n ) } , highlightAllUnder : function ( e , n , t ) { var r = { callback : t , container : e , selector : 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code' } ; _ . hooks . run ( "before-highlightall" , r ) , r . elements = Array . prototype . slice . apply ( r . container . querySelectorAll ( r . selector ) ) , _ . hooks . run ( "before-all-elements-highlight" , r ) ; for ( var a , i = 0 ; a = r . elements [ i ++ ] ; ) _ . highlightElement ( a , ! 0 === n , r . callback ) } , highlightElement : function ( e , n , t ) { var r = _ . util . getLanguage ( e ) , a = _ . languages [ r ] ; e . className = e . className . replace ( c , "" ) . replace ( /\s+/g , " " ) + " language-" + r ; var i = e . parentElement ; i && "pre" === i . nodeName . toLowerCase ( ) && ( i . className = i . className . replace ( c , "" ) . replace ( /\s+/g , " " ) + " language-" + r ) ; var l = { element : e , language : r , grammar : a , code : e . textContent } ; function o ( e ) { l . highlightedCode = e , _ . hooks . run ( "before-insert" , l ) , l . element . innerHTML = l . highlightedCode , _ . hooks . run ( "after-highlight" , l ) , _ . hooks . run ( "complete" , l ) , t && t . call ( l . element ) } if ( _ . hooks . run ( "before-sanity-check" , l ) , ! l . code ) return _ . hooks . run ( "complete" , l ) , void ( t && t . call ( l . element ) ) ; if ( _ . hooks . run ( "before-highlight" , l ) , l . grammar ) if ( n && u . Worker ) { var s = new Worker ( _ . filename ) ; s . onmessage = function ( e ) { o ( e . data ) } , s . postMessage ( JSON . stringify ( { language : l . language , code : l . code , immediateClose : ! 0 } ) ) } else o ( _ . highlight ( l . code , l . grammar , l . language ) ) ; else o ( _ . util . encode ( l . code ) ) } , highlight : function ( e , n , t ) { var r = { code : e , grammar : n , language : t } ; return _ . hooks . run ( "before-tokenize" , r ) , r . tokens = _ . tokenize ( r . code , r . grammar ) , _ . hooks . run ( "after-tokenize" , r ) , M . stringify ( _ . util . encode ( r . tokens ) , r . language ) } , tokenize : function ( e , n ) { var t = n . rest ; if ( t ) { for ( var r in t ) n [ r ] = t [ r ] ; delete n . rest } var a = new i ; return z ( a , a . head , e ) , function e ( n , t , r , a , i , l ) { for ( var o in r ) if ( r . hasOwnProperty ( o ) && r [ o ] ) { var s = r [ o ] ; s = Array . isArray ( s ) ? s : [ s ] ; for ( var u = 0 ; u < s . length ; ++ u ) { if ( l && l . cause == o + "," + u ) return ; var c = s [ u ] , g = c . inside , f = ! ! c . lookbehind , h = ! ! c . greedy , d = c . alias ; if ( h && ! c . pattern . global ) { var v = c . pattern . toString ( ) . match ( /[imsuy]*$/ ) [ 0 ] ; c . pattern = RegExp ( c . pattern . source , v + "g" ) } for ( var p = c . pattern || c , m = a . next , y = i ; m !== t . tail && ! ( l && y >= l . reach ) ; y += m . value . length , m = m . next ) { var k = m . value ; if ( t . length > n . length ) return ; if ( ! ( k instanceof M ) ) { var b , x = 1 ; if ( h ) { if ( ! ( b = W ( p , y , n , f ) ) ) break ; var w = b . index , A = b . index + b [ 0 ] . length , P = y ; for ( P += m . value . length ; P <= w ; ) m = m . next , P += m . value . length ; if ( P -= m . value . length , y = P , m . value instanceof M ) continue ; for ( var S = m ; S !== t . tail && ( P < A || "string" == typeof S . value ) ; S = S . next ) x ++ , P += S . value . length ; x -- , k = n . slice ( y , P ) , b . index -= y } else if ( ! ( b = W ( p , 0 , k , f ) ) ) continue ; var w = b . index , E = b [ 0 ] , O = k . slice ( 0 , w ) , L = k . slice ( w + E . length ) , N = y + k . length ; l && N > l . reach && ( l . reach = N ) ; var j = m . prev ; O && ( j = z ( t , j , O ) , y += O . length ) , I ( t , j , x ) ; var C = new M ( o , g ? _ . tokenize ( E , g ) : E , d , E ) ; m = z ( t , j , C ) , L && z ( t , m , L ) , 1 < x && e ( n , t , r , m . prev , y , { cause : o + "," + Line truncated
Prism . languages . markup = { comment : /<!--[\s\S]*?-->/ , prolog : /<\?[\s\S]+?\?>/ , doctype : { pattern : /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i , greedy : ! 0 , inside : { "internal-subset" : { pattern : /(\[)[\s\S]+(?=\]>$)/ , lookbehind : ! 0 , greedy : ! 0 , inside : null } , string : { pattern : /"[^"]*"|'[^']*'/ , greedy : ! 0 } , punctuation : /^<!|>$|[[\]]/ , "doctype-tag" : /^DOCTYPE/ , name : /[^\s<>'"]+/ } } , cdata : /<!\[CDATA\[[\s\S]*?]]>/i , tag : { pattern : /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/ , greedy : ! 0 , inside : { tag : { pattern : /^<\/?[^\s>\/]+/ , inside : { punctuation : /^<\/?/ , namespace : /^[^\s>\/:]+:/ } } , "attr-value" : { pattern : /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/ , inside : { punctuation : [ { pattern : /^=/ , alias : "attr-equals" } , /"|'/ ] } } , punctuation : /\/?>/ , "attr-name" : { pattern : /[^\s>\/]+/ , inside : { namespace : /^[^\s>\/:]+:/ } } } } , entity : [ { pattern : /&[\da-z]{1,8};/i , alias : "named-entity" } , /&#x?[\da-f]{1,8};/i ] } , Prism . languages . markup . tag . inside [ "attr-value" ] . inside . entity = Prism . languages . markup . entity , Prism . languages . markup . doctype . inside [ "internal-subset" ] . inside = Prism . languages . markup , Prism . hooks . add ( "wrap" , function ( a ) { "entity" === a . type && ( a . attributes . title = a . content . replace ( /&/ , "&" ) ) } ) , Object . defineProperty ( Prism . languages . markup . tag , "addInlined" , { value : function ( a , e ) { var s = { } ; s [ "language-" + e ] = { pattern : /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i , lookbehind : ! 0 , inside : Prism . languages [ e ] } , s . cdata = /^<!\[CDATA\[|\]\]>$/i ; var n = { "included-cdata" : { pattern : /<!\[CDATA\[[\s\S]*?\]\]>/i , inside : s } } ; n [ "language-" + e ] = { pattern : /[\s\S]+/ , inside : Prism . languages [ e ] } ; var t = { } ; t [ a ] = { pattern : RegExp ( "(<__[^>]*>)(?:<!\\[CDATA\\[(?:[^\\]]|\\](?!\\]>))*\\]\\]>|(?!<!\\[CDATA\\[)[^])*?(?=</__>)" . replace ( /__/g , function ( ) { return a } ) , "i" ) , lookbehind : ! 0 , greedy : ! 0 , inside : n } , Prism . languages . insertBefore ( "markup" , "cdata" , t ) } } ) , Prism . languages . html = Prism . languages . markup , Prism . languages . mathml = Prism . languages . markup , Prism . languages . svg = Prism . languages . markup , Prism . languages . xml = Prism . languages . extend ( "markup" , { } ) , Prism . languages . ssml = Prism . languages . xml , Prism . languages . atom = Prism . languages . xml , Prism . languages . rss = Prism . languages . xml ;
! function ( s ) { var e = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ ; s . languages . css = { comment : /\/\*[\s\S]*?\*\// , atrule : { pattern : /@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/ , inside : { rule : /^@[\w-]+/ , "selector-function-argument" : { pattern : /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/ , lookbehind : ! 0 , alias : "selector" } , keyword : { pattern : /(^|[^\w-])(?:and|not|only|or)(?![\w-])/ , lookbehind : ! 0 } } } , url : { pattern : RegExp ( "\\burl\\((?:" + e . source + "|(?:[^\\\\\r\n()\"']|\\\\[^])*)\\)" , "i" ) , greedy : ! 0 , inside : { function : /^url/i , punctuation : /^\(|\)$/ , string : { pattern : RegExp ( "^" + e . source + "$" ) , alias : "url" } } } , selector : RegExp ( "[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|" + e . source + ")*(?=\\s*\\{)" ) , string : { pattern : e , greedy : ! 0 } , property : /(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i , important : /!important\b/i , function : /[-a-z0-9]+(?=\()/i , punctuation : /[(){};:,]/ } , s . languages . css . atrule . inside . rest = s . languages . css ; var t = s . languages . markup ; t && ( t . tag . addInlined ( "style" , "css" ) , s . languages . insertBefore ( "inside" , "attr-value" , { "style-attr" : { pattern : /(^|["'\s])style\s*=\s*(?:"[^"]*"|'[^']*')/i , lookbehind : ! 0 , inside : { "attr-value" : { pattern : /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/ , inside : { style : { pattern : /(["'])[\s\S]+(?=["']$)/ , lookbehind : ! 0 , alias : "language-css" , inside : s . languages . css } , punctuation : [ { pattern : /^=/ , alias : "attr-equals" } , /"|'/ ] } } , "attr-name" : /^style/i } } } , t . tag ) ) } ( Prism ) ;
Prism . languages . clike = { comment : [ { pattern : /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^\\:])\/\/.*/ , lookbehind : ! 0 , greedy : ! 0 } ] , string : { pattern : /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 } , "class-name" : { pattern : /(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i , lookbehind : ! 0 , inside : { punctuation : /[.\\]/ } } , keyword : /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/ , boolean : /\b(?:true|false)\b/ , function : /\w+(?=\()/ , number : /\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i , operator : /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/ , punctuation : /[{}[\];(),.:]/ } ;
Prism . languages . javascript = Prism . languages . extend ( "clike" , { "class-name" : [ Prism . languages . clike [ "class-name" ] , { pattern : /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:prototype|constructor))/ , lookbehind : ! 0 } ] , keyword : [ { pattern : /((?:^|})\s*)(?:catch|finally)\b/ , lookbehind : ! 0 } , { pattern : /(^|[^.]|\.\.\.\s*)\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|(?:get|set)(?=\s*[\[$\w\xA0-\uFFFF])|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/ , lookbehind : ! 0 } ] , function : /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/ , number : /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/ , operator : /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/ } ) , Prism . languages . javascript [ "class-name" ] [ 0 ] . pattern = /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/ , Prism . languages . insertBefore ( "javascript" , "keyword" , { regex : { pattern : /((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/ , lookbehind : ! 0 , greedy : ! 0 , inside : { "regex-source" : { pattern : /^(\/)[\s\S]+(?=\/[a-z]*$)/ , lookbehind : ! 0 , alias : "language-regex" , inside : Prism . languages . regex } , "regex-flags" : /[a-z]+$/ , "regex-delimiter" : /^\/|\/$/ } } , "function-variable" : { pattern : /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/ , alias : "function" } , parameter : [ { pattern : /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/ , lookbehind : ! 0 , inside : Prism . languages . javascript } , { pattern : /(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i , inside : Prism . languages . javascript } , { pattern : /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/ , lookbehind : ! 0 , inside : Prism . languages . javascript } , { pattern : /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/ , lookbehind : ! 0 , inside : Prism . languages . javascript } ] , constant : /\b[A-Z](?:[A-Z_]|\dx?)*\b/ } ) , Prism . languages . insertBefore ( "javascript" , "string" , { "template-string" : { pattern : /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/ , greedy : ! 0 , inside : { "template-punctuation" : { pattern : /^`|`$/ , alias : "string" } , interpolation : { pattern : /((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/ , lookbehind : ! 0 , inside : { "interpolation-punctuation" : { pattern : /^\${|}$/ , alias : "punctuation" } , rest : Prism . languages . javascript } } , string : /[\s\S]+/ } } } ) , Prism . languages . markup && Prism . languages . markup . tag . addInlined ( "script" , "javascript" ) , Prism . languages . js = Prism . languages . javascript ;
Prism . languages . ada = { comment : /--.*/ , string : /"(?:""|[^"\r\f\n])*"/i , number : [ { pattern : /\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i } , { pattern : /\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i } ] , "attr-name" : /\b'\w+/i , keyword : /\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|new|return|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|not|null|of|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i , boolean : /\b(?:true|false)\b/i , operator : /<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/ , punctuation : /\.\.?|[,;():]/ , char : /'.'/ , variable : /\b[a-z](?:[_a-z\d])*\b/i } ;
Prism . languages . apacheconf = { comment : /#.*/ , "directive-inline" : { pattern : / ( ^ \ s * ) \ b ( ? : A c c e p t F i l t e r | A c c e p t P a t h I n f o | A c c e s s F i l e N a m e | A c t i o n | A d d ( ? : A l t | A l t B y E n c o d i n g | A l t B y T y p e | C h a r s e t | D e f a u l t C h a r s e t | D e s c r i p t i o n | E n c o d i n g | H a n d l e r | I c o n | I c o n B y E n c o d i n g | I c o n B y T y p e | I n p u t F i l t e r | L a n g u a g e | M o d u l e I n f o | O u t p u t F i l t e r | O u t p u t F i l t e r B y T y p e | T y p e ) | A l i a s | A l i a s M a t c h | A l l o w ( ? : C O N N E C T | E n c o d e d S l a s h e s | M e t h o d s | O v e r r i d e | O v e r r i d e L i s t ) ? | A n o n y m o u s ( ? : _ L o g E m a i l | _ M u s t G i v e E m a i l | _ N o U s e r I D | _ V e r i f y E m a i l ) ? | A s y n c R e q u e s t W o r k e r F a c t o r | A u t h ( ? : B a s i c A u t h o r i t a t i v e | B a s i c F a k e | B a s i c P r o v i d e r | B a s i c U s e D i g e s t A l g o r i t h m | D B D U s e r P W Q u e r y | D B D U s e r R e a l m Q u e r y | D B M G r o u p F i l e | D B M T y p e | D B M U s e r F i l e | D i g e s t ( ? : A l g o r i t h m | D o m a i n | N o n c e L i f e t i m e | P r o v i d e r | Q o p | S h m e m S i z e ) | F o r m ( ? : A u t h o r i t a t i v e | B o d y | D i s a b l e N o S t o r e | F a k e B a s i c A u t h | L o c a t i o n | L o g i n R e q u i r e d L o c a t i o n | L o g i n S u c c e s s L o c a t i o n | L o g o u t L o c a t i o n | M e t h o d | M i m e t y p e | P a s s w o r d | P r o v i d e r | S i t e P a s s p h r a s e | S i z e | U s e r n a m e ) | G r o u p F i l e | L D A P ( ? : A u t h o r i z e P r e f i x | B i n d A u t h o r i t a t i v e | B i n d D N | B i n d P a s s w o r d | C h a r s e t C o n f i g | C o m p a r e A s U s e r | C o m p a r e D N O n S e r v e r | D e r e f e r e n c e A l i a s e s | G r o u p A t t r i b u t e | G r o u p A t t r i b u t e I s D N | I n i t i a l B i n d A s U s e r | I n i t i a l B i n d P a t t e r n | M a x S u b G r o u p D e p t h | R e m o t e U s e r A t t r i b u t e | R e m o t e U s e r I s D N | S e a r c h A s U s e r | S u b G r o u p A t t r i b u t e | S u b G r o u p C l a s s | U r l ) | M e r g i n g | N a m e | T y p e | U s e r F i l e | n C a c h e ( ? : C o n t e x t | E n a b l e | P r o v i d e F o r | S O C a c h e | T i m e o u t ) | n z F c g i C h e c k A u t h n P r o v i d e r | n z F c g i D e f i n e P r o v i d e r | z D B D L o g i n T o R e f e r e r | z D B D Q u e r y | z D B D R e d i r e c t Q u e r y | z D B M T y p e | z S e n d F o r b i d d e n O n F a i l u r e ) | B a l a n c e r G r o w t h | B a l a n c e r I n h e r i t | B a l a n c e r M e m b e r | B a l a n c e r P e r s i s t | B r o w s e r M a t c h | B r o w s e r M a t c h N o C a s e | B u f f e r S i z e | B u f f e r e d L o g s | C G I D S c r i p t T i m e o u t | C G I M a p E x t e n s i o n | C a c h e ( ? : D e f a u l t E x p i r e | D e t a i l H e a d e r | D i r L e n g t h | D i r L e v e l s | D i s a b l e | E n a b l e | F i l e | H e a d e r | I g n o r e C a c h e C o n t r o l | I g n o r e H e a d e r s | I g n o r e N o L a s t M o d | I g n o r e Q u e r y S t r i n g | I g n o r e U R L S e s s i o n I d e n t i f i e r s | K e y B a s e U R L | L a s t M o d i f i e d F a c t o r | L o c k | L o c k M a x A g e | L o c k P a t h | M a x E x p i r e | M a x F i l e S i z e | M i n E x p i r e | M i n F i l e S i z e | N e g o t i a t e d D o c s | Q u i c k H a n d l e r | R e a d S i z e | R e a d T i m e | R o o t | S o c a c h e ( ? : M a x S i z e | M a x T i m e | M i n T i m e | R e a d S i z e | R e a d T i m e ) ? | S t a l e O n E r r o r | S t o r e E x p i r e d | S t o r e N o S t o r e | S t o r e P r i v a t e ) | C h a r s e t D e f a u l t | C h a r s e t O p t i o n s | C h a r s e t S o u r c e E n c | C h e c k C a s e O n l y | C h e c k S p e l l i n g | C h r o o t D i r | C o n t e n t D i g e s t | C o o k i e D o m a i n | C o o k i e E x p i r e s | C o o k i e N a m e | C o o k i e S t y l e | C o o k i e T r a c k i n g | C o r e D u m p D i r e c t o r y | C u s t o m L o g | D B D E x p t i m e | D B D I n i t S Q L | D B D K e e p | D B D M a x | D B D M i n | D B D P a r a m s | D B D P e r s i s t | D B D P r e p a r e S Q L | D B D r i v e r | D T r a c e P r i v i l e g e s | D a v | D a v D e p t h I n f i n i t y | D a v G e n e r i c L o c k D B | D a v L o c k D B | D a v M i n T i m e o u t | D e f a u l t I c o n | D e f a u l t L a n g u a g e | D e f a u l t R u n t i m e D i r | D e f a u l t T y p e | D e f i n e | D e f l a t e ( ? : B u f f e r S i z e | C o m p r e s s i o n L e v e l | F i l t e r N o t e | I n f l a t e L i m i t R e q u e s t B o d y | I n f l a t e R a t i o ( ? : B u r s t | L i m i t ) | M e m L e v e l | W i n d o w S i z e ) | D e n y | D i r e c t o r y C h e c k H a n d l e r | D i r e c t o r y I n d e x | D i r e c t o r y I n d e x R e d i r e c t | D i r e c t o r y S l a s h | D o c u m e n t R o o t | D u m p I O I n p u t | D u m p I O O u t p u t | E n a b l e E x c e p t i o n H o o k | E n a b l e M M A P | E n a b l e S e n d f i l e | E r r o r | E r r o r D o c u m e n t | E r r o r L o g | E r r o r L o g F o r m a t | E x a m p l e | E x p i r e s A c t i v e | E x p i r e s B y T y p e | E x p i r e s D e f a u l t | E x t F i l t e r D e f i n e | E x t F i l t e r O p t i o n s | E x t e n d e d S t a t u s | F a l l b a c k R e s o u r c e | F i l e E T a g | F i l t e r C h a i n | F i l t e r D e c l a r e | F i l t e r P r o t o c o l | F i l t e r P r o v i d e r | F i l t e r T r a c e | F o r c e L a n g u a g e P r i o r i t y | F o r c e T y p e | F o r e n s i c L o g | G p r o f D i r | G r a c e f u l S h u t d o w n T i m e o u t | G r o u p | H e a d e r | H e a d e r N a m e | H e a r t b e a t ( ? : A d d r e s s | L i s t e n | M a x S e r v e r s | S t o r a g e ) | H o s t n a m e L o o k u p s | I S A P I ( ? : A p p e n d L o g T o E r r o r s | A p p e n d L o g T o Q u e r y | C a c h e F i l e | F a k e A s y n c | L o g N o t S u p p o r t e d | R e a d A h e a d B u f f e r ) | I d e n t i t y C h e c k | I d e n t i t y C h e c k T i m e o u t | I m a p B a s e | I m a p D e f a u l t | I m a p M e n u | I n c l u d e | I n c l u d e O p t i o n a l | I n d e x ( ? : H e a d I n s e r t | I g n o r e | I g n o r e R e s e t | O p t i o n s | O r d e r D e f a u l t | S t y l e S h e e t ) | I n p u t S e d | K e e p A l i v e | K e e p A l i v e T i m e o u t | K e p t B o d y S i z e | L D A P ( ? : C a c h e E n t r i e s | C a c h e T T L | C o n n e c t i o n P o o l T T L | C o n n e c t i o n T i m e o u t | L i b r a r y D e b u g | O p C a c h e E n t r i e s | O p C a c h e T T L | R e f e r r a l H o p L i m i t | R e f e r r a l s | R e t r i e s | R e t r y D e l a y | S h a r e d C a c h e F i l e | S h a r e d C a c h e S i z e | T i m e o u t | T r u s t e d C l i e n t C e r t | T r u s t e d G l o b a l C e r t | T r u s t e d M o d e | V e r i f y S e r v e r C e r t ) | L a n g u a g e P r i o r i t y | L i m i t ( ? : I n t e r n a l R e c u r s i o n | R e q u e s t ( ? : B o d y | F i e l d S i z e | F i e l d s | L i n e ) | X M L R e q u e s t B o d y ) | L i s t e n | L i s t e n B a c k L o g | L o a d F i l e | L o a d M o d u l e | L o g F o r m a t | L o g L e v e l | L o g M e s s a g e | L u a A u t h z P r o v i d e r | L u a C o d e C a c h e | L u a ( ? : H o o k ( ? : A c c e s s C h e c k e r | A u t h C h e c k e r | C h e c k U s e r I D | F i x u p s | I n s e r t F i l t e r | L o g | M a p T o S t o r a g e | T r a n s l a t e N a m e | T y p e C h e c k e r ) | I n h e r i t | I n p u t F i l t e r | M a p H a n d l e r | O u t p u t F i l t e r | P a c k a g e C P a t h | P a c k a g e P a t h | Q u i c k H a n d l e r | R o o t | S c o p e ) | M M a p F i l e | M a x ( ? : C o n n e c t i o n s P e r C h i l d | K e e p A l i v e R e q u e s t s | M e m F r e e | R a n g e O v e r l a p s | R a n g e R e v e r s a l s | R a n g e s | R e q u e s t W o r k e r s | S p a r e S e r v e r s | S p a r e T h r e a d s | T h r e a d s ) | M e r g e T r a i l e r s | M e t a D i r | M e t a F i l e s | M e t a S u f f i x | M i m e M a g i c F i l e | M i n S p a r e S e r v e r s | M i n S p a r e T h r e a d s | M o d M i m e U s e P a t h I n f o | M o d e m S t a n d a r d | M u l t i v i e w s M a t c h | M u t e x | N W S S L T r u s t e d C e r t s | N W S S L U p g r a d e a b l e | N a m e V i r t u a l H o s t | N o P r o x y | O p t i o n s | O r d e r | O u t p u t S e d | P a s s E n v | P i d F i l e | P r i v i l e g e s M o d e | P r o t o c o l | P r o t o c o l E c h o | P r o x y ( ? : A d d H e a d e r s | B a d H e a d e r | B l o c k | D o m a i n | E r r o r O v e r r i d e | E x p r e s s D B M F i l e | E x p r e s s D B M T y p e | E x p r e s s E n a b l e | F t p D i r C h a r s e t | F t p E s c a p e W i l d c a r d s | F t p L i s t O n W i l d c a r d | H T M L ( ? : B u f S i z e | C h a r s e t O u t | D o c T y p e | E n a b l e | E v e n t s | E x t e n d e d | F i x u p s | I n t e r p | L i n k s | M e t a | S t r i p C o m m e n t s | U R L M a p ) | I O B u f f e r S i z e | M a x F o r w a r d s | P a s s ( ? : I n h e r i t | I n t e r p o l a t e E n v | M a t c h | R e v e r s e | R e v e r s e C o o k i e D o m a i n | R e v e r s e C o o k i e P a t h ) ? | P r e s e r v e H o s t | R e c e i v e B u f f e r S i z e | R e m o t e | R e m o t e M a t c h | R e q u e s t s | S C G I I n t e r n a l R e d i r e c t | S C G I S e n d f i l e | S e t | S o u r c e A d d r e s s | S t a t u s | T i m e o u t | V i a ) | R L i m i t C P U | R L i m i t M E M | R Line truncated
! function ( e ) { var t = "\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b" , n = { pattern : /(^(["']?)\w+\2)[ \t]+\S.*/ , lookbehind : ! 0 , alias : "punctuation" , inside : null } , a = { bash : n , environment : { pattern : RegExp ( "\\$" + t ) , alias : "constant" } , variable : [ { pattern : /\$?\(\([\s\S]+?\)\)/ , greedy : ! 0 , inside : { variable : [ { pattern : /(^\$\(\([\s\S]+)\)\)/ , lookbehind : ! 0 } , /^\$\(\(/ ] , number : /\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/ , operator : /--?|-=|\+\+?|\+=|!=?|~|\*\*?|\*=|\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\^=?|\|\|?|\|=|\?|:/ , punctuation : /\(\(?|\)\)?|,|;/ } } , { pattern : /\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/ , greedy : ! 0 , inside : { variable : /^\$\(|^`|\)$|`$/ } } , { pattern : /\$\{[^}]+\}/ , greedy : ! 0 , inside : { operator : /:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/ , punctuation : /[\[\]]/ , environment : { pattern : RegExp ( "(\\{)" + t ) , lookbehind : ! 0 , alias : "constant" } } } , /\$(?:\w+|[#?*!@$])/ ] , entity : /\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|x[0-9a-fA-F]{1,2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})/ } ; e . languages . bash = { shebang : { pattern : /^#!\s*\/.*/ , alias : "important" } , comment : { pattern : /(^|[^"{\\$])#.*/ , lookbehind : ! 0 } , "function-name" : [ { pattern : /(\bfunction\s+)\w+(?=(?:\s*\(?:\s*\))?\s*\{)/ , lookbehind : ! 0 , alias : "function" } , { pattern : /\b\w+(?=\s*\(\s*\)\s*\{)/ , alias : "function" } ] , "for-or-select" : { pattern : /(\b(?:for|select)\s+)\w+(?=\s+in\s)/ , alias : "variable" , lookbehind : ! 0 } , "assign-left" : { pattern : /(^|[\s;|&]|[<>]\()\w+(?=\+?=)/ , inside : { environment : { pattern : RegExp ( "(^|[\\s;|&]|[<>]\\()" + t ) , lookbehind : ! 0 , alias : "constant" } } , alias : "variable" , lookbehind : ! 0 } , string : [ { pattern : /((?:^|[^<])<<-?\s*)(\w+?)\s[\s\S]*?(?:\r?\n|\r)\2/ , lookbehind : ! 0 , greedy : ! 0 , inside : a } , { pattern : /((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/ , lookbehind : ! 0 , greedy : ! 0 , inside : { bash : n } } , { pattern : /(^|[^\\](?:\\\\)*)(["'])(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|(?!\2)[^\\`$])*\2/ , lookbehind : ! 0 , greedy : ! 0 , inside : a } ] , environment : { pattern : RegExp ( "\\$?" + t ) , alias : "constant" } , variable : a . variable , function : { pattern : /(^|[\s;|&]|[<>]\()(?:add|apropos|apt|aptitude|apt-cache|apt-get|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/ , lookbehind : ! 0 } , keyword : { pattern : /(^|[\s;|&]|[<>]\()(?:if|then|else|elif|fi|for|while|in|case|esac|function|select|do|done|until)(?=$|[)\s;|&])/ , lookbehind : ! 0 } , builtin : { pattern : / ( ^ | [ \ s ; | & ] | [ < > ] \ ( ) ( ? : \ . | : | b r e a k | c d | c o n t i n u e | e v a l | e x e c | e x i t | e x p o r t | g e t o p t s | h a s h | p w d | r e a d o n l y | r e t u r n | s h i f t | t e s t | t i m e s | t r a p | u m a s k | u n s e t | a l i a s | b i n d | b u i l t i n | c a l l e r | c o m m a n d | d e c l a r e | e c h o | e n a b l e | h e l p | l e t | l o c a l | l o g o u t | m a p f i l e | p r i n t f | r e a d | r e a d a r r a y | s o u Line truncated
! function ( e ) { var r = /%%?[~:\w]+%?|!\S+!/ , t = { pattern : /\/[a-z?]+(?=[ :]|$):?|-[a-z]\b|--[a-z-]+\b/im , alias : "attr-name" , inside : { punctuation : /:/ } } , n = /"(?:[\\"]"|[^"])*"(?!")/ , i = /(?:\b|-)\d+\b/ ; Prism . languages . batch = { comment : [ /^::.*/m , { pattern : /((?:^|[&(])[ \t]*)rem\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im , lookbehind : ! 0 } ] , label : { pattern : /^:.*/m , alias : "property" } , command : [ { pattern : /((?:^|[&(])[ \t]*)for(?: \/[a-z?](?:[ :](?:"[^"]*"|[^\s"/]\S*))?)* \S+ in \([^)]+\) do/im , lookbehind : ! 0 , inside : { keyword : /^for\b|\b(?:in|do)\b/i , string : n , parameter : t , variable : r , number : i , punctuation : /[()',]/ } } , { pattern : /((?:^|[&(])[ \t]*)if(?: \/[a-z?](?:[ :](?:"[^"]*"|[^\s"/]\S*))?)* (?:not )?(?:cmdextversion \d+|defined \w+|errorlevel \d+|exist \S+|(?:"[^"]*"|(?!")(?:(?!==)\S)+)?(?:==| (?:equ|neq|lss|leq|gtr|geq) )(?:"[^"]*"|[^\s"]\S*))/im , lookbehind : ! 0 , inside : { keyword : /^if\b|\b(?:not|cmdextversion|defined|errorlevel|exist)\b/i , string : n , parameter : t , variable : r , number : i , operator : /\^|==|\b(?:equ|neq|lss|leq|gtr|geq)\b/i } } , { pattern : /((?:^|[&()])[ \t]*)else\b/im , lookbehind : ! 0 , inside : { keyword : /^else\b/i } } , { pattern : /((?:^|[&(])[ \t]*)set(?: \/[a-z](?:[ :](?:"[^"]*"|[^\s"/]\S*))?)* (?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im , lookbehind : ! 0 , inside : { keyword : /^set\b/i , string : n , parameter : t , variable : [ r , /\w+(?=(?:[*\/%+\-&^|]|<<|>>)?=)/ ] , number : i , operator : /[*\/%+\-&^|]=?|<<=?|>>=?|[!~_=]/ , punctuation : /[()',]/ } } , { pattern : /((?:^|[&(])[ \t]*@?)\w+\b(?:"(?:[\\"]"|[^"])*"(?!")|[^"^&)\r\n]|\^(?:\r\n|[\s\S]))*/im , lookbehind : ! 0 , inside : { keyword : /^\w+\b/i , string : n , parameter : t , label : { pattern : /(^\s*):\S+/m , lookbehind : ! 0 , alias : "property" } , variable : r , number : i , operator : /\^/ } } ] , operator : /[&@]/ , punctuation : /[()']/ } } ( ) ;
Prism . languages . c = Prism . languages . extend ( "clike" , { comment : { pattern : /\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/ , greedy : ! 0 } , "class-name" : { pattern : /(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/ , lookbehind : ! 0 } , keyword : /\b(?:__attribute__|_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/ , function : /[a-z_]\w*(?=\s*\()/i , number : /(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i , operator : />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/ } ) , Prism . languages . insertBefore ( "c" , "string" , { macro : { pattern : /(^\s*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im , lookbehind : ! 0 , greedy : ! 0 , alias : "property" , inside : { string : [ { pattern : /^(#\s*include\s*)<[^>]+>/ , lookbehind : ! 0 } , Prism . languages . c . string ] , comment : Prism . languages . c . comment , "macro-name" : [ { pattern : /(^#\s*define\s+)\w+\b(?!\()/i , lookbehind : ! 0 } , { pattern : /(^#\s*define\s+)\w+\b(?=\()/i , lookbehind : ! 0 , alias : "function" } ] , directive : { pattern : /^(#\s*)[a-z]+/ , lookbehind : ! 0 , alias : "keyword" } , "directive-hash" : /^#/ , punctuation : /##|\\(?=[\r\n])/ , expression : { pattern : /\S[\s\S]*/ , inside : Prism . languages . c } } } , constant : /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ } ) , delete Prism . languages . c . boolean ;
! function ( s ) { function a ( e , s ) { return e . replace ( /<<(\d+)>>/g , function ( e , n ) { return "(?:" + s [ + n ] + ")" } ) } function t ( e , n , s ) { return RegExp ( a ( e , n ) , s || "" ) } function e ( e , n ) { for ( var s = 0 ; s < n ; s ++ ) e = e . replace ( /<<self>>/g , function ( ) { return "(?:" + e + ")" } ) ; return e . replace ( /<<self>>/g , "[^\\s\\S]" ) } var n = "bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void" , i = "class enum interface struct" , r = "add alias and ascending async await by descending from get global group into join let nameof not notnull on or orderby partial remove select set unmanaged value when where" , o = "abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield" ; function l ( e ) { return "\\b(?:" + e . trim ( ) . replace ( / /g , "|" ) + ")\\b" } var d = l ( i ) , p = RegExp ( l ( n + " " + i + " " + r + " " + o ) ) , c = l ( i + " " + r + " " + o ) , u = l ( n + " " + i + " " + o ) , g = e ( "<(?:[^<>;=+\\-*/%&|^]|<<self>>)*>" , 2 ) , b = e ( "\\((?:[^()]|<<self>>)*\\)" , 2 ) , h = "@?\\b[A-Za-z_]\\w*\\b" , f = a ( "<<0>>(?:\\s*<<1>>)?" , [ h , g ] ) , m = a ( "(?!<<0>>)<<1>>(?:\\s*\\.\\s*<<1>>)*" , [ c , f ] ) , k = "\\[\\s*(?:,\\s*)*\\]" , y = a ( "<<0>>(?:\\s*(?:\\?\\s*)?<<1>>)*(?:\\s*\\?)?" , [ m , k ] ) , w = a ( "(?:<<0>>|<<1>>)(?:\\s*(?:\\?\\s*)?<<2>>)*(?:\\s*\\?)?" , [ a ( "\\(<<0>>+(?:,<<0>>+)+\\)" , [ a ( "[^,()<>[\\];=+\\-*/%&|^]|<<0>>|<<1>>|<<2>>" , [ g , b , k ] ) ] ) , m , k ] ) , v = { keyword : p , punctuation : /[<>()?,.:[\]]/ } , x = "'(?:[^\r\n'\\\\]|\\\\.|\\\\[Uux][\\da-fA-F]{1,8})'" , $ = '"(?:\\\\.|[^\\\\"\r\n])*"' ; s . languages . csharp = s . languages . extend ( "clike" , { string : [ { pattern : t ( "(^|[^$\\\\])<<0>>" , [ '@"(?:""|\\\\[^]|[^\\\\"])*"(?!")' ] ) , lookbehind : ! 0 , greedy : ! 0 } , { pattern : t ( "(^|[^@$\\\\])<<0>>" , [ $ ] ) , lookbehind : ! 0 , greedy : ! 0 } , { pattern : RegExp ( x ) , greedy : ! 0 , alias : "character" } ] , "class-name" : [ { pattern : t ( "(\\busing\\s+static\\s+)<<0>>(?=\\s*;)" , [ m ] ) , lookbehind : ! 0 , inside : v } , { pattern : t ( "(\\busing\\s+<<0>>\\s*=\\s*)<<1>>(?=\\s*;)" , [ h , w ] ) , lookbehind : ! 0 , inside : v } , { pattern : t ( "(\\busing\\s+)<<0>>(?=\\s*=)" , [ h ] ) , lookbehind : ! 0 } , { pattern : t ( "(\\b<<0>>\\s+)<<1>>" , [ d , f ] ) , lookbehind : ! 0 , inside : v } , { pattern : t ( "(\\bcatch\\s*\\(\\s*)<<0>>" , [ m ] ) , lookbehind : ! 0 , inside : v } , { pattern : t ( "(\\bwhere\\s+)<<0>>" , [ h ] ) , lookbehind : ! 0 } , { pattern : t ( "(\\b(?:is(?:\\s+not)?|as)\\s+)<<0>>" , [ y ] ) , lookbehind : ! 0 , inside : v } , { pattern : t ( "\\b<<0>>(?=\\s+(?!<<1>>)<<2>>(?:\\s*[=,;:{)\\]]|\\s+(?:in|when)\\b))" , [ w , u , h ] ) , inside : v } ] , keyword : p , number : /(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:ul|lu|[dflmu])?\b/i , operator : />>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/ , punctuation : /\?\.?|::|[{}[\];(),.:]/ } ) , s . languages . insertBefore ( "csharp" , "number" , { range : { pattern : /\.\./ , alias : "operator" } } ) , s . languages . insertBefore ( "csharp" , "punctuation" , { "named-parameter" : { pattern : t ( "([(,]\\s*)<<0>>(?=\\s*:)" , [ h ] ) , lookbehind : ! 0 , alias : "punctuation" } } ) , s . languages . insertBefore ( "csharp" , "class-name" , { namespace : { pattern : t ( "(\\b(?:namespace|using)\\s+)<<0>>(?:\\s*\\.\\s*<<0>>)*(?=\\s*[;{])" , [ h ] ) , lookbehind : ! 0 , inside : { punctuation : /\./ } } , "type-expression" : { pattern : t ( "(\\b(?:default|typeof|sizeof)\\s*\\(\\s*(?!\\s))(?:[^()\\s]|\\s(?!\\s)|<<0>>)*(?=\\s*\\))" , [ b ] ) , lookbehind : ! 0 , alias : "class-name" , inside : v } , "return-type" : { pattern : t ( "<<0>>(?=\\s+(?:<<1>>\\s*(?:=>|[({]|\\.\\s*this\\s*\\[)|this\\s*\\[))" , [ w , m ] ) , inside : v , alias : "class-name" } , "constructor-invocation" : { pattern : t ( "(\\bnew\\s+)<<0>>(?=\\s*[[({])" , [ w ] ) , lookbehind : ! 0 , inside : v , alias : "class-name" } , "generic-method" : { pattern : t ( "<<0>>\\s*<<1>>(?=\\s*\\()" , [ h , g ] ) , inside : { function : t ( "^<<0>>" , [ h ] ) , generic : { pattern : RegExp ( g ) , alias : "class-name" , inside : v } } } , "type-list" : { pattern : t ( "\\b((?:<<0>>\\s+<<1>>|where\\s+<<2>>)\\s*:\\s*)(?:<<3>>|<<4>>)(?:\\s*,\\s*(?:<<3>>|<<4>>))*(?=\\s*(?:where|[{;]|=>|$))" , [ d , f , h , w , p . source ] ) , lookbehind : ! 0 , inside : { keyword : p , "class-name" : { pattern : RegExp ( w ) , greedy : ! 0 , inside : v } , punctuation : /,/ } } , preprocessor : { pattern : /(^\s*)#.*/m , lookbehind : ! 0 , alias : "property" , inside : { directive : { pattern : /(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/ , lookbehind : ! 0 , alias : "keyword" } } } } ) ; var _ = $ + "|" + x , B = a ( "/(?![*/])|//[^\r\n]*[\r\n]|/\\*(?:[^*]|\\*(?!/))*\\*/|<<0>>" , [ _ ] ) , E = e ( a ( "[^\"'/()]|<<0>>|\\(<<self>>*\\)" , [ B ] ) , 2 ) , R = "\\b(?:assembly|event|field|method|module|param|property|return|type)\\b" , P = a ( "<<0>>(?:\\s*\\(<<1>>*\\))?" , [ m , E ] ) ; s . languages . insertBefore ( "csharp" , "class-name" , { attribute : { pattern : t ( "((?:^|[^\\s\\w>)?])\\s*\\[\\s*)(?:<<0>>\\s*:\\s*)?<<1>>(?:\\s*,\\s*<<1>>)*(?=\\s*\\])" , [ R , P ] ) , lookbehind : ! 0 , greedy : ! 0 , inside : { target : { pattern : t ( "^<<0>>(?=\\s*:)" , [ R ] ) , alias : "keyword" } , "attribute-arguments" : { pattern : t ( "\\(<<0>>*\\)" , [ E ] ) , inside : s . languages . csharp } , "class-name" : { pattern : RegExp ( m ) , inside : { punctuation : /\./ } } , punctuation : /[:,]/ } } } ) ; var z = ":[^}\r\n]+" , S = e ( a ( "[^\" ' / ( ) ] | << 0 >> | \ \ ( << self >> * Line truncated
! function ( e ) { var t = /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char8_t|char16_t|char32_t|class|compl|concept|const|consteval|constexpr|constinit|const_cast|continue|co_await|co_return|co_yield|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/ ; e . languages . cpp = e . languages . extend ( "c" , { "class-name" : [ { pattern : RegExp ( "(\\b(?:class|concept|enum|struct|typename)\\s+)(?!<keyword>)\\w+" . replace ( /<keyword>/g , function ( ) { return t . source } ) ) , lookbehind : ! 0 } , /\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/ , /\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i , /\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/ ] , keyword : t , number : { pattern : /(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i , greedy : ! 0 } , operator : />>=?|<<=?|->|([-+&|:])\1|[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/ , boolean : /\b(?:true|false)\b/ } ) , e . languages . insertBefore ( "cpp" , "string" , { "raw-string" : { pattern : /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/ , alias : "string" , greedy : ! 0 } } ) , e . languages . insertBefore ( "cpp" , "class-name" , { "base-clause" : { pattern : /(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/ , lookbehind : ! 0 , greedy : ! 0 , inside : e . languages . extend ( "cpp" , { } ) } } ) , e . languages . insertBefore ( "inside" , "operator" , { "class-name" : /\b[a-z_]\w*\b(?!\s*::)/i } , e . languages . cpp [ "base-clause" ] ) } ( Prism ) ;
! function ( e ) { var t = /#(?!\{).+/ , n = { pattern : /#\{[^}]+\}/ , alias : "variable" } ; e . languages . coffeescript = e . languages . extend ( "javascript" , { comment : t , string : [ { pattern : /'(?:\\[\s\S]|[^\\'])*'/ , greedy : ! 0 } , { pattern : /"(?:\\[\s\S]|[^\\"])*"/ , greedy : ! 0 , inside : { interpolation : n } } ] , keyword : /\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/ , "class-member" : { pattern : /@(?!\d)\w+/ , alias : "variable" } } ) , e . languages . insertBefore ( "coffeescript" , "comment" , { "multiline-comment" : { pattern : /###[\s\S]+?###/ , alias : "comment" } , "block-regex" : { pattern : /\/{3}[\s\S]*?\/{3}/ , alias : "regex" , inside : { comment : t , interpolation : n } } } ) , e . languages . insertBefore ( "coffeescript" , "string" , { "inline-javascript" : { pattern : /`(?:\\[\s\S]|[^\\`])*`/ , inside : { delimiter : { pattern : /^`|`$/ , alias : "punctuation" } , script : { pattern : /[\s\S]+/ , alias : "language-javascript" , inside : e . languages . javascript } } } , "multiline-string" : [ { pattern : /'''[\s\S]*?'''/ , greedy : ! 0 , alias : "string" } , { pattern : /"""[\s\S]*?"""/ , greedy : ! 0 , alias : "string" , inside : { interpolation : n } } ] } ) , e . languages . insertBefore ( "coffeescript" , "keyword" , { property : /(?!\d)\w+(?=\s*:(?!:))/ } ) , delete e . languages . coffeescript [ "template-string" ] , e . languages . coffee = e . languages . coffeescript } ( Prism ) ;
! function ( e ) { var a , n = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ ; e . languages . css . selector = { pattern : e . languages . css . selector , inside : a = { "pseudo-element" : /:(?:after|before|first-letter|first-line|selection)|::[-\w]+/ , "pseudo-class" : /:[-\w]+/ , class : /\.[-\w]+/ , id : /#[-\w]+/ , attribute : { pattern : RegExp ( "\\[(?:[^[\\]\"']|" + n . source + ")*\\]" ) , greedy : ! 0 , inside : { punctuation : /^\[|\]$/ , "case-sensitivity" : { pattern : /(\s)[si]$/i , lookbehind : ! 0 , alias : "keyword" } , namespace : { pattern : /^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/ , lookbehind : ! 0 , inside : { punctuation : /\|$/ } } , "attr-name" : { pattern : /^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/ , lookbehind : ! 0 } , "attr-value" : [ n , { pattern : /(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/ , lookbehind : ! 0 } ] , operator : /[|~*^$]?=/ } } , "n-th" : [ { pattern : /(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/ , lookbehind : ! 0 , inside : { number : /[\dn]+/ , operator : /[+-]/ } } , { pattern : /(\(\s*)(?:even|odd)(?=\s*\))/i , lookbehind : ! 0 } ] , combinator : />|\+|~|\|\|/ , punctuation : /[(),]/ } } , e . languages . css . atrule . inside [ "selector-function-argument" ] . inside = a , e . languages . insertBefore ( "css" , "property" , { variable : { pattern : /(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i , lookbehind : ! 0 } } ) ; var r = { pattern : /(\b\d+)(?:%|[a-z]+\b)/ , lookbehind : ! 0 } , i = { pattern : /(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/ , lookbehind : ! 0 } ; e . languages . insertBefore ( "css" , "function" , { operator : { pattern : /(\s)[+\-*\/](?=\s)/ , lookbehind : ! 0 } , hexcode : { pattern : /\B#(?:[\da-f]{1,2}){3,4}\b/i , alias : "color" } , color : [ /\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i , { pattern : /\b(?:rgb|hsl)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:rgb|hsl)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i , inside : { unit : r , number : i , function : /[\w-]+(?=\()/ , punctuation : /[(),]/ } } ] , entity : /\\[\da-f]{1,8}/i , unit : r , number : i } ) } ( Prism ) ;
Prism . languages . dart = Prism . languages . extend ( "clike" , { string : [ { pattern : /r?("""|''')[\s\S]*?\1/ , greedy : ! 0 } , { pattern : /r?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 } ] , keyword : [ /\b(?:async|sync|yield)\*/ , /\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|covariant|default|deferred|do|dynamic|else|enum|export|extension|external|extends|factory|final|finally|for|Function|get|hide|if|implements|interface|import|in|library|mixin|new|null|on|operator|part|rethrow|return|set|show|static|super|switch|sync|this|throw|try|typedef|var|void|while|with|yield)\b/ ] , operator : /\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/ } ) , Prism . languages . insertBefore ( "dart" , "function" , { metadata : { pattern : /@\w+/ , alias : "symbol" } } ) ;
! function ( h ) { function v ( e , n ) { return "___" + e . toUpperCase ( ) + n + "___" } Object . defineProperties ( h . languages [ "markup-templating" ] = { } , { buildPlaceholders : { value : function ( a , r , e , o ) { if ( a . language === r ) { var c = a . tokenStack = [ ] ; a . code = a . code . replace ( e , function ( e ) { if ( "function" == typeof o && ! o ( e ) ) return e ; for ( var n , t = c . length ; - 1 !== a . code . indexOf ( n = v ( r , t ) ) ; ) ++ t ; return c [ t ] = e , n } ) , a . grammar = h . languages . markup } } } , tokenizePlaceholders : { value : function ( p , k ) { if ( p . language === k && p . tokenStack ) { p . grammar = h . languages [ k ] ; var m = 0 , d = Object . keys ( p . tokenStack ) ; ! function e ( n ) { for ( var t = 0 ; t < n . length && ! ( m >= d . length ) ; t ++ ) { var a = n [ t ] ; if ( "string" == typeof a || a . content && "string" == typeof a . content ) { var r = d [ m ] , o = p . tokenStack [ r ] , c = "string" == typeof a ? a : a . content , i = v ( k , r ) , u = c . indexOf ( i ) ; if ( - 1 < u ) { ++ m ; var g = c . substring ( 0 , u ) , l = new h . Token ( k , h . tokenize ( o , p . grammar ) , "language-" + k , o ) , s = c . substring ( u + i . length ) , f = [ ] ; g && f . push . apply ( f , e ( [ g ] ) ) , f . push ( l ) , s && f . push . apply ( f , e ( [ s ] ) ) , "string" == typeof a ? n . splice . apply ( n , [ t , 1 ] . concat ( f ) ) : a . content = f } } else a . content && e ( a . content ) } return n } ( p . tokens ) } } } } ) } ( Prism ) ;
! function ( e ) { e . languages . django = { comment : /^{#[\s\S]*?#}$/ , tag : { pattern : /(^{%[+-]?\s*)\w+/ , lookbehind : ! 0 , alias : "keyword" } , delimiter : { pattern : /^{[{%][+-]?|[+-]?[}%]}$/ , alias : "punctuation" } , string : { pattern : /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 } , filter : { pattern : /(\|)\w+/ , lookbehind : ! 0 , alias : "function" } , test : { pattern : /(\bis\s+(?:not\s+)?)(?!not\b)\w+/ , lookbehind : ! 0 , alias : "function" } , function : /\b[a-z_]\w+(?=\s*\()/i , keyword : /\b(?:and|as|by|else|for|if|import|in|is|loop|not|or|recursive|with|without)\b/ , operator : /[-+*/%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/ , number : /\b\d+(?:\.\d+)?\b/ , boolean : /[Tt]rue|[Ff]alse|[Nn]one/ , variable : /\b\w+?\b/ , punctuation : /[{}[\](),.:;]/ } ; var n = /{{[\s\S]*?}}|{%[\s\S]*?%}|{#[\s\S]*?#}/g , o = e . languages [ "markup-templating" ] ; e . hooks . add ( "before-tokenize" , function ( e ) { o . buildPlaceholders ( e , "django" , n ) } ) , e . hooks . add ( "after-tokenize" , function ( e ) { o . tokenizePlaceholders ( e , "django" ) } ) , e . languages . jinja2 = e . languages . django , e . hooks . add ( "before-tokenize" , function ( e ) { o . buildPlaceholders ( e , "jinja2" , n ) } ) , e . hooks . add ( "after-tokenize" , function ( e ) { o . tokenizePlaceholders ( e , "jinja2" ) } ) } ( Prism ) ;
Prism . languages [ "dns-zone-file" ] = { comment : /;.*/ , string : { pattern : /"(?:\\.|[^"\\\r\n])*"/ , greedy : ! 0 } , variable : [ { pattern : /(^\$ORIGIN[ \t]+)\S+/m , lookbehind : ! 0 } , { pattern : /(^|\s)@(?=\s|$)/ , lookbehind : ! 0 } ] , keyword : /^\$(?:ORIGIN|INCLUDE|TTL)(?=\s|$)/m , class : { pattern : /(^|\s)(?:IN|CH|CS|HS)(?=\s|$)/ , lookbehind : ! 0 , alias : "keyword" } , type : { pattern : /(^|\s)(?:A|A6|AAAA|AFSDB|APL|ATMA|CAA|CDNSKEY|CDS|CERT|CNAME|DHCID|DLV|DNAME|DNSKEY|DS|EID|GID|GPOS|HINFO|HIP|IPSECKEY|ISDN|KEY|KX|LOC|MAILA|MAILB|MB|MD|MF|MG|MINFO|MR|MX|NAPTR|NB|NBSTAT|NIMLOC|NINFO|NS|NSAP|NSAP-PTR|NSEC|NSEC3|NSEC3PARAM|NULL|NXT|OPENPGPKEY|PTR|PX|RKEY|RP|RRSIG|RT|SIG|SINK|SMIMEA|SOA|SPF|SRV|SSHFP|TA|TKEY|TLSA|TSIG|TXT|UID|UINFO|UNSPEC|URI|WKS|X25)(?=\s|$)/ , lookbehind : ! 0 , alias : "keyword" } , punctuation : /[()]/ } , Prism . languages [ "dns-zone" ] = Prism . languages [ "dns-zone-file" ] ;
Prism . languages . docker = { keyword : { pattern : /(^\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)/im , lookbehind : ! 0 } , string : /("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/ , comment : { pattern : /#.*/ , greedy : ! 0 } , punctuation : /---|\.\.\.|[:[\]{}\-,|>?]/ } , Prism . languages . dockerfile = Prism . languages . docker ;
Prism . languages . elixir = { comment : /#.*/m , regex : { pattern : /~[rR](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[uismxfr]*/ , greedy : ! 0 } , string : [ { pattern : /~[cCsSwW](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|#\{[^}]+\}|#(?!\{)|[^#\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[csa]?/ , greedy : ! 0 , inside : { } } , { pattern : /("""|''')[\s\S]*?\1/ , greedy : ! 0 , inside : { } } , { pattern : /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 , inside : { } } ] , atom : { pattern : /(^|[^:]):\w+/ , lookbehind : ! 0 , alias : "symbol" } , "attr-name" : /\w+\??:(?!:)/ , capture : { pattern : /(^|[^&])&(?:[^&\s\d()][^\s()]*|(?=\())/ , lookbehind : ! 0 , alias : "function" } , argument : { pattern : /(^|[^&])&\d+/ , lookbehind : ! 0 , alias : "variable" } , attribute : { pattern : /@\w+/ , alias : "variable" } , number : /\b(?:0[box][a-f\d_]+|\d[\d_]*)(?:\.[\d_]+)?(?:e[+-]?[\d_]+)?\b/i , keyword : /\b(?:after|alias|and|case|catch|cond|def(?:callback|exception|impl|module|p|protocol|struct|delegate)?|do|else|end|fn|for|if|import|not|or|require|rescue|try|unless|use|when)\b/ , boolean : /\b(?:true|false|nil)\b/ , operator : [ /\bin\b|&&?|\|[|>]?|\\\\|::|\.\.\.?|\+\+?|-[->]?|<[-=>]|>=|!==?|\B!|=(?:==?|[>~])?|[*\/^]/ , { pattern : /([^<])<(?!<)/ , lookbehind : ! 0 } , { pattern : /([^>])>(?!>)/ , lookbehind : ! 0 } ] , punctuation : /<<|>>|[.,%\[\]{}()]/ } , Prism . languages . insertBefore ( "elixir" , "keyword" , { module : { pattern : /\b(defmodule\s)[A-Z][\w.\\]+/ , lookbehind : ! 0 , alias : "class-name" } , function : { pattern : /\b(defp?\s)[\w.\\]+/ , lookbehind : ! 0 } } ) , Prism . languages . elixir . string . forEach ( function ( e ) { e . inside = { interpolation : { pattern : /#\{[^}]+\}/ , inside : { delimiter : { pattern : /^#\{|\}$/ , alias : "punctuation" } , rest : Prism . languages . elixir } } } } ) ;
Prism . languages . lua = { comment : /^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m , string : { pattern : /(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[^z]))*\1|\[(=*)\[[\s\S]*?\]\2\]/ , greedy : ! 0 } , number : /\b0x[a-f\d]+(?:\.[a-f\d]*)?(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|(?:\.\d*)?(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i , keyword : /\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/ , function : /(?!\d)\w+(?=\s*(?:[({]))/ , operator : [ /[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/ , { pattern : /(^|[^.])\.\.(?!\.)/ , lookbehind : ! 0 } ] , punctuation : /[\[\](){},;]|\.+|:+/ } ;
! function ( e ) { e . languages . etlua = { delimiter : { pattern : /^<%[-=]?|-?%>$/ , alias : "punctuation" } , "language-lua" : { pattern : /[\s\S]+/ , inside : e . languages . lua } } , e . hooks . add ( "before-tokenize" , function ( a ) { e . languages [ "markup-templating" ] . buildPlaceholders ( a , "etlua" , /<%[\s\S]+?%>/g ) } ) , e . hooks . add ( "after-tokenize" , function ( a ) { e . languages [ "markup-templating" ] . tokenizePlaceholders ( a , "etlua" ) } ) } ( Prism ) ;
Prism . languages . erlang = { comment : /%.+/ , string : { pattern : /"(?:\\.|[^\\"\r\n])*"/ , greedy : ! 0 } , "quoted-function" : { pattern : /'(?:\\.|[^\\'\r\n])+'(?=\()/ , alias : "function" } , "quoted-atom" : { pattern : /'(?:\\.|[^\\'\r\n])+'/ , alias : "atom" } , boolean : /\b(?:true|false)\b/ , keyword : /\b(?:fun|when|case|of|end|if|receive|after|try|catch)\b/ , number : [ /\$\\?./ , /\d+#[a-z0-9]+/i , /(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i ] , function : /\b[a-z][\w@]*(?=\()/ , variable : { pattern : /(^|[^@])(?:\b|\?)[A-Z_][\w@]*/ , lookbehind : ! 0 } , operator : [ /[=\/<>:]=|=[:\/]=|\+\+?|--?|[=*\/!]|\b(?:bnot|div|rem|band|bor|bxor|bsl|bsr|not|and|or|xor|orelse|andalso)\b/ , { pattern : /(^|[^<])<(?!<)/ , lookbehind : ! 0 } , { pattern : /(^|[^>])>(?!>)/ , lookbehind : ! 0 } ] , atom : /\b[a-z][\w@]*/ , punctuation : /[()[\]{}:;,.#|]|<<|>>/ } ;
Prism . languages . git = { comment : /^#.*/m , deleted : /^[-– ].*/m , inserted : /^\+.*/m , string : /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/m , command : { pattern : /^.*\$ git .*$/m , inside : { parameter : /\s--?\w+/m } } , coord : /^@@.*@@$/m , "commit-sha1" : /^commit \w{40}$/m } ;
Prism . languages . go = Prism . languages . extend ( "clike" , { string : { pattern : /(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1/ , greedy : ! 0 } , keyword : /\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/ , boolean : /\b(?:_|iota|nil|true|false)\b/ , number : /(?:\b0x[a-f\d]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[-+]?\d+)?)i?/i , operator : /[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./ , builtin : /\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/ } ) , delete Prism . languages . go [ "class-name" ] ;
Prism . languages . graphql = { comment : /#.*/ , description : { pattern : /(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i , greedy : ! 0 , alias : "string" , inside : { "language-markdown" : { pattern : /(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/ , lookbehind : ! 0 , inside : Prism . languages . markdown } } } , string : { pattern : /"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/ , greedy : ! 0 } , number : /(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i , boolean : /\b(?:true|false)\b/ , variable : /\$[a-z_]\w*/i , directive : { pattern : /@[a-z_]\w*/i , alias : "function" } , "attr-name" : { pattern : /[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i , greedy : ! 0 } , "class-name" : { pattern : /(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*)[a-zA-Z_]\w*/ , lookbehind : ! 0 } , fragment : { pattern : /(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/ , lookbehind : ! 0 , alias : "function" } , keyword : /\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/ , operator : /[!=|&]|\.{3}/ , punctuation : /[!(){}\[\]:=,]/ , constant : /\b(?!ID\b)[A-Z][A-Z_\d]*\b/ } ;
Prism . languages . groovy = Prism . languages . extend ( "clike" , { string : [ { pattern : /("""|''')(?:[^\\]|\\[\s\S])*?\1|\$\/(?:[^/$]|\$(?:[/$]|(?![/$]))|\/(?!\$))*\/\$/ , greedy : ! 0 } , { pattern : /(["'/])(?:\\.|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 } ] , keyword : /\b(?:as|def|in|abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|package|private|protected|public|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|trait|transient|try|void|volatile|while)\b/ , number : /\b(?:0b[01_]+|0x[\da-f_]+(?:\.[\da-f_p\-]+)?|[\d_]+(?:\.[\d_]+)?(?:e[+-]?[\d]+)?)[glidf]?\b/i , operator : { pattern : /(^|[^.])(?:~|==?~?|\?[.:]?|\*(?:[.=]|\*=?)?|\.[@&]|\.\.<|\.\.(?!\.)|-[-=>]?|\+[+=]?|!=?|<(?:<=?|=>?)?|>(?:>>?=?|=)?|&[&=]?|\|[|=]?|\/=?|\^=?|%=?)/ , lookbehind : ! 0 } , punctuation : /\.+|[{}[\];(),:$]/ } ) , Prism . languages . insertBefore ( "groovy" , "string" , { shebang : { pattern : /#!.+/ , alias : "comment" } } ) , Prism . languages . insertBefore ( "groovy" , "punctuation" , { "spock-block" : /\b(?:setup|given|when|then|and|cleanup|expect|where):/ } ) , Prism . languages . insertBefore ( "groovy" , "function" , { annotation : { pattern : /(^|[^.])@\w+/ , lookbehind : ! 0 , alias : "punctuation" } } ) , Prism . hooks . add ( "wrap" , function ( e ) { if ( "groovy" === e . language && "string" === e . type ) { var t = e . content [ 0 ] ; if ( "'" != t ) { var n = /([^\\])(?:\$(?:\{.*?\}|[\w.]+))/ ; "$" === t && ( n = /([^\$])(?:\$(?:\{.*?\}|[\w.]+))/ ) , e . content = e . content . replace ( /</g , "<" ) . replace ( /&/g , "&" ) , e . content = Prism . highlight ( e . content , { expression : { pattern : n , lookbehind : ! 0 , inside : Prism . languages . groovy } } ) , e . classes . push ( "/" === t ? "regex" : "gstring" ) } } } ) ;
! function ( e ) { e . languages . ruby = e . languages . extend ( "clike" , { comment : [ /#.*/ , { pattern : /^=begin\s[\s\S]*?^=end/m , greedy : ! 0 } ] , "class-name" : { pattern : /(\b(?:class)\s+|\bcatch\s+\()[\w.\\]+/i , lookbehind : ! 0 , inside : { punctuation : /[.\\]/ } } , keyword : /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/ } ) ; var n = { pattern : /#\{[^}]+\}/ , inside : { delimiter : { pattern : /^#\{|\}$/ , alias : "tag" } , rest : e . languages . ruby } } ; delete e . languages . ruby . function , e . languages . insertBefore ( "ruby" , "keyword" , { regex : [ { pattern : RegExp ( "%r(?:" + [ "([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[^])*\\1[gim]{0,3}" , "\\((?:[^()\\\\]|\\\\[^])*\\)[gim]{0,3}" , "\\{(?:[^#{}\\\\]|#(?:\\{[^}]+\\})?|\\\\[^])*\\}[gim]{0,3}" , "\\[(?:[^\\[\\]\\\\]|\\\\[^])*\\][gim]{0,3}" , "<(?:[^<>\\\\]|\\\\[^])*>[gim]{0,3}" ] . join ( "|" ) + ")" ) , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[gim]{0,3}(?=\s*(?:$|[\r\n,.;})]))/ , lookbehind : ! 0 , greedy : ! 0 } ] , variable : /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/ , symbol : { pattern : /(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/ , lookbehind : ! 0 } , "method-definition" : { pattern : /(\bdef\s+)[\w.]+/ , lookbehind : ! 0 , inside : { function : /\w+$/ , rest : e . languages . ruby } } } ) , e . languages . insertBefore ( "ruby" , "number" , { builtin : /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/ , constant : /\b[A-Z]\w*(?:[?!]|\b)/ } ) , e . languages . ruby . string = [ { pattern : RegExp ( "%[qQiIwWxs]?(?:" + [ "([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[^])*\\1" , "\\((?:[^()\\\\]|\\\\[^])*\\)" , "\\{(?:[^#{}\\\\]|#(?:\\{[^}]+\\})?|\\\\[^])*\\}" , "\\[(?:[^\\[\\]\\\\]|\\\\[^])*\\]" , "<(?:[^<>\\\\]|\\\\[^])*>" ] . join ( "|" ) + ")" ) , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/ , greedy : ! 0 , inside : { interpolation : n } } ] , e . languages . rb = e . languages . ruby } ( Prism ) ;
! function ( e ) { e . languages . haml = { "multiline-comment" : { pattern : /((?:^|\r?\n|\r)([\t ]*))(?:\/|-#).*(?:(?:\r?\n|\r)\2[\t ].+)*/ , lookbehind : ! 0 , alias : "comment" } , "multiline-code" : [ { pattern : /((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*,[\t ]*(?:(?:\r?\n|\r)\2[\t ].*,[\t ]*)*(?:(?:\r?\n|\r)\2[\t ].+)/ , lookbehind : ! 0 , inside : e . languages . ruby } , { pattern : /((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*\|[\t ]*(?:(?:\r?\n|\r)\2[\t ].*\|[\t ]*)*/ , lookbehind : ! 0 , inside : e . languages . ruby } ] , filter : { pattern : /((?:^|\r?\n|\r)([\t ]*)):[\w-]+(?:(?:\r?\n|\r)(?:\2[\t ].+|\s*?(?=\r?\n|\r)))+/ , lookbehind : ! 0 , inside : { "filter-name" : { pattern : /^:[\w-]+/ , alias : "variable" } } } , markup : { pattern : /((?:^|\r?\n|\r)[\t ]*)<.+/ , lookbehind : ! 0 , inside : e . languages . markup } , doctype : { pattern : /((?:^|\r?\n|\r)[\t ]*)!!!(?: .+)?/ , lookbehind : ! 0 } , tag : { pattern : /((?:^|\r?\n|\r)[\t ]*)[%.#][\w\-#.]*[\w\-](?:\([^)]+\)|\{(?:\{[^}]+\}|[^{}])+\}|\[[^\]]+\])*[\/<>]*/ , lookbehind : ! 0 , inside : { attributes : [ { pattern : /(^|[^#])\{(?:\{[^}]+\}|[^{}])+\}/ , lookbehind : ! 0 , inside : e . languages . ruby } , { pattern : /\([^)]+\)/ , inside : { "attr-value" : { pattern : /(=\s*)(?:"(?:\\.|[^\\"\r\n])*"|[^)\s]+)/ , lookbehind : ! 0 } , "attr-name" : /[\w:-]+(?=\s*!?=|\s*[,)])/ , punctuation : /[=(),]/ } } , { pattern : /\[[^\]]+\]/ , inside : e . languages . ruby } ] , punctuation : /[<>]/ } } , code : { pattern : /((?:^|\r?\n|\r)[\t ]*(?:[~-]|[&!]?=)).+/ , lookbehind : ! 0 , inside : e . languages . ruby } , interpolation : { pattern : /#\{[^}]+\}/ , inside : { delimiter : { pattern : /^#\{|\}$/ , alias : "punctuation" } , rest : e . languages . ruby } } , punctuation : { pattern : /((?:^|\r?\n|\r)[\t ]*)[~=\-&!]+/ , lookbehind : ! 0 } } ; for ( var t = [ "css" , { filter : "coffee" , language : "coffeescript" } , "erb" , "javascript" , "less" , "markdown" , "ruby" , "scss" , "textile" ] , n = { } , r = 0 , a = t . length ; r < a ; r ++ ) { var i = t [ r ] ; i = "string" == typeof i ? { filter : i , language : i } : i , e . languages [ i . language ] && ( n [ "filter-" + i . filter ] = { pattern : RegExp ( "((?:^|\\r?\\n|\\r)([\\t ]*)):{{filter_name}}(?:(?:\\r?\\n|\\r)(?:\\2[\\t ].+|\\s*?(?=\\r?\\n|\\r)))+" . replace ( "{{filter_name}}" , function ( ) { return i . filter } ) ) , lookbehind : ! 0 , inside : { "filter-name" : { pattern : /^:[\w-]+/ , alias : "variable" } , rest : e . languages [ i . language ] } } ) } e . languages . insertBefore ( "haml" , "filter" , n ) } ( Prism ) ;
! function ( e ) { e . languages . handlebars = { comment : /\{\{![\s\S]*?\}\}/ , delimiter : { pattern : /^\{\{\{?|\}\}\}?$/i , alias : "punctuation" } , string : /(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/ , number : /\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/ , boolean : /\b(?:true|false)\b/ , block : { pattern : /^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/i , lookbehind : ! 0 , alias : "keyword" } , brackets : { pattern : /\[[^\]]+\]/ , inside : { punctuation : /\[|\]/ , variable : /[\s\S]+/ } } , punctuation : /[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/ , variable : /[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/ } , e . hooks . add ( "before-tokenize" , function ( a ) { e . languages [ "markup-templating" ] . buildPlaceholders ( a , "handlebars" , /\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g ) } ) , e . hooks . add ( "after-tokenize" , function ( a ) { e . languages [ "markup-templating" ] . tokenizePlaceholders ( a , "handlebars" ) } ) } ( Prism ) ;
Prism . languages . haskell = { comment : { pattern : /(^|[^-!#$%*+=?&@|~.:<>^\\\/])(?:--(?:(?=.)[^-!#$%*+=?&@|~.:<>^\\\/].*|$)|{-[\s\S]*?-})/m , lookbehind : ! 0 } , char : { pattern : /'(?:[^\\']|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+))'/ , alias : "string" } , string : { pattern : /"(?:[^\\"]|\\(?:\S|\s+\\))*"/ , greedy : ! 0 } , keyword : /\b(?:case|class|data|deriving|do|else|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b/ , "import-statement" : { pattern : /(^\s*)import\s+(?:qualified\s+)?(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*(?:\s+as\s+(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m , lookbehind : ! 0 , inside : { keyword : /\b(?:import|qualified|as|hiding)\b/ } } , builtin : /\b(?:abs|acos|acosh|all|and|any|appendFile|approxRational|asTypeOf|asin|asinh|atan|atan2|atanh|basicIORun|break|catch|ceiling|chr|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|denominator|digitToInt|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldl|foldl1|foldr|foldr1|fromDouble|fromEnum|fromInt|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|group|head|id|inRange|index|init|intToDigit|interact|ioError|isAlpha|isAlphaNum|isAscii|isControl|isDenormalized|isDigit|isHexDigit|isIEEE|isInfinite|isLower|isNaN|isNegativeZero|isOctDigit|isPrint|isSpace|isUpper|iterate|last|lcm|length|lex|lexDigits|lexLitChar|lines|log|logBase|lookup|map|mapM|mapM_|max|maxBound|maximum|maybe|min|minBound|minimum|mod|negate|not|notElem|null|numerator|odd|or|ord|otherwise|pack|pi|pred|primExitWith|print|product|properFraction|putChar|putStr|putStrLn|quot|quotRem|range|rangeSize|read|readDec|readFile|readFloat|readHex|readIO|readInt|readList|readLitChar|readLn|readOct|readParen|readSigned|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequence_|show|showChar|showInt|showList|showLitChar|showParen|showSigned|showString|shows|showsPrec|significand|signum|sin|sinh|snd|sort|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|threadToIOResult|toEnum|toInt|toInteger|toLower|toRational|toUpper|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)\b/ , number : /\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0o[0-7]+|0x[0-9a-f]+)\b/i , operator : /\s\.\s|[-!#$%*+=?&@|~:<>^\\\/]*\.[-!#$%*+=?&@|~.:<>^\\\/]+|[-!#$%*+=?&@|~.:<>^\\\/]+\.[-!#$%*+=?&@|~:<>^\\\/]*|[-!#$%*+=?&@|~:<>^\\\/]+|`(?:[A-Z][\w']*\.)*[_a-z][\w']*`/ , hvariable : /\b(?:[A-Z][\w']*\.)*[_a-z][\w']*\b/ , constant : /\b(?:[A-Z][\w']*\.)*[A-Z][\w']*\b/ , punctuation : /[{}[\];(),.:]/ } , Prism . languages . hs = Prism . languages . haskell ;
! function ( t ) { t . languages . http = { "request-line" : { pattern : /^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\s(?:https?:\/\/|\/)\S+\sHTTP\/[0-9.]+/m , inside : { property : /^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\b/ , "attr-name" : /:\w+/ } } , "response-status" : { pattern : /^HTTP\/1.[01] \d.*/m , inside : { property : { pattern : /(^HTTP\/1.[01] )\d.*/i , lookbehind : ! 0 } } } , "header-name" : { pattern : /^[\w-]+:(?=.)/m , alias : "keyword" } } ; var a , e , n , i = t . languages , p = { "application/javascript" : i . javascript , "application/json" : i . json || i . javascript , "application/xml" : i . xml , "text/xml" : i . xml , "text/html" : i . html , "text/css" : i . css } , r = { "application/json" : ! 0 , "application/xml" : ! 0 } ; for ( var s in p ) if ( p [ s ] ) { a = a || { } ; var T = r [ s ] ? ( void 0 , n = ( e = s ) . replace ( /^[a-z]+\// , "" ) , "(?:" + e + "|\\w+/(?:[\\w.-]+\\+)+" + n + "(?![+\\w.-]))" ) : s ; a [ s . replace ( /\//g , "-" ) ] = { pattern : RegExp ( "(content-type:\\s*" + T + ".*)(?:\\r?\\n|\\r){2}[\\s\\S]*" , "i" ) , lookbehind : ! 0 , inside : p [ s ] } } a && t . languages . insertBefore ( "http" , "header-name" , a ) } ( Prism ) ;
Prism . languages . hpkp = { directive : { pattern : /\b(?:(?:includeSubDomains|preload|strict)(?: |;)|pin-sha256="[a-zA-Z\d+=/]+"|(?:max-age|report-uri)=|report-to )/ , alias : "keyword" } , safe : { pattern : /\b\d{7,}\b/ , alias : "selector" } , unsafe : { pattern : /\b\d{1,6}\b/ , alias : "function" } } ;
Prism . languages . hsts = { directive : { pattern : /\b(?:max-age=|includeSubDomains|preload)/ , alias : "keyword" } , safe : { pattern : /\b\d{8,}\b/ , alias : "selector" } , unsafe : { pattern : /\b\d{1,7}\b/ , alias : "function" } } ;
Prism . languages . ini = { comment : /^[ \t]*[;#].*$/m , selector : /^[ \t]*\[.*?\]/m , constant : /^[ \t]*[^\s=]+?(?=[ \t]*=)/m , "attr-value" : { pattern : /=.*/ , inside : { punctuation : /^[=]/ } } } ;
! function ( e ) { var t = /\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/ , n = "(^|[^\\w.])(?:[a-z]\\w*\\s*\\.\\s*)*(?:[A-Z]\\w*\\s*\\.\\s*)*" , a = { pattern : RegExp ( n + "[A-Z](?:[\\d_A-Z]*[a-z]\\w*)?\\b" ) , lookbehind : ! 0 , inside : { namespace : { pattern : /^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/ , inside : { punctuation : /\./ } } , punctuation : /\./ } } ; e . languages . java = e . languages . extend ( "clike" , { "class-name" : [ a , { pattern : RegExp ( n + "[A-Z]\\w*(?=\\s+\\w+\\s*[;,=())])" ) , lookbehind : ! 0 , inside : a . inside } ] , keyword : t , function : [ e . languages . clike . function , { pattern : /(\:\:\s*)[a-z_]\w*/ , lookbehind : ! 0 } ] , number : /\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i , operator : { pattern : /(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m , lookbehind : ! 0 } } ) , e . languages . insertBefore ( "java" , "string" , { "triple-quoted-string" : { pattern : /"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/ , greedy : ! 0 , alias : "string" } } ) , e . languages . insertBefore ( "java" , "class-name" , { annotation : { pattern : /(^|[^.])@\w+(?:\s*\.\s*\w+)*/ , lookbehind : ! 0 , alias : "punctuation" } , generics : { pattern : /<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/ , inside : { "class-name" : a , keyword : t , punctuation : /[<>(),.:]/ , operator : /[?&|]/ } } , namespace : { pattern : RegExp ( "(\\b(?:exports|import(?:\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\s+)(?!<keyword>)[a-z]\\w*(?:\\.[a-z]\\w*)*\\.?" . replace ( /<keyword>/g , function ( ) { return t . source } ) ) , lookbehind : ! 0 , inside : { punctuation : /\./ } } } ) } ( Prism ) ;
! function ( a ) { var e = /\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/ , t = [ { pattern : /\b(?:false|true)\b/i , alias : "boolean" } , /\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/ , /\b(?:null)\b/i ] , i = /\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i , n = /<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/ , s = /[{}\[\](),:;]/ ; a . languages . php = { delimiter : { pattern : /\?>$|^<\?(?:php(?=\s)|=)?/i , alias : "important" } , comment : e , variable : /\$+(?:\w+\b|(?={))/i , package : { pattern : /(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i , lookbehind : ! 0 , inside : { punctuation : /\\/ } } , keyword : [ { pattern : /(\(\s*)\b(?:bool|boolean|int|integer|float|string|object|array)\b(?=\s*\))/i , alias : "type-casting" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /([(,?]\s*)\b(?:bool|int|float|string|object|array(?!\s*\()|mixed|self|static|callable|iterable|(?:null|false)(?=\s*\|))\b(?=\s*\$)/i , alias : "type-hint" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /([(,?]\s*[a-z0-9_|]\|\s*)(?:null|false)\b(?=\s*\$)/i , alias : "type-hint" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /(\)\s*:\s*(?:\?\s*)?)\b(?:bool|int|float|string|object|void|array(?!\s*\()|mixed|self|static|callable|iterable|(?:null|false)(?=\s*\|))\b/i , alias : "return-type" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /(\)\s*:\s*(?:\?\s*)?[a-z0-9_|]\|\s*)(?:null|false)\b/i , alias : "return-type" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /\b(?:bool|int|float|string|object|void|array(?!\s*\()|mixed|iterable|(?:null|false)(?=\s*\|))\b/i , alias : "type-declaration" , greedy : ! 0 } , { pattern : /(\|\s*)(?:null|false)\b/i , alias : "type-declaration" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /\b(?:parent|self|static)(?=\s*::)/i , alias : "static-context" , greedy : ! 0 } , /\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|match|new|or|parent|print|private|protected|public|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i ] , "argument-name" : /\b[a-z_]\w*(?=\s*:(?!:))/i , "class-name" : [ { pattern : /(\b(?:class|interface|extends|implements|trait|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /(\|\s*)\b[a-z_]\w*(?!\\)\b/i , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i , greedy : ! 0 } , { pattern : /(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i , alias : "class-name-fully-qualified" , greedy : ! 0 , lookbehind : ! 0 , inside : { punctuation : /\\/ } } , { pattern : /(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i , alias : "class-name-fully-qualified" , greedy : ! 0 , inside : { punctuation : /\\/ } } , { pattern : /(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i , alias : "class-name-fully-qualified" , greedy : ! 0 , lookbehind : ! 0 , inside : { punctuation : /\\/ } } , { pattern : /\b[a-z_]\w*(?=\s*\$)/i , alias : "type-declaration" , greedy : ! 0 } , { pattern : /(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i , alias : [ "class-name-fully-qualified" , "type-declaration" ] , greedy : ! 0 , inside : { punctuation : /\\/ } } , { pattern : /\b[a-z_]\w*(?=\s*::)/i , alias : "static-context" , greedy : ! 0 } , { pattern : /(?:\\?\b[a-z_]\w*)+(?=\s*::)/i , alias : [ "class-name-fully-qualified" , "static-context" ] , greedy : ! 0 , inside : { punctuation : /\\/ } } , { pattern : /([(,?]\s*)[a-z_]\w*(?=\s*\$)/i , alias : "type-hint" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i , alias : [ "class-name-fully-qualified" , "type-hint" ] , greedy : ! 0 , lookbehind : ! 0 , inside : { punctuation : /\\/ } } , { pattern : /(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i , alias : "return-type" , greedy : ! 0 , lookbehind : ! 0 } , { pattern : /(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i , alias : [ "class-name-fully-qualified" , "return-type" ] , greedy : ! 0 , lookbehind : ! 0 , inside : { punctuation : /\\/ } } ] , constant : t , function : /\w+\s*(?=\()/ , property : { pattern : /(->)[\w]+/ , lookbehind : ! 0 } , number : i , operator : n , punctuation : s } ; var l = { pattern : /{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)*)/ , lookbehind : ! 0 , inside : a . languages . php } , r = [ { pattern : /<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/ , alias : "nowdoc-string" , greedy : ! 0 , inside : { delimiter : { pattern : /^<<<'[^']+'|[a-z_]\w*;$/i , alias : "symbol" , inside : { punctuation : /^<<<'?|[';]$/ } } } } , { pattern : /<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i , alias : "heredoc-string" , greedy : ! 0 , inside : { delimiter : { pattern : /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i , alias : "symbol" , inside : { punctuation : /^<<<"?|[";]$/ } } , interpolation : l } } , { pattern : /`(?:\\[\s\S]|[^\\`])*`/ , alias : "backtick-quoted-string" , greedy : ! 0 } , { pattern : /'(?:\\[\s\S]|[^\\'])*'/ , alias : "single-quoted-string" , greedy : ! 0 } , { pattern : /"(?:\\[\s\S]|[^\\"])*"/ , alias : "double-quoted-string" , greedy : ! 0 , inside : { interpolation : l } } ] ; a . languages . insertBefore ( "php" , "variable" , { string : r } ) , a . languages . insertBefore ( "php" , "variable" , { attribute : { pattern : / # \ [ ( ? : [ ^ " ' \ / # ] | \ / ( ? ! [ * / ] ) | \ / \ / . * $ | # ( ? ! \ [ ) . * $ Line truncated
! function ( p ) { var a = p . languages . javadoclike = { parameter : { pattern : /(^\s*(?:\/{3}|\*|\/\*\*)\s*@(?:param|arg|arguments)\s+)\w+/m , lookbehind : ! 0 } , keyword : { pattern : /(^\s*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m , lookbehind : ! 0 } , punctuation : /[{}]/ } ; Object . defineProperty ( a , "addSupport" , { value : function ( a , e ) { "string" == typeof a && ( a = [ a ] ) , a . forEach ( function ( a ) { ! function ( a , e ) { var n = "doc-comment" , t = p . languages [ a ] ; if ( t ) { var r = t [ n ] ; if ( ! r ) { var o = { "doc-comment" : { pattern : /(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/ , lookbehind : ! 0 , alias : "comment" } } ; r = ( t = p . languages . insertBefore ( a , "comment" , o ) ) [ n ] } if ( r instanceof RegExp && ( r = t [ n ] = { pattern : r } ) , Array . isArray ( r ) ) for ( var i = 0 , s = r . length ; i < s ; i ++ ) r [ i ] instanceof RegExp && ( r [ i ] = { pattern : r [ i ] } ) , e ( r [ i ] ) ; else e ( r ) } } ( a , function ( a ) { a . inside || ( a . inside = { } ) , a . inside . rest = e } ) } ) } } ) , a . addSupport ( [ "java" , "javascript" , "php" ] , a ) } ( Prism ) ;
! function ( a ) { var e = /(^(?:\s*(?:\*\s*)*))[^*\s].*$/m , n = "(?:[a-zA-Z]\\w+\\s*\\.\\s*)*[A-Z]\\w*(?:\\s*<mem>)?|<mem>" . replace ( /<mem>/g , function ( ) { return "#\\s*\\w+(?:\\s*\\([^()]*\\))?" } ) ; a . languages . javadoc = a . languages . extend ( "javadoclike" , { } ) , a . languages . insertBefore ( "javadoc" , "keyword" , { reference : { pattern : RegExp ( "(@(?:exception|throws|see|link|linkplain|value)\\s+(?:\\*\\s*)?)(?:" + n + ")" ) , lookbehind : ! 0 , inside : { function : { pattern : /(#\s*)\w+(?=\s*\()/ , lookbehind : ! 0 } , field : { pattern : /(#\s*)\w+/ , lookbehind : ! 0 } , namespace : { pattern : /\b(?:[a-z]\w*\s*\.\s*)+/ , inside : { punctuation : /\./ } } , "class-name" : /\b[A-Z]\w*/ , keyword : a . languages . java . keyword , punctuation : /[#()[\],.]/ } } , "class-name" : { pattern : /(@param\s+)<[A-Z]\w*>/ , lookbehind : ! 0 , inside : { punctuation : /[.<>]/ } } , "code-section" : [ { pattern : /(\{@code\s+(?!\s))(?:[^\s{}]|\s+(?![\s}])|\{(?:[^{}]|\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\})*\})+(?=\s*\})/ , lookbehind : ! 0 , inside : { code : { pattern : e , lookbehind : ! 0 , inside : a . languages . java , alias : "language-java" } } } , { pattern : /(<(code|pre|tt)>(?!<code>)\s*)\S(?:\S|\s+\S)*?(?=\s*<\/\2>)/ , lookbehind : ! 0 , inside : { line : { pattern : e , lookbehind : ! 0 , inside : { tag : a . languages . markup . tag , entity : a . languages . markup . entity , code : { pattern : /.+/ , inside : a . languages . java , alias : "language-java" } } } } } ] , tag : a . languages . markup . tag , entity : a . languages . markup . entity } ) , a . languages . javadoclike . addSupport ( "java" , a . languages . javadoc ) } ( Prism ) ;
! function ( e ) { e . languages . typescript = e . languages . extend ( "javascript" , { "class-name" : { pattern : /(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/ , lookbehind : ! 0 , greedy : ! 0 , inside : null } , keyword : /\b(?:abstract|as|asserts|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|undefined|var|void|while|with|yield)\b/ , builtin : /\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/ } ) , delete e . languages . typescript . parameter ; var n = e . languages . extend ( "typescript" , { } ) ; delete n [ "class-name" ] , e . languages . typescript [ "class-name" ] . inside = n , e . languages . insertBefore ( "typescript" , "function" , { "generic-function" : { pattern : /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/ , greedy : ! 0 , inside : { function : /^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/ , generic : { pattern : /<[\s\S]+/ , alias : "class-name" , inside : n } } } } ) , e . languages . ts = e . languages . typescript } ( Prism ) ;
! function ( e ) { var a = e . languages . javascript , n = "{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})+}" , s = "(@(?:param|arg|argument|property)\\s+(?:" + n + "\\s+)?)" ; e . languages . jsdoc = e . languages . extend ( "javadoclike" , { parameter : { pattern : RegExp ( s + "(?:(?!\\s)[$\\w\\xA0-\\uFFFF.])+(?=\\s|$)" ) , lookbehind : ! 0 , inside : { punctuation : /\./ } } } ) , e . languages . insertBefore ( "jsdoc" , "keyword" , { "optional-parameter" : { pattern : RegExp ( s + "\\[(?:(?!\\s)[$\\w\\xA0-\\uFFFF.])+(?:=[^[\\]]+)?\\](?=\\s|$)" ) , lookbehind : ! 0 , inside : { parameter : { pattern : /(^\[)[$\w\xA0-\uFFFF\.]+/ , lookbehind : ! 0 , inside : { punctuation : /\./ } } , code : { pattern : /(=)[\s\S]*(?=\]$)/ , lookbehind : ! 0 , inside : a , alias : "language-javascript" } , punctuation : /[=[\]]/ } } , "class-name" : [ { pattern : RegExp ( "(@(?:augments|extends|class|interface|memberof!?|template|this|typedef)\\s+(?:<TYPE>\\s+)?)[A-Z]\\w*(?:\\.[A-Z]\\w*)*" . replace ( /<TYPE>/g , function ( ) { return n } ) ) , lookbehind : ! 0 , inside : { punctuation : /\./ } } , { pattern : RegExp ( "(@[a-z]+\\s+)" + n ) , lookbehind : ! 0 , inside : { string : a . string , number : a . number , boolean : a . boolean , keyword : e . languages . typescript . keyword , operator : /=>|\.\.\.|[&|?:*]/ , punctuation : /[.,;=<>{}()[\]]/ } } ] , example : { pattern : /(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/ , lookbehind : ! 0 , inside : { code : { pattern : /^(\s*(?:\*\s*)?)\S.*$/m , lookbehind : ! 0 , inside : a , alias : "language-javascript" } } } } ) , e . languages . javadoclike . addSupport ( "javascript" , e . languages . jsdoc ) } ( Prism ) ;
! function ( a ) { function e ( a , e ) { return RegExp ( a . replace ( /<ID>/g , function ( ) { return "(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*" } ) , e ) } a . languages . insertBefore ( "javascript" , "function-variable" , { "method-variable" : { pattern : RegExp ( "(\\.\\s*)" + a . languages . javascript [ "function-variable" ] . pattern . source ) , lookbehind : ! 0 , alias : [ "function-variable" , "method" , "function" , "property-access" ] } } ) , a . languages . insertBefore ( "javascript" , "function" , { method : { pattern : RegExp ( "(\\.\\s*)" + a . languages . javascript . function . source ) , lookbehind : ! 0 , alias : [ "function" , "property-access" ] } } ) , a . languages . insertBefore ( "javascript" , "constant" , { "known-class-name" : [ { pattern : /\b(?:(?:(?:Uint|Int)(?:8|16|32)|Uint8Clamped|Float(?:32|64))?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|(?:Weak)?(?:Set|Map)|WebAssembly)\b/ , alias : "class-name" } , { pattern : /\b(?:[A-Z]\w*)Error\b/ , alias : "class-name" } ] } ) , a . languages . insertBefore ( "javascript" , "keyword" , { imports : { pattern : e ( "(\\bimport\\b\\s*)(?:<ID>(?:\\s*,\\s*(?:\\*\\s*as\\s+<ID>|\\{[^{}]*\\}))?|\\*\\s*as\\s+<ID>|\\{[^{}]*\\})(?=\\s*\\bfrom\\b)" ) , lookbehind : ! 0 , inside : a . languages . javascript } , exports : { pattern : e ( "(\\bexport\\b\\s*)(?:\\*(?:\\s*as\\s+<ID>)?(?=\\s*\\bfrom\\b)|\\{[^{}]*\\})" ) , lookbehind : ! 0 , inside : a . languages . javascript } } ) , a . languages . javascript . keyword . unshift ( { pattern : /\b(?:as|default|export|from|import)\b/ , alias : "module" } , { pattern : /\b(?:await|break|catch|continue|do|else|for|finally|if|return|switch|throw|try|while|yield)\b/ , alias : "control-flow" } , { pattern : /\bnull\b/ , alias : [ "null" , "nil" ] } , { pattern : /\bundefined\b/ , alias : "nil" } ) , a . languages . insertBefore ( "javascript" , "operator" , { spread : { pattern : /\.{3}/ , alias : "operator" } , arrow : { pattern : /=>/ , alias : "operator" } } ) , a . languages . insertBefore ( "javascript" , "punctuation" , { "property-access" : { pattern : e ( "(\\.\\s*)#?<ID>" ) , lookbehind : ! 0 } , "maybe-class-name" : { pattern : /(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/ , lookbehind : ! 0 } , dom : { pattern : /\b(?:document|location|navigator|performance|(?:local|session)Storage|window)\b/ , alias : "variable" } , console : { pattern : /\bconsole(?=\s*\.)/ , alias : "class-name" } } ) ; for ( var t = [ "function" , "function-variable" , "method" , "method-variable" , "property-access" ] , r = 0 ; r < t . length ; r ++ ) { var n = t [ r ] , s = a . languages . javascript [ n ] ; "RegExp" === a . util . type ( s ) && ( s = a . languages . javascript [ n ] = { pattern : s } ) ; var o = s . inside || { } ; ( s . inside = o ) [ "maybe-class-name" ] = /^[A-Z][\s\S]*/ } } ( Prism ) ;
Prism . languages . json = { property : { pattern : /(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/ , lookbehind : ! 0 , greedy : ! 0 } , string : { pattern : /(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/ , lookbehind : ! 0 , greedy : ! 0 } , comment : { pattern : /\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/ , greedy : ! 0 } , number : /-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i , punctuation : /[{}[\],]/ , operator : /:/ , boolean : /\b(?:true|false)\b/ , null : { pattern : /\bnull\b/ , alias : "keyword" } } , Prism . languages . webmanifest = Prism . languages . json ;
! function ( n ) { var e = /("|')(?:\\(?:\r\n?|\n|.)|(?!\1)[^\\\r\n])*\1/ ; n . languages . json5 = n . languages . extend ( "json" , { property : [ { pattern : RegExp ( e . source + "(?=\\s*:)" ) , greedy : ! 0 } , { pattern : /(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/ , alias : "unquoted" } ] , string : { pattern : e , greedy : ! 0 } , number : /[+-]?\b(?:NaN|Infinity|0x[a-fA-F\d]+)\b|[+-]?(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+\b)?/ } ) } ( Prism ) ;
Prism . languages . jsonp = Prism . languages . extend ( "json" , { punctuation : /[{}[\]();,.]/ } ) , Prism . languages . insertBefore ( "jsonp" , "punctuation" , { function : /(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*\()/ } ) ;
Prism . languages . julia = { comment : { pattern : /(^|[^\\])(?:#=(?:[^#=]|=(?!#)|#(?!=)|#=(?:[^#=]|=(?!#)|#(?!=))*=#)*=#|#.*)/ , lookbehind : ! 0 } , regex : { pattern : /r"(?:\\.|[^"\\\r\n])*"[imsx]{0,4}/ , greedy : ! 0 } , string : { pattern : /"""[\s\S]+?"""|\w*"(?:\\.|[^"\\\r\n])*"|(^|[^\w'])'(?:\\[^\r\n][^'\r\n]*|[^\\\r\n])'|`(?:[^\\`\r\n]|\\.)*`/ , lookbehind : ! 0 , greedy : ! 0 } , keyword : /\b(?:abstract|baremodule|begin|bitstype|break|catch|ccall|const|continue|do|else|elseif|end|export|finally|for|function|global|if|immutable|import|importall|in|let|local|macro|module|print|println|quote|return|struct|try|type|typealias|using|while)\b/ , boolean : /\b(?:true|false)\b/ , number : /(?:\b(?=\d)|\B(?=\.))(?:0[box])?(?:[\da-f]+(?:_[\da-f]+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[efp][+-]?\d+(?:_\d+)*)?j?/i , operator : /&&|\|\||[-+*^%÷⊻&$\\]=?|\/[\/=]?|!=?=?|\|[=>]?|<(?:<=?|[=:|])?|>(?:=|>>?=?)?|==?=?|[~≠≤≥'√∛]/ , punctuation : /::?|[{}[\]();,.?]/ , constant : /\b(?:(?:NaN|Inf)(?:16|32|64)?|im|pi)\b|[πℯ]/ } ;
! function ( e ) { e . languages . kotlin = e . languages . extend ( "clike" , { keyword : { pattern : /(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/ , lookbehind : ! 0 } , function : [ { pattern : /(?:`[^\r\n`]+`|\w+)(?=\s*\()/ , greedy : ! 0 } , { pattern : /(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/ , lookbehind : ! 0 , greedy : ! 0 } ] , number : /\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/ , operator : /\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/ } ) , delete e . languages . kotlin [ "class-name" ] , e . languages . insertBefore ( "kotlin" , "string" , { "raw-string" : { pattern : /("""|''')[\s\S]*?\1/ , alias : "string" } } ) , e . languages . insertBefore ( "kotlin" , "keyword" , { annotation : { pattern : /\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/ , alias : "builtin" } } ) , e . languages . insertBefore ( "kotlin" , "function" , { label : { pattern : /\w+@|@\w+/ , alias : "symbol" } } ) ; var n = [ { pattern : /\$\{[^}]+\}/ , inside : { delimiter : { pattern : /^\$\{|\}$/ , alias : "variable" } , rest : e . languages . kotlin } } , { pattern : /\$\w+/ , alias : "variable" } ] ; e . languages . kotlin . string . inside = e . languages . kotlin [ "raw-string" ] . inside = { interpolation : n } , e . languages . kt = e . languages . kotlin , e . languages . kts = e . languages . kotlin } ( Prism ) ;
! function ( a ) { var e = /\\(?:[^a-z()[\]]|[a-z*]+)/i , n = { "equation-command" : { pattern : e , alias : "regex" } } ; a . languages . latex = { comment : /%.*/m , cdata : { pattern : /(\\begin\{((?:verbatim|lstlisting)\*?)\})[\s\S]*?(?=\\end\{\2\})/ , lookbehind : ! 0 } , equation : [ { pattern : /\$\$(?:\\[\s\S]|[^\\$])+\$\$|\$(?:\\[\s\S]|[^\\$])+\$|\\\([\s\S]*?\\\)|\\\[[\s\S]*?\\\]/ , inside : n , alias : "string" } , { pattern : /(\\begin\{((?:equation|math|eqnarray|align|multline|gather)\*?)\})[\s\S]*?(?=\\end\{\2\})/ , lookbehind : ! 0 , inside : n , alias : "string" } ] , keyword : { pattern : /(\\(?:begin|end|ref|cite|label|usepackage|documentclass)(?:\[[^\]]+\])?\{)[^}]+(?=\})/ , lookbehind : ! 0 } , url : { pattern : /(\\url\{)[^}]+(?=\})/ , lookbehind : ! 0 } , headline : { pattern : /(\\(?:part|chapter|section|subsection|frametitle|subsubsection|paragraph|subparagraph|subsubparagraph|subsubsubparagraph)\*?(?:\[[^\]]+\])?\{)[^}]+(?=\}(?:\[[^\]]+\])?)/ , lookbehind : ! 0 , alias : "class-name" } , function : { pattern : e , alias : "selector" } , punctuation : /[[\]{}&]/ } , a . languages . tex = a . languages . latex , a . languages . context = a . languages . latex } ( Prism ) ;
Prism . languages . less = Prism . languages . extend ( "css" , { comment : [ /\/\*[\s\S]*?\*\// , { pattern : /(^|[^\\])\/\/.*/ , lookbehind : ! 0 } ] , atrule : { pattern : /@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/ , inside : { punctuation : /[:()]/ } } , selector : { pattern : /(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/ , inside : { variable : /@+[\w-]+/ } } , property : /(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i , operator : /[+\-*\/]/ } ) , Prism . languages . insertBefore ( "less" , "property" , { variable : [ { pattern : /@[\w-]+\s*:/ , inside : { punctuation : /:/ } } , /@@?[\w-]+/ ] , "mixin-usage" : { pattern : /([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/ , lookbehind : ! 0 , alias : "function" } } ) ;
! function ( e ) { function n ( e ) { return RegExp ( "(\\()" + e + "(?=[\\s\\)])" ) } function a ( e ) { return RegExp ( "([\\s([])" + e + "(?=[\\s)])" ) } var t = "[-+*/_~!@$%^=<>{}\\w]+" , r = "(\\()" , s = "(?=\\))" , i = "(?=\\s)" , o = { heading : { pattern : /;;;.*/ , alias : [ "comment" , "title" ] } , comment : /;.*/ , string : { pattern : /"(?:[^"\\]|\\.)*"/ , greedy : ! 0 , inside : { argument : /[-A-Z]+(?=[.,\s])/ , symbol : RegExp ( "`" + t + "'" ) } } , "quoted-symbol" : { pattern : RegExp ( "#?'" + t ) , alias : [ "variable" , "symbol" ] } , "lisp-property" : { pattern : RegExp ( ":" + t ) , alias : "property" } , splice : { pattern : RegExp ( ",@?" + t ) , alias : [ "symbol" , "variable" ] } , keyword : [ { pattern : RegExp ( r + "(?:(?:lexical-)?let\\*?|(?:cl-)?letf|if|when|while|unless|cons|cl-loop|and|or|not|cond|setq|error|message|null|require|provide|use-package)" + i ) , lookbehind : ! 0 } , { pattern : RegExp ( r + "(?:for|do|collect|return|finally|append|concat|in|by)" + i ) , lookbehind : ! 0 } ] , declare : { pattern : n ( "declare" ) , lookbehind : ! 0 , alias : "keyword" } , interactive : { pattern : n ( "interactive" ) , lookbehind : ! 0 , alias : "keyword" } , boolean : { pattern : a ( "(?:t|nil)" ) , lookbehind : ! 0 } , number : { pattern : a ( "[-+]?\\d+(?:\\.\\d*)?" ) , lookbehind : ! 0 } , defvar : { pattern : RegExp ( r + "def(?:var|const|custom|group)\\s+" + t ) , lookbehind : ! 0 , inside : { keyword : /^def[a-z]+/ , variable : RegExp ( t ) } } , defun : { pattern : RegExp ( r + "(?:cl-)?(?:defun\\*?|defmacro)\\s+" + t + "\\s+\\([\\s\\S]*?\\)" ) , lookbehind : ! 0 , inside : { keyword : /^(?:cl-)?def\S+/ , arguments : null , function : { pattern : RegExp ( "(^\\s)" + t ) , lookbehind : ! 0 } , punctuation : /[()]/ } } , lambda : { pattern : RegExp ( r + "lambda\\s+\\(\\s*(?:&?" + t + "(?:\\s+&?" + t + ")*\\s*)?\\)" ) , lookbehind : ! 0 , inside : { keyword : /^lambda/ , arguments : null , punctuation : /[()]/ } } , car : { pattern : RegExp ( r + t ) , lookbehind : ! 0 } , punctuation : [ /(?:['`,]?\(|[)\[\]])/ , { pattern : /(\s)\.(?=\s)/ , lookbehind : ! 0 } ] } , l = { "lisp-marker" : RegExp ( "&[-+*/_~!@$%^=<>{}\\w]+" ) , rest : { argument : { pattern : RegExp ( t ) , alias : "variable" } , varform : { pattern : RegExp ( r + t + "\\s+\\S[\\s\\S]*" + s ) , lookbehind : ! 0 , inside : { string : o . string , boolean : o . boolean , number : o . number , symbol : o . symbol , punctuation : /[()]/ } } } } , p = "\\S+(?:\\s+\\S+)*" , d = { pattern : RegExp ( r + "[\\s\\S]*" + s ) , lookbehind : ! 0 , inside : { "rest-vars" : { pattern : RegExp ( "&(?:rest|body)\\s+" + p ) , inside : l } , "other-marker-vars" : { pattern : RegExp ( "&(?:optional|aux)\\s+" + p ) , inside : l } , keys : { pattern : RegExp ( "&key\\s+" + p + "(?:\\s+&allow-other-keys)?" ) , inside : l } , argument : { pattern : RegExp ( t ) , alias : "variable" } , punctuation : /[()]/ } } ; o . lambda . inside . arguments = d , o . defun . inside . arguments = e . util . clone ( d ) , o . defun . inside . arguments . inside . sublist = d , e . languages . lisp = o , e . languages . elisp = o , e . languages . emacs = o , e . languages [ "emacs-lisp" ] = o } ( Prism ) ;
Prism . languages . matlab = { comment : [ /%\{[\s\S]*?\}%/ , /%.+/ ] , string : { pattern : /\B'(?:''|[^'\r\n])*'/ , greedy : ! 0 } , number : /(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+)?(?:[ij])?|\b[ij]\b/ , keyword : /\b(?:break|case|catch|continue|else|elseif|end|for|function|if|inf|NaN|otherwise|parfor|pause|pi|return|switch|try|while)\b/ , function : /(?!\d)\w+(?=\s*\()/ , operator : /\.?[*^\/\\']|[+\-:@]|[<>=~]=?|&&?|\|\|?/ , punctuation : /\.{3}|[.,;\[\](){}!]/ } ;
Prism . languages . nginx = Prism . languages . extend ( "clike" , { comment : { pattern : /(^|[^"{\\])#.*/ , lookbehind : ! 0 } , keyword : / \ b ( ? : C O N T E N T _ | D O C U M E N T _ | G A T E W A Y _ | H T T P _ | H T T P S | i f _ n o t _ e m p t y | P A T H _ | Q U E R Y _ | R E D I R E C T _ | R E M O T E _ | R E Q U E S T _ | S C G I | S C R I P T _ | S E R V E R _ | h t t p | e v e n t s | a c c e p t _ m u t e x | a c c e p t _ m u t e x _ d e l a y | a c c e s s _ l o g | a d d _ a f t e r _ b o d y | a d d _ b e f o r e _ b o d y | a d d _ h e a d e r | a d d i t i o n _ t y p e s | a i o | a l i a s | a l l o w | a n c i e n t _ b r o w s e r | a n c i e n t _ b r o w s e r _ v a l u e | a u t h | a u t h _ b a s i c | a u t h _ b a s i c _ u s e r _ f i l e | a u t h _ h t t p | a u t h _ h t t p _ h e a d e r | a u t h _ h t t p _ t i m e o u t | a u t o i n d e x | a u t o i n d e x _ e x a c t _ s i z e | a u t o i n d e x _ l o c a l t i m e | b r e a k | c h a r s e t | c h a r s e t _ m a p | c h a r s e t _ t y p e s | c h u n k e d _ t r a n s f e r _ e n c o d i n g | c l i e n t _ b o d y _ b u f f e r _ s i z e | c l i e n t _ b o d y _ i n _ f i l e _ o n l y | c l i e n t _ b o d y _ i n _ s i n g l e _ b u f f e r | c l i e n t _ b o d y _ t e m p _ p a t h | c l i e n t _ b o d y _ t i m e o u t | c l i e n t _ h e a d e r _ b u f f e r _ s i z e | c l i e n t _ h e a d e r _ t i m e o u t | c l i e n t _ m a x _ b o d y _ s i z e | c o n n e c t i o n _ p o o l _ s i z e | c r e a t e _ f u l l _ p u t _ p a t h | d a e m o n | d a v _ a c c e s s | d a v _ m e t h o d s | d e b u g _ c o n n e c t i o n | d e b u g _ p o i n t s | d e f a u l t _ t y p e | d e n y | d e v p o l l _ c h a n g e s | d e v p o l l _ e v e n t s | d i r e c t i o | d i r e c t i o _ a l i g n m e n t | d i s a b l e _ s y m l i n k s | e m p t y _ g i f | e n v | e p o l l _ e v e n t s | e r r o r _ l o g | e r r o r _ p a g e | e x p i r e s | f a s t c g i _ b u f f e r _ s i z e | f a s t c g i _ b u f f e r s | f a s t c g i _ b u s y _ b u f f e r s _ s i z e | f a s t c g i _ c a c h e | f a s t c g i _ c a c h e _ b y p a s s | f a s t c g i _ c a c h e _ k e y | f a s t c g i _ c a c h e _ l o c k | f a s t c g i _ c a c h e _ l o c k _ t i m e o u t | f a s t c g i _ c a c h e _ m e t h o d s | f a s t c g i _ c a c h e _ m i n _ u s e s | f a s t c g i _ c a c h e _ p a t h | f a s t c g i _ c a c h e _ p u r g e | f a s t c g i _ c a c h e _ u s e _ s t a l e | f a s t c g i _ c a c h e _ v a l i d | f a s t c g i _ c o n n e c t _ t i m e o u t | f a s t c g i _ h i d e _ h e a d e r | f a s t c g i _ i g n o r e _ c l i e n t _ a b o r t | f a s t c g i _ i g n o r e _ h e a d e r s | f a s t c g i _ i n d e x | f a s t c g i _ i n t e r c e p t _ e r r o r s | f a s t c g i _ k e e p _ c o n n | f a s t c g i _ m a x _ t e m p _ f i l e _ s i z e | f a s t c g i _ n e x t _ u p s t r e a m | f a s t c g i _ n o _ c a c h e | f a s t c g i _ p a r a m | f a s t c g i _ p a s s | f a s t c g i _ p a s s _ h e a d e r | f a s t c g i _ r e a d _ t i m e o u t | f a s t c g i _ r e d i r e c t _ e r r o r s | f a s t c g i _ s e n d _ t i m e o u t | f a s t c g i _ s p l i t _ p a t h _ i n f o | f a s t c g i _ s t o r e | f a s t c g i _ s t o r e _ a c c e s s | f a s t c g i _ t e m p _ f i l e _ w r i t e _ s i z e | f a s t c g i _ t e m p _ p a t h | f l v | g e o | g e o i p _ c i t y | g e o i p _ c o u n t r y | g o o g l e _ p e r f t o o l s _ p r o f i l e s | g z i p | g z i p _ b u f f e r s | g z i p _ c o m p _ l e v e l | g z i p _ d i s a b l e | g z i p _ h t t p _ v e r s i o n | g z i p _ m i n _ l e n g t h | g z i p _ p r o x i e d | g z i p _ s t a t i c | g z i p _ t y p e s | g z i p _ v a r y | i f | i f _ m o d i f i e d _ s i n c e | i g n o r e _ i n v a l i d _ h e a d e r s | i m a g e _ f i l t e r | i m a g e _ f i l t e r _ b u f f e r | i m a g e _ f i l t e r _ j p e g _ q u a l i t y | i m a g e _ f i l t e r _ s h a r p e n | i m a g e _ f i l t e r _ t r a n s p a r e n c y | i m a p _ c a p a b i l i t i e s | i m a p _ c l i e n t _ b u f f e r | i n c l u d e | i n d e x | i n t e r n a l | i p _ h a s h | k e e p a l i v e | k e e p a l i v e _ d i s a b l e | k e e p a l i v e _ r e q u e s t s | k e e p a l i v e _ t i m e o u t | k q u e u e _ c h a n g e s | k q u e u e _ e v e n t s | l a r g e _ c l i e n t _ h e a d e r _ b u f f e r s | l i m i t _ c o n n | l i m i t _ c o n n _ l o g _ l e v e l | l i m i t _ c o n n _ z o n e | l i m i t _ e x c e p t | l i m i t _ r a t e | l i m i t _ r a t e _ a f t e r | l i m i t _ r e q | l i m i t _ r e q _ l o g _ l e v e l | l i m i t _ r e q _ z o n e | l i m i t _ z o n e | l i n g e r i n g _ c l o s e | l i n g e r i n g _ t i m e | l i n g e r i n g _ t i m e o u t | l i s t e n | l o c a t i o n | l o c k _ f i l e | l o g _ f o r m a t | l o g _ f o r m a t _ c o m b i n e d | l o g _ n o t _ f o u n d | l o g _ s u b r e q u e s t | m a p | m a p _ h a s h _ b u c k e t _ s i z e | m a p _ h a s h _ m a x _ s i z e | m a s t e r _ p r o c e s s | m a x _ r a n g e s | m e m c a c h e d _ b u f f e r _ s i z e | m e m c a c h e d _ c o n n e c t _ t i m e o u t | m e m c a c h e d _ n e x t _ u p s t r e a m | m e m c a c h e d _ p a s s | m e m c a c h e d _ r e a d _ t i m e o u t | m e m c a c h e d _ s e n d _ t i m e o u t | m e r g e _ s l a s h e s | m i n _ d e l e t e _ d e p t h | m o d e r n _ b r o w s e r | m o d e r n _ b r o w s e r _ v a l u e | m p 4 | m p 4 _ b u f f e r _ s i z e | m p 4 _ m a x _ b u f f e r _ s i z e | m s i e _ p a d d i n g | m s i e _ r e f r e s h | m u l t i _ a c c e p t | o p e n _ f i l e _ c a c h e | o p e n _ f i l e _ c a c h e _ e r r o r s | o p e n _ f i l e _ c a c h e _ m i n _ u s e s | o p e n _ f i l e _ c a c h e _ v a l i d | o p e n _ l o g _ f i l e _ c a c h e | o p t i m i z e _ s e r v e r _ n a m e s | o v e r r i d e _ c h a r s e t | p c r e _ j i t | p e r l | p e r l _ m o d u l e s | p e r l _ r e q u i r e | p e r l _ s e t | p i d | p o p 3 _ a u t h | p o p 3 _ c a p a b i l i t i e s | p o r t _ i n _ r e d i r e c t | p o s t _ a c t i o n | p o s t p o n e _ o u t p u t | p r o t o c o l | p r o x y | p r o x y _ b u f f e r | p r o x y _ b u f f e r _ s i z e | p r o x y _ b u f f e r i n g | p r o x y _ b u f f e r s | p r o x y _ b u s y _ b u f f e r s _ s i z e | p r o x y _ c a c h e | p r o x y _ c a c h e _ b y p a s s | p r o x y _ c a c h e _ k e y | p r o x y _ c a c h e _ l o c k | p r o x y _ c a c h e _ l o c k _ t i m e o u t | p r o x y _ c a c h e _ m e t h o d s | p r o x y _ c a c h e _ m i n _ u s e s | p r o x y _ c a c h e _ p a t h | p r o x y _ c a c h e _ u s e _ s t a l e | p r o x y _ c a c h e _ v a l i d | p r o x y _ c o n n e c t _ t i m e o u t | p r o x y _ c o o k i e _ d o m a i n | p r o x y _ c o o k i e _ p a t h | p r o x y _ h e a d e r s _ h a s h _ b u c k e t _ s i z e | p r o x y _ h e a d e r s _ h a s h _ m a x _ s i z e | p r o x y _ h i d e _ h e a d e r | p r o x y _ h t t p _ v e r s i o n | p r o x y _ i g n o r e _ c l i e n t _ a b o r t | p r o x y _ i g n o r e _ h e a d e r s | p r o x y _ i n t e r c e p t _ e r r o r s | p r o x y _ m a x _ t e m p _ f i l e _ s i z e | p r o x y _ m e t h o d | p r o x y _ n e x t _ u p s t r e a m | p r o x y _ n o _ c a c h e | p r o x y _ p a s s | p r o x y _ p a s s _ e r r o r _ m e s s a g e | p r o x y _ p a s s _ h e a d e r | p r o x y _ p a s s _ r e q u e s t _ b o d y | p r o x y _ p a s s _ r e q u e s t _ h e a d e r s | p r o x y _ r e a d _ t i m e o u t | p r o x y _ r e d i r e c t | p r o x y _ r e d i r e c t _ e r r o r s | p r o x y _ s e n d _ l o w a t | p r o x y _ s e n d _ t i m e o u t | p r o x y _ s e t _ b o d y | p r o x y _ s e t _ h e a d e r | p r o x y _ s s l _ s e s s i o n _ r e u s e | p r o x y _ s t o r e | p r o x y _ s t o r e _ a c c e s s | p r o x y _ t e m p _ f i l e _ w r i t e _ s i z e | p r o x y _ t e m p _ p a t h | p r o x y _ t i m e o u t | p r o x y _ u p s t r e a m _ f a i l _ t i m e o u t | p r o x y _ u p s t r e a m _ m a x _ f a i l s | r a n d o m _ i n d e x | r e a d _ a h e a d | r e a l _ i p _ h e a d e r | r e c u r s i v e _ e r r o r _ p a g e s | r e q u e s t _ p o o l _ s i z e | r e s e t _ t i m e d o u t _ c o n n e c t i o n | r e s o l v e r | r e s o l v e r _ t i m e o u t | r e t u r n | r e w r i t e | r o o t | r t s i g _ o v e r f l o w _ e v e n t s | r t s i g _ o v e r f l o w _ t e s t | r t s i g _ o v e r f l o w _ t h r e s h o l d | r t s i g _ s i g n o | s a t i s f y | s a t i s f y _ a n y | s e c u r e _ l i n k _ s e c r e t | s e n d _ l o w a t | s e n d _ t i m e o u t | s e n d f i l e | s e n d f i l e _ m a x _ c h u n k | s e r v e r | s e r v e r _ n a m e | s e r v e r _ n a m e _ i n _ r e d i r e c t | s e r v e r _ n a m e s _ h a s h _ b u c k e t _ s i z e | s e r v e r _ n a m e s _ h a s h _ m a x _ s i z e | s e r v e r _ t o k e n s | s e t | s e t _ r e a l _ i p _ f r o m | s m t p _ a u t h | s m t p _ c a p a b i l i t i e s | s o _ k e e p a l i v e | s o u r c e _ c h a r s e t | s p l i t _ c l i e n t s | s s i | s s i _ s i l e n t _ e r r o r s | s s i _ t y p e s | s s i _ v a l u e _ l e n g t h | s s l | s s l _ c e r t i f i c a t e | s s l _ c e r t i f i c a t e _ k e y | s s l _ c i p h e r s | s s l _ c l i e n t _ c e r t i f i c a t e | s s l _ c r l | s s l _ d h p a r a m | s s l _ e n g i n e | s s l _ p r e f e r _ s e r v e r _ c i p h e r s | s s l _ p r o t o c o l s | s s l _ s e s s i o n _ c a c h e | s s l _ s e s s i o n _ t i m e o u t | s s l _ v e r i f y _ c l i e n t | s s l _ v e r i f y _ d e p t h | s t a r t t l s | s t u b _ s t a t u s | s u b _ f i l t e r | s u b _ f Line truncated
Prism . languages . objectivec = Prism . languages . extend ( "c" , { string : /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|@"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/ , keyword : /\b(?:asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while|in|self|super)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/ , operator : /-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/ } ) , delete Prism . languages . objectivec [ "class-name" ] , Prism . languages . objc = Prism . languages . objectivec ;
Prism . languages . perl = { comment : [ { pattern : /(^\s*)=\w[\s\S]*?=cut.*/m , lookbehind : ! 0 } , { pattern : /(^|[^\\$])#.*/ , lookbehind : ! 0 } ] , string : [ { pattern : /\b(?:q|qq|qx|qw)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/ , greedy : ! 0 } , { pattern : /\b(?:q|qq|qx|qw)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1/ , greedy : ! 0 } , { pattern : /\b(?:q|qq|qx|qw)\s*\((?:[^()\\]|\\[\s\S])*\)/ , greedy : ! 0 } , { pattern : /\b(?:q|qq|qx|qw)\s*\{(?:[^{}\\]|\\[\s\S])*\}/ , greedy : ! 0 } , { pattern : /\b(?:q|qq|qx|qw)\s*\[(?:[^[\]\\]|\\[\s\S])*\]/ , greedy : ! 0 } , { pattern : /\b(?:q|qq|qx|qw)\s*<(?:[^<>\\]|\\[\s\S])*>/ , greedy : ! 0 } , { pattern : /("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/ , greedy : ! 0 } , { pattern : /'(?:[^'\\\r\n]|\\.)*'/ , greedy : ! 0 } ] , regex : [ { pattern : /\b(?:m|qr)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/ , greedy : ! 0 } , { pattern : /\b(?:m|qr)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/ , greedy : ! 0 } , { pattern : /\b(?:m|qr)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngc]*/ , greedy : ! 0 } , { pattern : /\b(?:m|qr)\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngc]*/ , greedy : ! 0 } , { pattern : /\b(?:m|qr)\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngc]*/ , greedy : ! 0 } , { pattern : /\b(?:m|qr)\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngc]*/ , greedy : ! 0 } , { pattern : /(^|[^-]\b)(?:s|tr|y)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^-]\b)(?:s|tr|y)\s+([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^-]\b)(?:s|tr|y)\s*\((?:[^()\\]|\\[\s\S])*\)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngcer]*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^-]\b)(?:s|tr|y)\s*\{(?:[^{}\\]|\\[\s\S])*\}\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngcer]*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^-]\b)(?:s|tr|y)\s*\[(?:[^[\]\\]|\\[\s\S])*\]\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngcer]*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^-]\b)(?:s|tr|y)\s*<(?:[^<>\\]|\\[\s\S])*>\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngcer]*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(?:lt|gt|le|ge|eq|ne|cmp|not|and|or|xor|x)\b))/ , greedy : ! 0 } ] , variable : [ /[&*$@%]\{\^[A-Z]+\}/ , /[&*$@%]\^[A-Z_]/ , /[&*$@%]#?(?=\{)/ , /[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+)+(?:::)*/i , /[&*$@%]\d+/ , /(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/ ] , filehandle : { pattern : /<(?![<=])\S*>|\b_\b/ , alias : "symbol" } , vstring : { pattern : /v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/ , alias : "string" } , function : { pattern : /sub [a-z0-9_]+/i , inside : { keyword : /sub/ } } , keyword : /\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/ , number : /\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/ , operator : /-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:lt|gt|le|ge|eq|ne|cmp|not|and|or|xor)\b/ , punctuation : /[{}[\];(),:]/ } ;
! function ( a ) { var e = "(?:\\b[a-zA-Z]\\w*|[|\\\\[\\]])+" ; a . languages . phpdoc = a . languages . extend ( "javadoclike" , { parameter : { pattern : RegExp ( "(@(?:global|param|property(?:-read|-write)?|var)\\s+(?:" + e + "\\s+)?)\\$\\w+" ) , lookbehind : ! 0 } } ) , a . languages . insertBefore ( "phpdoc" , "keyword" , { "class-name" : [ { pattern : RegExp ( "(@(?:global|package|param|property(?:-read|-write)?|return|subpackage|throws|var)\\s+)" + e ) , lookbehind : ! 0 , inside : { keyword : /\b(?:callback|resource|boolean|integer|double|object|string|array|false|float|mixed|bool|null|self|true|void|int)\b/ , punctuation : /[|\\[\]()]/ } } ] } ) , a . languages . javadoclike . addSupport ( "php" , a . languages . phpdoc ) } ( Prism ) ;
Prism . languages . insertBefore ( "php" , "variable" , { this : /\$this\b/ , global : /\$(?:_(?:SERVER|GET|POST|FILES|REQUEST|SESSION|ENV|COOKIE)|GLOBALS|HTTP_RAW_POST_DATA|argc|argv|php_errormsg|http_response_header)\b/ , scope : { pattern : /\b[\w\\]+::/ , inside : { keyword : /static|self|parent/ , punctuation : /::|\\/ } } } ) ;
! function ( e ) { var i = Prism . languages . powershell = { comment : [ { pattern : /(^|[^`])<#[\s\S]*?#>/ , lookbehind : ! 0 } , { pattern : /(^|[^`])#.*/ , lookbehind : ! 0 } ] , string : [ { pattern : /"(?:`[\s\S]|[^`"])*"/ , greedy : ! 0 , inside : { function : { pattern : /(^|[^`])\$\((?:\$\([^\r\n()]*\)|(?!\$\()[^\r\n)])*\)/ , lookbehind : ! 0 , inside : { } } } } , { pattern : /'(?:[^']|'')*'/ , greedy : ! 0 } ] , namespace : /\[[a-z](?:\[(?:\[[^\]]*]|[^\[\]])*]|[^\[\]])*]/i , boolean : /\$(?:true|false)\b/i , variable : /\$\w+\b/ , function : [ /\b(?:Add|Approve|Assert|Backup|Block|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|ForEach|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Sort|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Tee|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Where|Write)-[a-z]+\b/i , /\b(?:ac|cat|chdir|clc|cli|clp|clv|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|ebp|echo|epal|epcsv|epsn|erase|fc|fl|ft|fw|gal|gbp|gc|gci|gcs|gdr|gi|gl|gm|gp|gps|group|gsv|gu|gv|gwmi|iex|ii|ipal|ipcsv|ipsn|irm|iwmi|iwr|kill|lp|ls|measure|mi|mount|move|mp|mv|nal|ndr|ni|nv|ogv|popd|ps|pushd|pwd|rbp|rd|rdr|ren|ri|rm|rmdir|rni|rnp|rp|rv|rvpa|rwmi|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls|sort|sp|spps|spsv|start|sv|swmi|tee|trcm|type|write)\b/i ] , keyword : /\b(?:Begin|Break|Catch|Class|Continue|Data|Define|Do|DynamicParam|Else|ElseIf|End|Exit|Filter|Finally|For|ForEach|From|Function|If|InlineScript|Parallel|Param|Process|Return|Sequence|Switch|Throw|Trap|Try|Until|Using|Var|While|Workflow)\b/i , operator : { pattern : /(\W?)(?:!|-(?:eq|ne|gt|ge|lt|le|sh[lr]|not|b?(?:and|x?or)|(?:Not)?(?:Like|Match|Contains|In)|Replace|Join|is(?:Not)?|as)\b|-[-=]?|\+[+=]?|[*\/%]=?)/i , lookbehind : ! 0 } , punctuation : /[|{}[\];(),.]/ } , r = i . string [ 0 ] . inside ; r . boolean = i . boolean , r . variable = i . variable , r . function . inside = i } ( ) ;
! function ( t ) { var n = [ "on" , "ignoring" , "group_right" , "group_left" , "by" , "without" ] , a = [ "sum" , "min" , "max" , "avg" , "group" , "stddev" , "stdvar" , "count" , "count_values" , "bottomk" , "topk" , "quantile" ] . concat ( n , [ "offset" ] ) ; t . languages . promql = { comment : { pattern : /(^[ \t]*)#.*/m , lookbehind : ! 0 } , "vector-match" : { pattern : new RegExp ( "((?:" + n . join ( "|" ) + ")\\s*)\\([^)]*\\)" ) , lookbehind : ! 0 , inside : { "label-key" : { pattern : /\b[^,]*\b/ , alias : "attr-name" } , punctuation : /[(),]/ } } , "context-labels" : { pattern : /\{[^{}]*\}/ , inside : { "label-key" : { pattern : /\b[a-z_]\w*(?=\s*(?:=~?|![=~]))/ , alias : "attr-name" } , "label-value" : { pattern : /(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1/ , greedy : ! 0 , alias : "attr-value" } , punctuation : /\{|\}|=~?|![=~]|,/ } } , "context-range" : [ { pattern : /\[[\w\s:]+\]/ , inside : { punctuation : /\[|\]|:/ , "range-duration" : { pattern : /\b(?:\d+(?:[smhdwy]|ms))+\b/i , alias : "number" } } } , { pattern : /(\boffset\s+)\w+/ , lookbehind : ! 0 , inside : { "range-duration" : { pattern : /\b(?:\d+(?:[smhdwy]|ms))+\b/i , alias : "number" } } } ] , keyword : new RegExp ( "\\b(?:" + a . join ( "|" ) + ")\\b" , "i" ) , function : /\b[a-zA-Z_]\w*(?=\s*\()/i , number : /[-+]?(?:(?:\b\d+(?:\.\d+)?|\B\.\d+)(?:e[-+]?\d+)?\b|\b(?:0x[0-9a-f]+|nan|inf)\b)/i , operator : /[\^*/%+-]|==|!=|<=|<|>=|>|\b(?:and|unless|or)\b/i , punctuation : /[{};()`,.[\]]/ } } ( Prism ) ;
! function ( e ) { var s = /\b(?:double|float|[su]?int(?:32|64)|s?fixed(?:32|64)|bool|string|bytes)\b/ ; e . languages . protobuf = e . languages . extend ( "clike" , { "class-name" : [ { pattern : /(\b(?:enum|extend|message|service)\s+)[A-Za-z_]\w*(?=\s*\{)/ , lookbehind : ! 0 } , { pattern : /(\b(?:rpc\s+\w+|returns)\s*\(\s*(?:stream\s+)?)\.?[A-Za-z_]\w*(?:\.[A-Za-z_]\w*)*(?=\s*\))/ , lookbehind : ! 0 } ] , keyword : /\b(?:enum|extend|extensions|import|message|oneof|option|optional|package|public|repeated|required|reserved|returns|rpc(?=\s+\w)|service|stream|syntax|to)\b(?!\s*=\s*\d)/ , function : /[a-z_]\w*(?=\s*\()/i } ) , e . languages . insertBefore ( "protobuf" , "operator" , { map : { pattern : /\bmap<\s*[\w.]+\s*,\s*[\w.]+\s*>(?=\s+[a-z_]\w*\s*[=;])/i , alias : "class-name" , inside : { punctuation : /[<>.,]/ , builtin : s } } , builtin : s , "positional-class-name" : { pattern : /(?:\b|\B\.)[a-z_]\w*(?:\.[a-z_]\w*)*(?=\s+[a-z_]\w*\s*[=;])/i , alias : "class-name" , inside : { punctuation : /\./ } } , annotation : { pattern : /(\[\s*)[a-z_]\w*(?=\s*=)/i , lookbehind : ! 0 } } ) } ( Prism ) ;
! function ( e ) { e . languages . puppet = { heredoc : [ { pattern : /(@\("([^"\r\n\/):]+)"(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r(?!\n)))*?[ \t]*(?:\|[ \t]*)?(?:-[ \t]*)?\2/ , lookbehind : ! 0 , alias : "string" , inside : { punctuation : /(?=\S).*\S(?= *$)/ } } , { pattern : /(@\(([^"\r\n\/):]+)(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r(?!\n)))*?[ \t]*(?:\|[ \t]*)?(?:-[ \t]*)?\2/ , lookbehind : ! 0 , greedy : ! 0 , alias : "string" , inside : { punctuation : /(?=\S).*\S(?= *$)/ } } , { pattern : /@\("?(?:[^"\r\n\/):]+)"?(?:\/[nrts$uL]*)?\)/ , alias : "string" , inside : { punctuation : { pattern : /(\().+?(?=\))/ , lookbehind : ! 0 } } } ] , "multiline-comment" : { pattern : /(^|[^\\])\/\*[\s\S]*?\*\// , lookbehind : ! 0 , greedy : ! 0 , alias : "comment" } , regex : { pattern : /((?:\bnode\s+|[~=\(\[\{,]\s*|[=+]>\s*|^\s*))\/(?:[^\/\\]|\\[\s\S])+\/(?:[imx]+\b|\B)/ , lookbehind : ! 0 , greedy : ! 0 , inside : { "extended-regex" : { pattern : /^\/(?:[^\/\\]|\\[\s\S])+\/[im]*x[im]*$/ , inside : { comment : /#.*/ } } } } , comment : { pattern : /(^|[^\\])#.*/ , lookbehind : ! 0 , greedy : ! 0 } , string : { pattern : /(["'])(?:\$\{(?:[^'"}]|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}|\$(?!\{)|(?!\1)[^\\$]|\\[\s\S])*\1/ , greedy : ! 0 , inside : { "double-quoted" : { pattern : /^"[\s\S]*"$/ , inside : { } } } } , variable : { pattern : /\$(?:::)?\w+(?:::\w+)*/ , inside : { punctuation : /::/ } } , "attr-name" : /(?:\w+|\*)(?=\s*=>)/ , function : [ { pattern : /(\.)(?!\d)\w+/ , lookbehind : ! 0 } , /\b(?:contain|debug|err|fail|include|info|notice|realize|require|tag|warning)\b|\b(?!\d)\w+(?=\()/ ] , number : /\b(?:0x[a-f\d]+|\d+(?:\.\d+)?(?:e-?\d+)?)\b/i , boolean : /\b(?:true|false)\b/ , keyword : /\b(?:application|attr|case|class|consumes|default|define|else|elsif|function|if|import|inherits|node|private|produces|type|undef|unless)\b/ , datatype : { pattern : /\b(?:Any|Array|Boolean|Callable|Catalogentry|Class|Collection|Data|Default|Enum|Float|Hash|Integer|NotUndef|Numeric|Optional|Pattern|Regexp|Resource|Runtime|Scalar|String|Struct|Tuple|Type|Undef|Variant)\b/ , alias : "symbol" } , operator : /=[=~>]?|![=~]?|<(?:<\|?|[=~|-])?|>[>=]?|->?|~>|\|>?>?|[*\/%+?]|\b(?:and|in|or)\b/ , punctuation : /[\[\]{}().,;]|:+/ } ; var n = [ { pattern : /(^|[^\\])\$\{(?:[^'"{}]|\{[^}]*\}|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}/ , lookbehind : ! 0 , inside : { "short-variable" : { pattern : /(^\$\{)(?!\w+\()(?:::)?\w+(?:::\w+)*/ , lookbehind : ! 0 , alias : "variable" , inside : { punctuation : /::/ } } , delimiter : { pattern : /^\$/ , alias : "variable" } , rest : e . languages . puppet } } , { pattern : /(^|[^\\])\$(?:::)?\w+(?:::\w+)*/ , lookbehind : ! 0 , alias : "variable" , inside : { punctuation : /::/ } } ] ; e . languages . puppet . heredoc [ 0 ] . inside . interpolation = n , e . languages . puppet . string . inside [ "double-quoted" ] . inside . interpolation = n } ( Prism ) ;
Prism . languages . purescript = Prism . languages . extend ( "haskell" , { keyword : /\b(?:ado|case|class|data|derive|do|else|forall|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b/ , "import-statement" : { pattern : /(^\s*)import\s+[A-Z][\w']*(?:\.[A-Z][\w']*)*(?:\s+as\s+[A-Z][\w']*(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m , lookbehind : ! 0 , inside : { keyword : /\b(?:import|as|hiding)\b/ } } , builtin : /\b(?:absurd|add|ap|append|apply|between|bind|bottom|clamp|compare|comparing|compose|conj|const|degree|discard|disj|div|eq|flap|flip|gcd|identity|ifM|join|lcm|liftA1|liftM1|map|max|mempty|min|mod|mul|negate|not|notEq|one|otherwise|recip|show|sub|top|unit|unless|unlessM|void|when|whenM|zero)\b/ } ) , Prism . languages . purs = Prism . languages . purescript ;
Prism . languages . python = { comment : { pattern : /(^|[^\\])#.*/ , lookbehind : ! 0 } , "string-interpolation" : { pattern : /(?:f|rf|fr)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i , greedy : ! 0 , inside : { interpolation : { pattern : /((?:^|[^{])(?:{{)*){(?!{)(?:[^{}]|{(?!{)(?:[^{}]|{(?!{)(?:[^{}])+})+})+}/ , lookbehind : ! 0 , inside : { "format-spec" : { pattern : /(:)[^:(){}]+(?=}$)/ , lookbehind : ! 0 } , "conversion-option" : { pattern : // , alias : "punctuation" } , rest : null } } , string : /[\s\S]+/ } } , "triple-quoted-string" : { pattern : /(?:[rub]|rb|br)?("""|''')[\s\S]*?\1/i , greedy : ! 0 , alias : "string" } , string : { pattern : /(?:[rub]|rb|br)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i , greedy : ! 0 } , function : { pattern : /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g , lookbehind : ! 0 } , "class-name" : { pattern : /(\bclass\s+)\w+/i , lookbehind : ! 0 } , decorator : { pattern : /(^\s*)@\w+(?:\.\w+)*/im , lookbehind : ! 0 , alias : [ "annotation" , "punctuation" ] , inside : { punctuation : /\./ } } , keyword : /\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/ , builtin : /\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/ , boolean : /\b(?:True|False|None)\b/ , number : /(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?j?\b/i , operator : /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/ , punctuation : /[{}[\];(),.:]/ } , Prism . languages . python [ "string-interpolation" ] . inside . interpolation . inside . rest = Prism . languages . python , Prism . languages . py = Prism . languages . python ;
Prism . languages . r = { comment : /#.*/ , string : { pattern : /(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 } , "percent-operator" : { pattern : /%[^%\s]*%/ , alias : "operator" } , boolean : /\b(?:TRUE|FALSE)\b/ , ellipsis : /\.\.(?:\.|\d+)/ , number : [ /\b(?:NaN|Inf)\b/ , /(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+(?:\.\d*)?|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/ ] , keyword : /\b(?:if|else|repeat|while|function|for|in|next|break|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_)\b/ , operator : /->?>?|<(?:=|<?-)?|[>=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/ , punctuation : /[(){}\[\],;]/ } ;
! function ( i ) { var t = i . util . clone ( i . languages . javascript ) ; i . languages . jsx = i . languages . extend ( "markup" , t ) , i . languages . jsx . tag . pattern = /<\/?(?:[\w.:-]+(?:\s+(?:[\w.:$-]+(?:=(?:"(?:\\[^]|[^\\"])*"|'(?:\\[^]|[^\\'])*'|[^\s{'">=]+|\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])+\}))?|\{\s*\.{3}\s*[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\s*\}))*\s*\/?)?>/i , i . languages . jsx . tag . inside . tag . pattern = /^<\/?[^\s>\/]*/i , i . languages . jsx . tag . inside [ "attr-value" ] . pattern = /=(?!\{)(?:"(?:\\[^]|[^\\"])*"|'(?:\\[^]|[^\\'])*'|[^\s'">]+)/i , i . languages . jsx . tag . inside . tag . inside [ "class-name" ] = /^[A-Z]\w*(?:\.[A-Z]\w*)*$/ , i . languages . insertBefore ( "inside" , "attr-name" , { spread : { pattern : /\{\s*\.{3}\s*[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\s*\}/ , inside : { punctuation : /\.{3}|[{}.]/ , "attr-value" : /\w+/ } } } , i . languages . jsx . tag ) , i . languages . insertBefore ( "inside" , "attr-value" , { script : { pattern : /=(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])+\})/i , inside : { "script-punctuation" : { pattern : /^=(?={)/ , alias : "punctuation" } , rest : i . languages . jsx } , alias : "language-javascript" } } , i . languages . jsx . tag ) ; var o = function ( t ) { return t ? "string" == typeof t ? t : "string" == typeof t . content ? t . content : t . content . map ( o ) . join ( "" ) : "" } , p = function ( t ) { for ( var n = [ ] , e = 0 ; e < t . length ; e ++ ) { var a = t [ e ] , s = ! 1 ; if ( "string" != typeof a && ( "tag" === a . type && a . content [ 0 ] && "tag" === a . content [ 0 ] . type ? "</" === a . content [ 0 ] . content [ 0 ] . content ? 0 < n . length && n [ n . length - 1 ] . tagName === o ( a . content [ 0 ] . content [ 1 ] ) && n . pop ( ) : "/>" === a . content [ a . content . length - 1 ] . content || n . push ( { tagName : o ( a . content [ 0 ] . content [ 1 ] ) , openedBraces : 0 } ) : 0 < n . length && "punctuation" === a . type && "{" === a . content ? n [ n . length - 1 ] . openedBraces ++ : 0 < n . length && 0 < n [ n . length - 1 ] . openedBraces && "punctuation" === a . type && "}" === a . content ? n [ n . length - 1 ] . openedBraces -- : s = ! 0 ) , ( s || "string" == typeof a ) && 0 < n . length && 0 === n [ n . length - 1 ] . openedBraces ) { var g = o ( a ) ; e < t . length - 1 && ( "string" == typeof t [ e + 1 ] || "plain-text" === t [ e + 1 ] . type ) && ( g += o ( t [ e + 1 ] ) , t . splice ( e + 1 , 1 ) ) , 0 < e && ( "string" == typeof t [ e - 1 ] || "plain-text" === t [ e - 1 ] . type ) && ( g = o ( t [ e - 1 ] ) + g , t . splice ( e - 1 , 1 ) , e -- ) , t [ e ] = new i . Token ( "plain-text" , g , null , g ) } a . content && "string" != typeof a . content && p ( a . content ) } } ; i . hooks . add ( "after-tokenize" , function ( t ) { "jsx" !== t . language && "tsx" !== t . language || p ( t . tokens ) } ) } ( Prism ) ;
! function ( a ) { var e = a . util . clone ( a . languages . typescript ) ; a . languages . tsx = a . languages . extend ( "jsx" , e ) ; var t = a . languages . tsx . tag ; t . pattern = RegExp ( "(^|[^\\w$]|(?=</))(?:" + t . pattern . source + ")" , t . pattern . flags ) , t . lookbehind = ! 0 } ( Prism ) ;
! function ( a ) { var e = { pattern : /\\[\\(){}[\]^$+*?|.]/ , alias : "escape" } , n = /\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|c[a-zA-Z]|0[0-7]{0,2}|[123][0-7]{2}|.)/ , t = "(?:[^\\\\-]|" + n . source + ")" , s = RegExp ( t + "-" + t ) , i = { pattern : /(<|')[^<>']+(?=[>']$)/ , lookbehind : ! 0 , alias : "variable" } ; a . languages . regex = { charset : { pattern : /((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/ , lookbehind : ! 0 , inside : { "charset-negation" : { pattern : /(^\[)\^/ , lookbehind : ! 0 , alias : "operator" } , "charset-punctuation" : { pattern : /^\[|\]$/ , alias : "punctuation" } , range : { pattern : s , inside : { escape : n , "range-punctuation" : { pattern : /-/ , alias : "operator" } } } , "special-escape" : e , charclass : { pattern : /\\[wsd]|\\p{[^{}]+}/i , alias : "class-name" } , escape : n } } , "special-escape" : e , charclass : { pattern : /\.|\\[wsd]|\\p{[^{}]+}/i , alias : "class-name" } , backreference : [ { pattern : /\\(?![123][0-7]{2})[1-9]/ , alias : "keyword" } , { pattern : /\\k<[^<>']+>/ , alias : "keyword" , inside : { "group-name" : i } } ] , anchor : { pattern : /[$^]|\\[ABbGZz]/ , alias : "function" } , escape : n , group : [ { pattern : /\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/ , alias : "punctuation" , inside : { "group-name" : i } } , { pattern : /\)/ , alias : "punctuation" } ] , quantifier : { pattern : /(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/ , alias : "number" } , alternation : { pattern : /\|/ , alias : "keyword" } } } ( Prism ) ;
Prism . languages . rest = { table : [ { pattern : /(\s*)(?:\+[=-]+)+\+(?:\r?\n|\r)(?:\1[+|].+[+|](?:\r?\n|\r))+\1(?:\+[=-]+)+\+/ , lookbehind : ! 0 , inside : { punctuation : /\||(?:\+[=-]+)+\+/ } } , { pattern : /(\s*)=+ [ =]*=(?:(?:\r?\n|\r)\1.+)+(?:\r?\n|\r)\1=+ [ =]*=(?=(?:\r?\n|\r){2}|\s*$)/ , lookbehind : ! 0 , inside : { punctuation : /[=-]+/ } } ] , "substitution-def" : { pattern : /(^\s*\.\. )\|(?:[^|\s](?:[^|]*[^|\s])?)\| [^:]+::/m , lookbehind : ! 0 , inside : { substitution : { pattern : /^\|(?:[^|\s]|[^|\s][^|]*[^|\s])\|/ , alias : "attr-value" , inside : { punctuation : /^\||\|$/ } } , directive : { pattern : /( +)(?! )[^:]+::/ , lookbehind : ! 0 , alias : "function" , inside : { punctuation : /::$/ } } } } , "link-target" : [ { pattern : /(^\s*\.\. )\[[^\]]+\]/m , lookbehind : ! 0 , alias : "string" , inside : { punctuation : /^\[|\]$/ } } , { pattern : /(^\s*\.\. )_(?:`[^`]+`|(?:[^:\\]|\\.)+):/m , lookbehind : ! 0 , alias : "string" , inside : { punctuation : /^_|:$/ } } ] , directive : { pattern : /(^\s*\.\. )[^:]+::/m , lookbehind : ! 0 , alias : "function" , inside : { punctuation : /::$/ } } , comment : { pattern : /(^\s*\.\.)(?:(?: .+)?(?:(?:\r?\n|\r).+)+| .+)(?=(?:\r?\n|\r){2}|$)/m , lookbehind : ! 0 } , title : [ { pattern : /^(([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+)(?:\r?\n|\r).+(?:\r?\n|\r)\1$/m , inside : { punctuation : /^[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+|[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/ , important : /.+/ } } , { pattern : /(^|(?:\r?\n|\r){2}).+(?:\r?\n|\r)([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+(?=\r?\n|\r|$)/ , lookbehind : ! 0 , inside : { punctuation : /[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/ , important : /.+/ } } ] , hr : { pattern : /((?:\r?\n|\r){2})([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2{3,}(?=(?:\r?\n|\r){2})/ , lookbehind : ! 0 , alias : "punctuation" } , field : { pattern : /(^\s*):[^:\r\n]+:(?= )/m , lookbehind : ! 0 , alias : "attr-name" } , "command-line-option" : { pattern : /(^\s*)(?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?(?:, (?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?)*(?=(?:\r?\n|\r)? {2,}\S)/im , lookbehind : ! 0 , alias : "symbol" } , "literal-block" : { pattern : /::(?:\r?\n|\r){2}([ \t]+)(?![ \t]).+(?:(?:\r?\n|\r)\1.+)*/ , inside : { "literal-block-punctuation" : { pattern : /^::/ , alias : "punctuation" } } } , "quoted-literal-block" : { pattern : /::(?:\r?\n|\r){2}([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]).*(?:(?:\r?\n|\r)\1.*)*/ , inside : { "literal-block-punctuation" : { pattern : /^(?:::|([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\1*)/m , alias : "punctuation" } } } , "list-bullet" : { pattern : /(^\s*)(?:[*+\-•‣⁃]|\(?(?:\d+|[a-z]|[ivxdclm]+)\)|(?:\d+|[a-z]|[ivxdclm]+)\.)(?= )/im , lookbehind : ! 0 , alias : "punctuation" } , "doctest-block" : { pattern : /(^\s*)>>> .+(?:(?:\r?\n|\r).+)*/m , lookbehind : ! 0 , inside : { punctuation : /^>>>/ } } , inline : [ { pattern : /(^|[\s\-:\/'"<(\[{])(?::[^:]+:`.*?`|`.*?`:[^:]+:|(\*\*?|``?|\|)(?!\s).*?[^\s]\2(?=[\s\-.,:;!?\\\/'")\]}]|$))/m , lookbehind : ! 0 , inside : { bold : { pattern : /(^\*\*).+(?=\*\*$)/ , lookbehind : ! 0 } , italic : { pattern : /(^\*).+(?=\*$)/ , lookbehind : ! 0 } , "inline-literal" : { pattern : /(^``).+(?=``$)/ , lookbehind : ! 0 , alias : "symbol" } , role : { pattern : /^:[^:]+:|:[^:]+:$/ , alias : "function" , inside : { punctuation : /^:|:$/ } } , "interpreted-text" : { pattern : /(^`).+(?=`$)/ , lookbehind : ! 0 , alias : "attr-value" } , substitution : { pattern : /(^\|).+(?=\|$)/ , lookbehind : ! 0 , alias : "attr-value" } , punctuation : /\*\*?|``?|\|/ } } ] , link : [ { pattern : /\[[^\]]+\]_(?=[\s\-.,:;!?\\\/'")\]}]|$)/ , alias : "string" , inside : { punctuation : /^\[|\]_$/ } } , { pattern : /(?:\b[a-z\d]+(?:[_.:+][a-z\d]+)*_?_|`[^`]+`_?_|_`[^`]+`)(?=[\s\-.,:;!?\\\/'")\]}]|$)/i , alias : "string" , inside : { punctuation : /^_?`|`$|`?_?_$/ } } ] , punctuation : { pattern : /(^\s*)(?:\|(?= |$)|(?:---?|—|\.\.|__)(?= )|\.\.$)/m , lookbehind : ! 0 } } ;
! function ( e ) { for ( var a = "/\\*(?:[^*/]|\\*(?!/)|/(?!\\*)|<self>)*\\*/" , t = 0 ; t < 2 ; t ++ ) a = a . replace ( /<self>/g , function ( ) { return a } ) ; a = a . replace ( /<self>/g , function ( ) { return "[^\\s\\S]" } ) , e . languages . rust = { comment : [ { pattern : RegExp ( "(^|[^\\\\])" + a ) , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^\\:])\/\/.*/ , lookbehind : ! 0 , greedy : ! 0 } ] , string : { pattern : /b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/ , greedy : ! 0 } , char : { pattern : /b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/ , greedy : ! 0 , alias : "string" } , attribute : { pattern : /#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/ , greedy : ! 0 , alias : "attr-name" , inside : { string : null } } , "closure-params" : { pattern : /([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/ , lookbehind : ! 0 , greedy : ! 0 , inside : { "closure-punctuation" : { pattern : /^\||\|$/ , alias : "punctuation" } , rest : null } } , "lifetime-annotation" : { pattern : /'\w+/ , alias : "symbol" } , "fragment-specifier" : { pattern : /(\$\w+:)[a-z]+/ , lookbehind : ! 0 , alias : "punctuation" } , variable : /\$\w+/ , "function-definition" : { pattern : /(\bfn\s+)\w+/ , lookbehind : ! 0 , alias : "function" } , "type-definition" : { pattern : /(\b(?:enum|struct|union)\s+)\w+/ , lookbehind : ! 0 , alias : "class-name" } , "module-declaration" : [ { pattern : /(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/ , lookbehind : ! 0 , alias : "namespace" } , { pattern : /(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/ , lookbehind : ! 0 , alias : "namespace" , inside : { punctuation : /::/ } } ] , keyword : [ /\b(?:abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|Self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/ , /\b(?:[ui](?:8|16|32|64|128|size)|f(?:32|64)|bool|char|str)\b/ ] , function : /\b[a-z_]\w*(?=\s*(?:::\s*<|\())/ , macro : { pattern : /\w+!/ , alias : "property" } , constant : /\b[A-Z_][A-Z_\d]+\b/ , "class-name" : /\b[A-Z]\w*\b/ , namespace : { pattern : /(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/ , inside : { punctuation : /::/ } } , number : /\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:[iu](?:8|16|32|64|size)?|f32|f64))?\b/ , boolean : /\b(?:false|true)\b/ , punctuation : /->|\.\.=|\.{1,3}|::|[{}[\];(),:]/ , operator : /[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/ } , e . languages . rust [ "closure-params" ] . inside . rest = e . languages . rust , e . languages . rust . attribute . inside . string = e . languages . rust . string } ( Prism ) ;
! function ( e ) { e . languages . sass = e . languages . extend ( "css" , { comment : { pattern : /^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m , lookbehind : ! 0 } } ) , e . languages . insertBefore ( "sass" , "atrule" , { "atrule-line" : { pattern : /^(?:[ \t]*)[@+=].+/m , inside : { atrule : /(?:@[\w-]+|[+=])/m } } } ) , delete e . languages . sass . atrule ; var t = /\$[-\w]+|#\{\$[-\w]+\}/ , a = [ /[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or|not)\b/ , { pattern : /(\s+)-(?=\s)/ , lookbehind : ! 0 } ] ; e . languages . insertBefore ( "sass" , "property" , { "variable-line" : { pattern : /^[ \t]*\$.+/m , inside : { punctuation : /:/ , variable : t , operator : a } } , "property-line" : { pattern : /^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m , inside : { property : [ /[^:\s]+(?=\s*:)/ , { pattern : /(:)[^:\s]+/ , lookbehind : ! 0 } ] , punctuation : /:/ , variable : t , operator : a , important : e . languages . sass . important } } } ) , delete e . languages . sass . property , delete e . languages . sass . important , e . languages . insertBefore ( "sass" , "punctuation" , { selector : { pattern : /([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/ , lookbehind : ! 0 } } ) } ( Prism ) ;
Prism . languages . scss = Prism . languages . extend ( "css" , { comment : { pattern : /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/ , lookbehind : ! 0 } , atrule : { pattern : /@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/ , inside : { rule : /@[\w-]+/ } } , url : /(?:[-a-z]+-)?url(?=\()/i , selector : { pattern : /(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]+))/m , inside : { parent : { pattern : /&/ , alias : "important" } , placeholder : /%[-\w]+/ , variable : /\$[-\w]+|#\{\$[-\w]+\}/ } } , property : { pattern : /(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/ , inside : { variable : /\$[-\w]+|#\{\$[-\w]+\}/ } } } ) , Prism . languages . insertBefore ( "scss" , "atrule" , { keyword : [ /@(?:if|else(?: if)?|forward|for|each|while|import|use|extend|debug|warn|mixin|include|function|return|content)\b/i , { pattern : /( +)(?:from|through)(?= )/ , lookbehind : ! 0 } ] } ) , Prism . languages . insertBefore ( "scss" , "important" , { variable : /\$[-\w]+|#\{\$[-\w]+\}/ } ) , Prism . languages . insertBefore ( "scss" , "function" , { "module-modifier" : { pattern : /\b(?:as|with|show|hide)\b/i , alias : "keyword" } , placeholder : { pattern : /%[-\w]+/ , alias : "selector" } , statement : { pattern : /\B!(?:default|optional)\b/i , alias : "keyword" } , boolean : /\b(?:true|false)\b/ , null : { pattern : /\bnull\b/ , alias : "keyword" } , operator : { pattern : /(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or|not)(?=\s)/ , lookbehind : ! 0 } } ) , Prism . languages . scss . atrule . inside . rest = Prism . languages . scss ;
! function ( s ) { var n = [ "([\"'])(?:\\\\[^]|\\$\\([^)]+\\)|\\$(?!\\()|`[^`]+`|(?!\\1)[^\\\\`$])*\\1" , "<<-?\\s*([\"']?)(\\w+)\\2\\s[^]*?[\r\n]\\3" ] . join ( "|" ) ; s . languages [ "shell-session" ] = { command : { pattern : RegExp ( '^(?:[^\\s@:$#*!/\\\\]+@[^\\s@:$#*!/\\\\]+(?::[^\0-\\x1F$#*?"<>:;|]+)?|[^\0-\\x1F$#*?"<>:;|]+)?[$#](?:[^\\\\\r\n\'"<]|\\\\.|<<str>>)+' . replace ( /<<str>>/g , function ( ) { return n } ) , "m" ) , greedy : ! 0 , inside : { info : { pattern : /^[^#$]+/ , alias : "punctuation" , inside : { user : /^[^\s@:$#*!/\\]+@[^\s@:$#*!/\\]+/ , punctuation : /:/ , path : /[\s\S]+/ } } , bash : { pattern : /(^[$#]\s*)\S[\s\S]*/ , lookbehind : ! 0 , alias : "language-bash" , inside : s . languages . bash } , "shell-symbol" : { pattern : /^[$#]/ , alias : "important" } } } , output : /.(?:.*(?:[\r\n]|.$))*/ } , s . languages [ "sh-session" ] = s . languages . shellsession = s . languages [ "shell-session" ] } ( Prism ) ;
Prism . languages . sql = { comment : { pattern : /(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/ , lookbehind : ! 0 } , variable : [ { pattern : /@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/ , greedy : ! 0 } , /@[\w.$]+/ ] , string : { pattern : /(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/ , greedy : ! 0 , lookbehind : ! 0 } , function : /\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i , keyword : /\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:S|ING)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i , boolean : /\b(?:TRUE|FALSE|NULL)\b/i , number : /\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i , operator : /[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|IN|ILIKE|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i , punctuation : /[;[\]()`,.]/ } ;
! function ( e ) { var n = { pattern : /(\b\d+)(?:%|[a-z]+)/ , lookbehind : ! 0 } , r = { pattern : /(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/ , lookbehind : ! 0 } , i = { comment : { pattern : /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/ , lookbehind : ! 0 } , url : { pattern : /url\((["']?).*?\1\)/i , greedy : ! 0 } , string : { pattern : /("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/ , greedy : ! 0 } , interpolation : null , func : null , important : /\B!(?:important|optional)\b/i , keyword : { pattern : /(^|\s+)(?:(?:if|else|for|return|unless)(?=\s+|$)|@[\w-]+)/ , lookbehind : ! 0 } , hexcode : /#[\da-f]{3,6}/i , color : [ /\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i , { pattern : /\b(?:rgb|hsl)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:rgb|hsl)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i , inside : { unit : n , number : r , function : /[\w-]+(?=\()/ , punctuation : /[(),]/ } } ] , entity : /\\[\da-f]{1,8}/i , unit : n , boolean : /\b(?:true|false)\b/ , operator : [ /~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/ ] , number : r , punctuation : /[{}()\[\];:,]/ } ; i . interpolation = { pattern : /\{[^\r\n}:]+\}/ , alias : "variable" , inside : { delimiter : { pattern : /^{|}$/ , alias : "punctuation" } , rest : i } } , i . func = { pattern : /[\w-]+\([^)]*\).*/ , inside : { function : /^[^(]+/ , rest : i } } , e . languages . stylus = { "atrule-declaration" : { pattern : /(^\s*)@.+/m , lookbehind : ! 0 , inside : { atrule : /^@[\w-]+/ , rest : i } } , "variable-declaration" : { pattern : /(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m , lookbehind : ! 0 , inside : { variable : /^\S+/ , rest : i } } , statement : { pattern : /(^[ \t]*)(?:if|else|for|return|unless)[ \t].+/m , lookbehind : ! 0 , inside : { keyword : /^\S+/ , rest : i } } , "property-declaration" : { pattern : /((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,](?=$)(?!(?:\r?\n|\r)(?:\{|\2[ \t]+)))/m , lookbehind : ! 0 , inside : { property : { pattern : /^[^\s:]+/ , inside : { interpolation : i . interpolation } } , rest : i } } , selector : { pattern : /(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t]+)))/m , lookbehind : ! 0 , inside : { interpolation : i . interpolation , comment : i . comment , punctuation : /[{},]/ } } , func : i . func , string : i . string , comment : { pattern : /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/ , lookbehind : ! 0 , greedy : ! 0 } , interpolation : i . interpolation , punctuation : /[{}()\[\];:.]/ } } ( Prism ) ;
Prism . languages . swift = Prism . languages . extend ( "clike" , { string : { pattern : /("|')(?:\\(?:\((?:[^()]|\([^)]+\))+\)|\r\n|[^(])|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 , inside : { interpolation : { pattern : /\\\((?:[^()]|\([^)]+\))+\)/ , inside : { delimiter : { pattern : /^\\\(|\)$/ , alias : "variable" } } } } } , keyword : /\b(?:as|associativity|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic(?:Type)?|else|enum|extension|fallthrough|final|for|func|get|guard|if|import|in|infix|init|inout|internal|is|lazy|left|let|mutating|new|none|nonmutating|operator|optional|override|postfix|precedence|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|Self|set|static|struct|subscript|super|switch|throws?|try|Type|typealias|unowned|unsafe|var|weak|where|while|willSet|__(?:COLUMN__|FILE__|FUNCTION__|LINE__))\b/ , number : /\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i , constant : /\b(?:nil|[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/ , atrule : /@\b(?:IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|noreturn|NS(?:Copying|Managed)|objc|UIApplicationMain|auto_closure)\b/ , builtin : /\b(?:[A-Z]\S+|abs|advance|alignof(?:Value)?|assert|contains|count(?:Elements)?|debugPrint(?:ln)?|distance|drop(?:First|Last)|dump|enumerate|equal|filter|find|first|getVaList|indices|isEmpty|join|last|lexicographicalCompare|map|max(?:Element)?|min(?:Element)?|numericCast|overlaps|partition|print(?:ln)?|reduce|reflect|reverse|sizeof(?:Value)?|sort(?:ed)?|split|startsWith|stride(?:of(?:Value)?)?|suffix|swap|toDebugString|toString|transcode|underestimateCount|unsafeBitCast|with(?:ExtendedLifetime|Unsafe(?:MutablePointers?|Pointers?)|VaList))\b/ } ) , Prism . languages . swift . string . inside . interpolation . inside . rest = Prism . languages . swift ;
! function ( e ) { function n ( e ) { return e . replace ( /__/g , function ( ) { return "(?:[\\w-]+|'[^'\n\r]*'|\"(?:\\\\.|[^\\\\\"\r\n])*\")" } ) } e . languages . toml = { comment : { pattern : /#.*/ , greedy : ! 0 } , table : { pattern : RegExp ( n ( "(^\\s*\\[\\s*(?:\\[\\s*)?)__(?:\\s*\\.\\s*__)*(?=\\s*\\])" ) , "m" ) , lookbehind : ! 0 , greedy : ! 0 , alias : "class-name" } , key : { pattern : RegExp ( n ( "(^\\s*|[{,]\\s*)__(?:\\s*\\.\\s*__)*(?=\\s*=)" ) , "m" ) , lookbehind : ! 0 , greedy : ! 0 , alias : "property" } , string : { pattern : /"""(?:\\[\s\S]|[^\\])*?"""|'''[\s\S]*?'''|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*"/ , greedy : ! 0 } , date : [ { pattern : /\b\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?\b/i , alias : "number" } , { pattern : /\b\d{2}:\d{2}:\d{2}(?:\.\d+)?\b/ , alias : "number" } ] , number : /(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\b\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?\b(?:inf|nan)\b/ , boolean : /\b(?:true|false)\b/ , punctuation : /[.,=[\]{}]/ } } ( Prism ) ;
Prism . languages . twig = { comment : /\{#[\s\S]*?#\}/ , tag : { pattern : /\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}/ , inside : { ld : { pattern : /^(?:\{\{-?|\{%-?\s*\w+)/ , inside : { punctuation : /^(?:\{\{|\{%)-?/ , keyword : /\w+/ } } , rd : { pattern : /-?(?:%\}|\}\})$/ , inside : { punctuation : /.+/ } } , string : { pattern : /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/ , inside : { punctuation : /^['"]|['"]$/ } } , keyword : /\b(?:even|if|odd)\b/ , boolean : /\b(?:true|false|null)\b/ , number : /\b0x[\dA-Fa-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][-+]?\d+)?/ , operator : [ { pattern : /(\s)(?:and|b-and|b-xor|b-or|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/ , lookbehind : ! 0 } , /[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/ ] , property : /\b[a-zA-Z_]\w*\b/ , punctuation : /[()\[\]{}:.,]/ } } , other : { pattern : /\S(?:[\s\S]*\S)?/ , inside : Prism . languages . markup } } ;
! function ( E ) { var n = /\b(?:ACT|ACTIFSUB|CARRAY|CASE|CLEARGIF|COA|COA_INT|CONSTANTS|CONTENT|CUR|EDITPANEL|EFFECT|EXT|FILE|FLUIDTEMPLATE|FORM|FRAME|FRAMESET|GIFBUILDER|GMENU|GMENU_FOLDOUT|GMENU_LAYERS|GP|HMENU|HRULER|HTML|IENV|IFSUB|IMAGE|IMGMENU|IMGMENUITEM|IMGTEXT|IMG_RESOURCE|INCLUDE_TYPOSCRIPT|JSMENU|JSMENUITEM|LLL|LOAD_REGISTER|NO|PAGE|RECORDS|RESTORE_REGISTER|TEMPLATE|TEXT|TMENU|TMENUITEM|TMENU_LAYERS|USER|USER_INT|_GIFBUILDER|global|globalString|globalVar)\b/ ; E . languages . typoscript = { comment : [ { pattern : /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/ , lookbehind : ! 0 } , { pattern : /(^|[^\\:= \t]|(?:^|[^= \t])[ \t]+)\/\/.*/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(^|[^"'])#.*/ , lookbehind : ! 0 , greedy : ! 0 } ] , function : [ { pattern : /<INCLUDE_TYPOSCRIPT:\s*source\s*=\s*(?:"[^"\r\n]*"|'[^'\r\n]*')\s*>/ , inside : { string : { pattern : /"[^"\r\n]*"|'[^'\r\n]*'/ , inside : { keyword : n } } , keyword : { pattern : /INCLUDE_TYPOSCRIPT/ } } } , { pattern : /@import\s*(?:"[^"\r\n]*"|'[^'\r\n]*')/ , inside : { string : /"[^"\r\n]*"|'[^'\r\n]*'/ } } ] , string : { pattern : /^([^=]*=[< ]?)(?:(?!]\n).)*/ , lookbehind : ! 0 , inside : { function : /{\$.*}/ , keyword : n , number : /^[0-9]+$/ , punctuation : /[,|:]/ } } , keyword : n , number : { pattern : /[0-9]+\s*[.{=]/ , inside : { operator : /[.{=]/ } } , tag : { pattern : /\.?[\w-\\]+\.?/ , inside : { punctuation : /\./ } } , punctuation : /[{}[\];(),.:|]/ , operator : /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/ } , E . languages . tsconfig = E . languages . typoscript } ( Prism ) ;
Prism . languages . verilog = { comment : /\/\/.*|\/\*[\s\S]*?\*\// , string : { pattern : /"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/ , greedy : ! 0 } , property : /\B\$\w+\b/ , constant : /\B`\w+\b/ , function : /\w+(?=\()/ , keyword : /\b(?:alias|and|assert|assign|assume|automatic|before|begin|bind|bins|binsof|bit|break|buf|bufif0|bufif1|byte|class|case|casex|casez|cell|chandle|clocking|cmos|config|const|constraint|context|continue|cover|covergroup|coverpoint|cross|deassign|default|defparam|design|disable|dist|do|edge|else|end|endcase|endclass|endclocking|endconfig|endfunction|endgenerate|endgroup|endinterface|endmodule|endpackage|endprimitive|endprogram|endproperty|endspecify|endsequence|endtable|endtask|enum|event|expect|export|extends|extern|final|first_match|for|force|foreach|forever|fork|forkjoin|function|generate|genvar|highz0|highz1|if|iff|ifnone|ignore_bins|illegal_bins|import|incdir|include|initial|inout|input|inside|instance|int|integer|interface|intersect|join|join_any|join_none|large|liblist|library|local|localparam|logic|longint|macromodule|matches|medium|modport|module|nand|negedge|new|nmos|nor|noshowcancelled|not|notif0|notif1|null|or|output|package|packed|parameter|pmos|posedge|primitive|priority|program|property|protected|pull0|pull1|pulldown|pullup|pulsestyle_onevent|pulsestyle_ondetect|pure|rand|randc|randcase|randsequence|rcmos|real|realtime|ref|reg|release|repeat|return|rnmos|rpmos|rtran|rtranif0|rtranif1|scalared|sequence|shortint|shortreal|showcancelled|signed|small|solve|specify|specparam|static|string|strong0|strong1|struct|super|supply0|supply1|table|tagged|task|this|throughout|time|timeprecision|timeunit|tran|tranif0|tranif1|tri|tri0|tri1|triand|trior|trireg|type|typedef|union|unique|unsigned|use|uwire|var|vectored|virtual|void|wait|wait_order|wand|weak0|weak1|while|wildcard|wire|with|within|wor|xnor|xor)\b/ , important : /\b(?:always_latch|always_comb|always_ff|always)\b ?@?/ , number : /\B##?\d+|(?:\b\d+)?'[odbh] ?[\da-fzx_?]+|\b(?:\d*[._])?\d+(?:e[-+]?\d+)?/i , operator : /[-+{}^~%*\/?=!<>&|]+/ , punctuation : /[[\];(),.:]/ } ;
Prism . languages . vhdl = { comment : /--.+/ , "vhdl-vectors" : { pattern : /\b[oxb]"[\da-f_]+"|"[01uxzwlh-]+"/i , alias : "number" } , "quoted-function" : { pattern : /"\S+?"(?=\()/ , alias : "function" } , string : /"(?:[^\\"\r\n]|\\(?:\r\n|[\s\S]))*"/ , constant : /\b(?:use|library)\b/i , keyword : /\b(?:'active|'ascending|'base|'delayed|'driving|'driving_value|'event|'high|'image|'instance_name|'last_active|'last_event|'last_value|'left|'leftof|'length|'low|'path_name|'pos|'pred|'quiet|'range|'reverse_range|'right|'rightof|'simple_name|'stable|'succ|'transaction|'val|'value|access|after|alias|all|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|new|next|null|of|on|open|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|report|return|select|severity|shared|signal|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with)\b/i , boolean : /\b(?:true|false)\b/i , function : /\w+(?=\()/ , number : /'[01uxzwlh-]'|\b(?:\d+#[\da-f_.]+#|\d[\d_.]*)(?:e[-+]?\d+)?/i , operator : /[<>]=?|:=|[-+*/&=]|\b(?:abs|not|mod|rem|sll|srl|sla|sra|rol|ror|and|or|nand|xnor|xor|nor)\b/i , punctuation : /[{}[\];(),.:]/ } ;
Prism . languages . vim = { string : /"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/ , comment : /".*/ , function : /\w+(?=\()/ , keyword : / \ b ( ? : a b | a b b r e v i a t e | a b c | a b c l e a r | a b o | a b o v e l e f t | a l | a l l | a r g a | a r g a d d | a r g d | a r g d e l e t e | a r g d o | a r g e | a r g e d i t | a r g g | a r g g l o b a l | a r g l | a r g l o c a l | a r | a r g s | a r g u | a r g u m e n t | a s | a s c i i | b a d | b a d d | b a | b a l l | b d | b d e l e t e | b e | b e l | b e l o w r i g h t | b f | b f i r s t | b l | b l a s t | b m | b m o d i f i e d | b n | b n e x t | b N | b N e x t | b o | b o t r i g h t | b p | b p r e v i o u s | b r e a | b r e a k | b r e a k a | b r e a k a d d | b r e a k d | b r e a k d e l | b r e a k l | b r e a k l i s t | b r | b r e w i n d | b r o | b r o w s e | b u f d o | b | b u f f e r | b u f f e r s | b u n | b u n l o a d | b w | b w i p e o u t | c a | c a b b r e v | c a b c | c a b c l e a r | c a d d b | c a d d b u f f e r | c a d | c a d d e x p r | c a d d f | c a d d f i l e | c a l | c a l l | c a t | c a t c h | c b | c b u f f e r | c c | c c l | c c l o s e | c d | c e | c e n t e r | c e x | c e x p r | c f | c f i l e | c f i r | c f i r s t | c g e t b | c g e t b u f f e r | c g e t e | c g e t e x p r | c g | c g e t f i l e | c | c h a n g e | c h a n g e s | c h d | c h d i r | c h e | c h e c k p a t h | c h e c k t | c h e c k t i m e | c l a | c l a s t | c l | c l i s t | c l o | c l o s e | c m a p c | c m a p c l e a r | c n e w | c n e w e r | c n | c n e x t | c N | c N e x t | c n f | c n f i l e | c N f c N f i l e | c n o r e a | c n o r e a b b r e v | c o l | c o l d e r | c o l o | c o l o r s c h e m e | c o m c | c o m c l e a r | c o m p | c o m p i l e r | c o n f | c o n f i r m | c o n | c o n t i n u e | c o p e | c o p e n | c o | c o p y | c p f | c p f i l e | c p | c p r e v i o u s | c q | c q u i t | c r | c r e w i n d | c u n a | c u n a b b r e v | c u | c u n m a p | c w | c w i n d o w | d e b u g g | d e b u g g r e e d y | d e l c | d e l c o m m a n d | d | d e l e t e | d e l f | d e l f u n c t i o n | d e l m | d e l m a r k s | d i f f g | d i f f g e t | d i f f o f f | d i f f p a t c h | d i f f p u | d i f f p u t | d i f f s p l i t | d i f f t h i s | d i f f u | d i f f u p d a t e | d i g | d i g r a p h s | d i | d i s p l a y | d j | d j u m p | d l | d l i s t | d r | d r o p | d s | d s e a r c h | d s p | d s p l i t | e a r l i e r | e c h o e | e c h o e r r | e c h o m | e c h o m s g | e c h o n | e | e d i t | e l | e l s e | e l s e i | e l s e i f | e m | e m e n u | e n d f o | e n d f o r | e n d f | e n d f u n c t i o n | e n d f u n | e n | e n d i f | e n d t | e n d t r y | e n d w | e n d w h i l e | e n e | e n e w | e x | e x i | e x i t | e x u | e x u s a g e | f | f i l e | f i l e s | f i l e t y p e | f i n a | f i n a l l y | f i n | f i n d | f i n i | f i n i s h | f i r | f i r s t | f i x | f i x d e l | f o | f o l d | f o l d c | f o l d c l o s e | f o l d d o c | f o l d d o c l o s e d | f o l d d | f o l d d o o p e n | f o l d o | f o l d o p e n | f o r | f u | f u n | f u n c t i o n | g o | g o t o | g r | g r e p | g r e p a | g r e p a d d | h a | h a r d c o p y | h | h e l p | h e l p f | h e l p f i n d | h e l p g | h e l p g r e p | h e l p t | h e l p t a g s | h i d | h i d e | h i s | h i s t o r y | i a | i a b b r e v | i a b c | i a b c l e a r | i f | i j | i j u m p | i l | i l i s t | i m a p c | i m a p c l e a r | i n | i n o r e a | i n o r e a b b r e v | i s e a r c h | i s p | i s p l i t | i u n a | i u n a b b r e v | i u | i u n m a p | j | j o i n | j u | j u m p s | k | k e e p a l t | k e e p j | k e e p j u m p s | k e e | k e e p m a r k s | l a d d b | l a d d b u f f e r | l a d | l a d d e x p r | l a d d f | l a d d f i l e | l a n | l a n g u a g e | l a | l a s t | l a t e r | l b | l b u f f e r | l c | l c d | l c h | l c h d i r | l c l | l c l o s e | l e t | l e f t | l e f t a | l e f t a b o v e | l e x | l e x p r | l f | l f i l e | l f i r | l f i r s t | l g e t b | l g e t b u f f e r | l g e t e | l g e t e x p r | l g | l g e t f i l e | l g r | l g r e p | l g r e p a | l g r e p a d d | l h | l h e l p g r e p | l | l i s t | l l | l l a | l l a s t | l l i | l l i s t | l m a k | l m a k e | l m | l m a p | l m a p c | l m a p c l e a r | l n e w | l n e w e r | l n e | l n e x t | l N | l N e x t | l n f | l n f i l e | l N f | l N f i l e | l n | l n o r e m a p | l o | l o a d v i e w | l o c | l o c k m a r k s | l o c k v | l o c k v a r | l o l | l o l d e r | l o p | l o p e n | l p f | l p f i l e | l p | l p r e v i o u s | l r | l r e w i n d | l s | l t | l t a g | l u | l u n m a p | l v | l v i m g r e p | l v i m g r e p a | l v i m g r e p a d d | l w | l w i n d o w | m a k | m a k e | m a | m a r k | m a r k s | m a t | m a t c h | m e n u t | m e n u t r a n s l a t e | m k | m k e x r c | m k s | m k s e s s i o n | m k s p | m k s p e l l | m k v i e | m k v i e w | m k v | m k v i m r c | m o d | m o d e | m | m o v e | m z f | m z f i l e | m z | m z s c h e m e | n b k e y | n e w | n | n e x t | N | N e x t | n m a p c | n m a p c l e a r | n o h | n o h l s e a r c h | n o r e a | n o r e a b b r e v | n u | n u m b e r | n u n | n u n m a p | o m a p c | o m a p c l e a r | o n | o n l y | o | o p e n | o p t | o p t i o n s | o u | o u n m a p | p c | p c l o s e | p e d | p e d i t | p e | p e r l | p e r l d | p e r l d o | p o | p o p | p o p u | p o p u p | p p | p p o p | p r e | p r e s e r v e | p r e v | p r e v i o u s | p | p r i n t | P | P r i n t | p r o f d | p r o f d e l | p r o f | p r o f i l e | p r o m p t f | p r o m p t f i n d | p r o m p t r | p r o m p t r e p l | p s | p s e a r c h | p t a | p t a g | p t f | p t f i r s t | p t j | p t j u m p | p t l | p t l a s t | p t n | p t n e x t | p t N | p t N e x t | p t p | p t p r e v i o u s | p t r | p t r e w i n d | p t s | p t s e l e c t | p u | p u t | p w | p w d | p y f | p y f i l e | p y | p y t h o n | q a | q a l l | q | q u i t | q u i t a | q u i t a l l | r | r e a d | r e c | r e c o v e r | r e d i | r e d i r | r e d | r e d o | r e d r | r e d r a w | r e d r a w s | r e d r a w s t a t u s | r e g | r e g i s t e r s | r e s | r e s i z e | r e t | r e t a b | r e t u | r e t u r n | r e w | r e w i n d | r i | r i g h t | r i g h t b | r i g h t b e l o w | r u b | r u b y | r u b y d | r u b y d o | r u b y f | r u b y f i l e | r u | r u n t i m e | r v | r v i m i n f o | s a l | s a l l | s a n | s a n d b o x | s a | s a r g u m e n t | s a v | s a v e a s | s b a | s b a l l | s b f | s b f i r s t | s b l | s b l a s t | s b m | s b m o d i f i e d | s b n | s b n e x t | s b N | s b N e x t | s b p | s b p r e v i o u s | s b r | s b r e w i n d | s b | s b u f f e r | s c r i p t e | s c r i p t e n c o d i n g | s c r i p | s c r i p t n a m e s | s e | s e t | s e t f | s e t f i l e t y p e | s e t g | s e t g l o b a l | s e t l | s e t l o c a l | s f | s f i n d | s f i r | s f i r s t | s h | s h e l l | s i g n | s i l | s i l e n t | s i m | s i m a l t | s l a | s l a s t | s l | s l e e p | s m | s m a g i c | s m a p | s m a p c | s m a p c l e a r | s m e | s m e n u | s n | s n e x t | s N | s N e x t | s n i | s n i f f | s n o | s n o m a g i c | s n o r | s n o r e m a p | s n o r e m e | s n o r e m e n u | s o r | s o r t | s o | s o u r c e | s p e l l d | s p e l l d u m p | s p e | s p e l l g o o d | s p e l l i | s p e l l i n f o | s p e l l r | s p e l l r e p a l l | s p e l l u | s p e l l u n d o | s p e l l w | s p e l l w r o n g | s p | s p l i t | s p r | s p r e v i o u s | s r e | s r e w i n d | s t a | s t a g | s t a r t g | s t a r t g r e p l a c e | s t a r | s t a r t i n s e r t | s t a r t r | s t a r t r e p l a c e | s t j | s t j u m p | s t | s t o p | s t o p i | s t o p i n s e r t | s t s | s t s e l e c t | s u n | s u n h i d e | s u n m | s u n m a p | s u s | s u s p e n d | s v | s v i e w | s y n c b i n d | t | t a b | t a b c | t a b c l o s e | t a b d | t a b d o | t a b e | t a b e d i t | t a b f | t a b f i n d | t a b f i r | t a b f i r s t | t a b l | t a b l a s t | t a b m | t a b m o v e | t a b n e w | t a b n | t a b n e x t | t a b N | t a b N e x t | t a b o | t a b o n l y | t a b p | t a b p r e v i o u s | t a b r | t a b r e w i n d | t a b s | t a | t a g | t a g s | t c | t c l | t c l d | t c l d o | t c l f | t c l f i l e | t e | t e a r o f f | t f | t f i r s t | t h | t h r o w | t j | t j u m p | t l | t l a s t | t m | t m e n u | t n | t n e x t | t N | t N e x t | t o | t o p l e f t | t p | t p r e v i o u s | t r | t r e w i n d | t r y | t s | t s e l e c t | t u | t u n m e n u | u n a | u n a b b r e v i a t e | u | u n d o | u n d o j | u n d o j o i n | u n d o l | u n d o l i s t | u n h | u n h i d e | u n l e t | u n l o | u n l o c k v a r | u n m | u n m a p | u p | u p d a t e | v e r b | v e r b o s e | v e | v e r s i o n | v e r t | v e r t i c a l | v i e | v i e w | v i m | v i m g r e p | v i m g r e p a | v i m g r e p a d d | v i | v i s u a l | v i u | v i u s a g e | v m a p c | v m a p c l e a r | v n e | v n e w | v s | v s p l i t | v u | v u n m a p | w a | w a l l | w h | w h i l e | w i n c | w i n c m d | w i n d o | w i n p | w i n p o s | w i n | w i n s i z e | w n | w n e x t | w N | w N e x t | w p | w p r e v i o u s | w q | w q a | w q a l l | w | w r i t e | w s | w s v e r b | w v | w v i m i n f o | X | x a | x a l l | x | x i t | x m | x m a p | x m a p c | x m a p c l e a r | x m e | x m e n u | X M L e n t | X M L n s | x n | x n o r e m a p | x n o r e m e | x n o r e m e n u | x u | x u n m a p | y | y a Line truncated
Prism . languages [ "visual-basic" ] = { comment : { pattern : /(?:['‘’]|REM\b)(?:[^\r\n_]|_(?:\r\n?|\n)?)*/i , inside : { keyword : /^REM/i } } , directive : { pattern : /#(?:Const|Else|ElseIf|End|ExternalChecksum|ExternalSource|If|Region)(?:[^\S\r\n]_[^\S\r\n]*(?:\r\n?|\n)|.)+/i , alias : "comment" , greedy : ! 0 } , string : { pattern : /\$?["“”](?:["“”]{2}|[^"“”])*["“”]C?/i , greedy : ! 0 } , date : { pattern : /#[^\S\r\n]*(?:\d+([/-])\d+\1\d+(?:[^\S\r\n]+(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))?|\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?)[^\S\r\n]*#/i , alias : "builtin" } , number : /(?:(?:\b\d+(?:\.\d+)?|\.\d+)(?:E[+-]?\d+)?|&[HO][\dA-F]+)(?:U?[ILS]|[FRD])?/i , boolean : /\b(?:True|False|Nothing)\b/i , keyword : /\b(?:AddHandler|AddressOf|Alias|And(?:Also)?|As|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|C(?:Bool|Byte|Char|Date|Dbl|Dec|Int|Lng|Obj|SByte|Short|Sng|Str|Type|UInt|ULng|UShort)|Char|Class|Const|Continue|Currency|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else(?:If)?|End(?:If)?|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get(?:Type|XMLNamespace)?|Global|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|IsNot|Let|Lib|Like|Long|Loop|Me|Mod|Module|Must(?:Inherit|Override)|My(?:Base|Class)|Namespace|Narrowing|New|Next|Not(?:Inheritable|Overridable)?|Object|Of|On|Operator|Option(?:al)?|Or(?:Else)?|Out|Overloads|Overridable|Overrides|ParamArray|Partial|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|SByte|Select|Set|Shadows|Shared|short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TryCast|Type|TypeOf|U(?:Integer|Long|Short)|Using|Variant|Wend|When|While|Widening|With(?:Events)?|WriteOnly|Until|Xor)\b/i , operator : [ /[+\-*/\\^<=>&#@$%!]/ , { pattern : /([^\S\r\n])_(?=[^\S\r\n]*[\r\n])/ , lookbehind : ! 0 } ] , punctuation : /[{}().,:?]/ } , Prism . languages . vb = Prism . languages [ "visual-basic" ] , Prism . languages . vba = Prism . languages [ "visual-basic" ] ;
Prism . languages . wasm = { comment : [ /\(;[\s\S]*?;\)/ , { pattern : /;;.*/ , greedy : ! 0 } ] , string : { pattern : /"(?:\\[\s\S]|[^"\\])*"/ , greedy : ! 0 } , keyword : [ { pattern : /\b(?:align|offset)=/ , inside : { operator : /=/ } } , { pattern : /\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))?|memory\.(?:grow|size))\b/ , inside : { punctuation : /\./ } } , /\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/ ] , variable : /\$[\w!#$%&'*+\-./:<=>?@\\^_`|~]+/i , number : /[+-]?\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/ , punctuation : /[()]/ } ;
! function ( n ) { function a ( a , e ) { n . languages [ a ] && n . languages . insertBefore ( a , "comment" , { "doc-comment" : e } ) } var e = n . languages . markup . tag , t = { pattern : /\/\/\/.*/ , greedy : ! 0 , alias : "comment" , inside : { tag : e } } , g = { pattern : /'''.*/ , greedy : ! 0 , alias : "comment" , inside : { tag : e } } ; a ( "csharp" , t ) , a ( "fsharp" , t ) , a ( "vbnet" , g ) } ( Prism ) ;
! function ( e ) { var n = /[*&][^\s[\]{},]+/ , r = /!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/ , t = "(?:" + r . source + "(?:[ \t]+" + n . source + ")?|" + n . source + "(?:[ \t]+" + r . source + ")?)" , a = "(?:[^\\s\\x00-\\x08\\x0e-\\x1f!\"#%&'*,\\-:>?@[\\]`{|}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*" . replace ( /<PLAIN>/g , function ( ) { return "[^\\s\\x00-\\x08\\x0e-\\x1f,[\\]{}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]" } ) , d = "\"(?:[^\"\\\\\r\n]|\\\\.)*\"|'(?:[^'\\\\\r\n]|\\\\.)*'" ; function o ( e , n ) { n = ( n || "" ) . replace ( /m/g , "" ) + "m" ; var r = "([:\\-,[{]\\s*(?:\\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|]|}|(?:[\r\n]\\s*)?#))" . replace ( /<<prop>>/g , function ( ) { return t } ) . replace ( /<<value>>/g , function ( ) { return e } ) ; return RegExp ( r , n ) } e . languages . yaml = { scalar : { pattern : RegExp ( "([\\-:]\\s*(?:\\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\\S[^\r\n]*(?:\\2[^\r\n]+)*)" . replace ( /<<prop>>/g , function ( ) { return t } ) ) , lookbehind : ! 0 , alias : "string" } , comment : /#.*/ , key : { pattern : RegExp ( "((?:^|[:\\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\\s*:\\s)" . replace ( /<<prop>>/g , function ( ) { return t } ) . replace ( /<<key>>/g , function ( ) { return "(?:" + a + "|" + d + ")" } ) ) , lookbehind : ! 0 , greedy : ! 0 , alias : "atrule" } , directive : { pattern : /(^[ \t]*)%.+/m , lookbehind : ! 0 , alias : "important" } , datetime : { pattern : o ( "\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?(?:[ \t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?))?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?" ) , lookbehind : ! 0 , alias : "number" } , boolean : { pattern : o ( "true|false" , "i" ) , lookbehind : ! 0 , alias : "important" } , null : { pattern : o ( "null|~" , "i" ) , lookbehind : ! 0 , alias : "important" } , string : { pattern : o ( d ) , lookbehind : ! 0 , greedy : ! 0 } , number : { pattern : o ( "[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+(?:\\.\\d*)?|\\.?\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)" , "i" ) , lookbehind : ! 0 } , tag : r , important : n , punctuation : /---|[:[\]{}\-,|>?]|\.\.\./ } , e . languages . yml = e . languages . yaml } ( Prism ) ;
! function ( ) { if ( "undefined" != typeof self && self . Prism && self . document && document . querySelector ) { var t , s = function ( ) { if ( void 0 === t ) { var e = document . createElement ( "div" ) ; e . style . fontSize = "13px" , e . style . lineHeight = "1.5" , e . style . padding = "0" , e . style . border = "0" , e . innerHTML = " <br /> " , document . body . appendChild ( e ) , t = 38 === e . offsetHeight , document . body . removeChild ( e ) } return t } , b = ! 0 , a = 0 ; Prism . hooks . add ( "before-sanity-check" , function ( e ) { var t = e . element . parentElement , n = t && t . getAttribute ( "data-line" ) ; if ( t && n && /pre/i . test ( t . nodeName ) ) { var i = 0 ; v ( ".line-highlight" , t ) . forEach ( function ( e ) { i += e . textContent . length , e . parentNode . removeChild ( e ) } ) , i && /^( \n)+$/ . test ( e . code . slice ( - i ) ) && ( e . code = e . code . slice ( 0 , - i ) ) } } ) , Prism . hooks . add ( "complete" , function e ( t ) { var n = t . element . parentElement , i = n && n . getAttribute ( "data-line" ) ; if ( n && i && /pre/i . test ( n . nodeName ) ) { clearTimeout ( a ) ; var r = Prism . plugins . lineNumbers , o = t . plugins && t . plugins . lineNumbers ; if ( y ( n , "line-numbers" ) && r && ! o ) Prism . hooks . add ( "line-numbers" , e ) ; else l ( n , i ) ( ) , a = setTimeout ( u , 1 ) } } ) , window . addEventListener ( "hashchange" , u ) , window . addEventListener ( "resize" , function ( ) { v ( "pre[data-line]" ) . map ( function ( e ) { return l ( e ) } ) . forEach ( E ) } ) } function v ( e , t ) { return Array . prototype . slice . call ( ( t || document ) . querySelectorAll ( e ) ) } function y ( e , t ) { return t = " " + t + " " , - 1 < ( " " + e . className + " " ) . replace ( /[\n\t]/g , " " ) . indexOf ( t ) } function E ( e ) { e ( ) } function l ( u , e , d ) { var t = ( e = "string" == typeof e ? e : u . getAttribute ( "data-line" ) ) . replace ( /\s+/g , "" ) . split ( "," ) . filter ( Boolean ) , c = + u . getAttribute ( "data-line-offset" ) || 0 , f = ( s ( ) ? parseInt : parseFloat ) ( getComputedStyle ( u ) . lineHeight ) , p = y ( u , "line-numbers" ) , n = u . querySelector ( "code" ) , m = p ? u : n || u , h = [ ] , g = n && m != n ? function ( e , t ) { var n = getComputedStyle ( e ) , i = getComputedStyle ( t ) ; function r ( e ) { return + e . substr ( 0 , e . length - 2 ) } return t . offsetTop + r ( i . borderTopWidth ) + r ( i . paddingTop ) - r ( n . paddingTop ) } ( u , n ) : 0 ; t . forEach ( function ( e ) { var t = e . split ( "-" ) , n = + t [ 0 ] , i = + t [ 1 ] || n , r = u . querySelector ( '.line-highlight[data-range="' + e + '"]' ) || document . createElement ( "div" ) ; if ( h . push ( function ( ) { r . setAttribute ( "aria-hidden" , "true" ) , r . setAttribute ( "data-range" , e ) , r . className = ( d || "" ) + " line-highlight" } ) , p && Prism . plugins . lineNumbers ) { var o = Prism . plugins . lineNumbers . getLine ( u , n ) , a = Prism . plugins . lineNumbers . getLine ( u , i ) ; if ( o ) { var l = o . offsetTop + g + "px" ; h . push ( function ( ) { r . style . top = l } ) } if ( a ) { var s = a . offsetTop - o . offsetTop + a . offsetHeight + "px" ; h . push ( function ( ) { r . style . height = s } ) } } else h . push ( function ( ) { r . setAttribute ( "data-start" , String ( n ) ) , n < i && r . setAttribute ( "data-end" , String ( i ) ) , r . style . top = ( n - c - 1 ) * f + g + "px" , r . textContent = new Array ( i - n + 2 ) . join ( " \n" ) } ) ; h . push ( function ( ) { m . appendChild ( r ) } ) } ) ; var i = u . id ; if ( p && i ) { for ( var r = "linkable-line-numbers" , o = ! 1 , a = u ; a ; ) { if ( y ( a , r ) ) { o = ! 0 ; break } a = a . parentElement } if ( o ) { y ( u , r ) || h . push ( function ( ) { u . className = ( u . className + " " + r ) . trim ( ) } ) ; var l = parseInt ( u . getAttribute ( "data-start" ) || "1" ) ; v ( ".line-numbers-rows > span" , u ) . forEach ( function ( e , t ) { var n = t + l ; e . onclick = function ( ) { var e = i + "." + n ; b = ! 1 , location . hash = e , setTimeout ( function ( ) { b = ! 0 } , 1 ) } } ) } } return function ( ) { h . forEach ( E ) } } function u ( ) { var e = location . hash . slice ( 1 ) ; v ( ".temporary.line-highlight" ) . forEach ( function ( e ) { e . parentNode . removeChild ( e ) } ) ; var t = ( e . match ( /\.([\d,-]+)$/ ) || [ , "" ] ) [ 1 ] ; if ( t && ! document . getElementById ( e ) ) { var n = e . slice ( 0 , e . lastIndexOf ( "." ) ) , i = document . getElementById ( n ) ; if ( i ) i . hasAttribute ( "data-line" ) || i . setAttribute ( "data-line" , "" ) , l ( i , t , "temporary " ) ( ) , b && document . querySelector ( ".temporary.line-highlight" ) . scrollIntoView ( ) } } } ( ) ;
! function ( ) { if ( "undefined" != typeof self && self . Prism && self . document ) { var o = "line-numbers" , a = /\n(?!$)/g , e = Prism . plugins . lineNumbers = { getLine : function ( e , n ) { if ( "PRE" === e . tagName && e . classList . contains ( o ) ) { var t = e . querySelector ( ".line-numbers-rows" ) ; if ( t ) { var i = parseInt ( e . getAttribute ( "data-start" ) , 10 ) || 1 , r = i + ( t . children . length - 1 ) ; n < i && ( n = i ) , r < n && ( n = r ) ; var s = n - i ; return t . children [ s ] } } } , resize : function ( e ) { u ( [ e ] ) } , assumeViewportIndependence : ! 0 } , t = function ( e ) { return e ? window . getComputedStyle ? getComputedStyle ( e ) : e . currentStyle || null : null } , n = void 0 ; window . addEventListener ( "resize" , function ( ) { e . assumeViewportIndependence && n === window . innerWidth || ( n = window . innerWidth , u ( Array . prototype . slice . call ( document . querySelectorAll ( "pre." + o ) ) ) ) } ) , Prism . hooks . add ( "complete" , function ( e ) { if ( e . code ) { var n = e . element , t = n . parentNode ; if ( t && /pre/i . test ( t . nodeName ) && ! n . querySelector ( ".line-numbers-rows" ) && Prism . util . isActive ( n , o ) ) { n . classList . remove ( o ) , t . classList . add ( o ) ; var i , r = e . code . match ( a ) , s = r ? r . length + 1 : 1 , l = new Array ( s + 1 ) . join ( "<span></span>" ) ; ( i = document . createElement ( "span" ) ) . setAttribute ( "aria-hidden" , "true" ) , i . className = "line-numbers-rows" , i . innerHTML = l , t . hasAttribute ( "data-start" ) && ( t . style . counterReset = "linenumber " + ( parseInt ( t . getAttribute ( "data-start" ) , 10 ) - 1 ) ) , e . element . appendChild ( i ) , u ( [ t ] ) , Prism . hooks . run ( "line-numbers" , e ) } } } ) , Prism . hooks . add ( "line-numbers" , function ( e ) { e . plugins = e . plugins || { } , e . plugins . lineNumbers = ! 0 } ) } function u ( e ) { if ( 0 != ( e = e . filter ( function ( e ) { var n = t ( e ) [ "white-space" ] ; return "pre-wrap" === n || "pre-line" === n } ) ) . length ) { var n = e . map ( function ( e ) { var n = e . querySelector ( "code" ) , t = e . querySelector ( ".line-numbers-rows" ) ; if ( n && t ) { var i = e . querySelector ( ".line-numbers-sizer" ) , r = n . textContent . split ( a ) ; i || ( ( i = document . createElement ( "span" ) ) . className = "line-numbers-sizer" , n . appendChild ( i ) ) , i . innerHTML = "0" , i . style . display = "block" ; var s = i . getBoundingClientRect ( ) . height ; return i . innerHTML = "" , { element : e , lines : r , lineHeights : [ ] , oneLinerHeight : s , sizer : i } } } ) . filter ( Boolean ) ; n . forEach ( function ( e ) { var i = e . sizer , n = e . lines , r = e . lineHeights , s = e . oneLinerHeight ; r [ n . length - 1 ] = void 0 , n . forEach ( function ( e , n ) { if ( e && 1 < e . length ) { var t = i . appendChild ( document . createElement ( "span" ) ) ; t . style . display = "block" , t . textContent = e } else r [ n ] = s } ) } ) , n . forEach ( function ( e ) { for ( var n = e . sizer , t = e . lineHeights , i = 0 , r = 0 ; r < t . length ; r ++ ) void 0 === t [ r ] && ( t [ r ] = n . children [ i ++ ] . getBoundingClientRect ( ) . height ) } ) , n . forEach ( function ( e ) { var n = e . sizer , t = e . element . querySelector ( ".line-numbers-rows" ) ; n . style . display = "none" , n . innerHTML = "" , e . lineHeights . forEach ( function ( e , n ) { t . children [ n ] . style . height = e + "px" } ) } ) } } } ( ) ;
! function ( ) { if ( "undefined" != typeof self && self . Prism && self . document ) { var i = [ ] , l = { } , c = function ( ) { } ; Prism . plugins . toolbar = { } ; var e = Prism . plugins . toolbar . registerButton = function ( e , n ) { var t ; t = "function" == typeof n ? n : function ( e ) { var t ; return "function" == typeof n . onClick ? ( ( t = document . createElement ( "button" ) ) . type = "button" , t . addEventListener ( "click" , function ( ) { n . onClick . call ( this , e ) } ) ) : "string" == typeof n . url ? ( t = document . createElement ( "a" ) ) . href = n . url : t = document . createElement ( "span" ) , n . className && t . classList . add ( n . className ) , t . textContent = n . text , t } , e in l ? console . warn ( 'There is a button with the key "' + e + '" registered already.' ) : i . push ( l [ e ] = t ) } , t = Prism . plugins . toolbar . hook = function ( a ) { var e = a . element . parentNode ; if ( e && /pre/i . test ( e . nodeName ) && ! e . parentNode . classList . contains ( "code-toolbar" ) ) { var t = document . createElement ( "div" ) ; t . classList . add ( "code-toolbar" ) , e . parentNode . insertBefore ( t , e ) , t . appendChild ( e ) ; var r = document . createElement ( "div" ) ; r . classList . add ( "toolbar" ) ; var n = i , o = function ( e ) { for ( ; e ; ) { var t = e . getAttribute ( "data-toolbar-order" ) ; if ( null != t ) return ( t = t . trim ( ) ) . length ? t . split ( /\s*,\s*/g ) : [ ] ; e = e . parentElement } } ( a . element ) ; o && ( n = o . map ( function ( e ) { return l [ e ] || c } ) ) , n . forEach ( function ( e ) { var t = e ( a ) ; if ( t ) { var n = document . createElement ( "div" ) ; n . classList . add ( "toolbar-item" ) , n . appendChild ( t ) , r . appendChild ( n ) } } ) , t . appendChild ( r ) } } ; e ( "label" , function ( e ) { var t = e . element . parentNode ; if ( t && /pre/i . test ( t . nodeName ) && t . hasAttribute ( "data-label" ) ) { var n , a , r = t . getAttribute ( "data-label" ) ; try { a = document . querySelector ( "template#" + r ) } catch ( e ) { } return a ? n = a . content : ( t . hasAttribute ( "data-url" ) ? ( n = document . createElement ( "a" ) ) . href = t . getAttribute ( "data-url" ) : n = document . createElement ( "span" ) , n . textContent = r ) , n } } ) , Prism . hooks . add ( "complete" , t ) } } ( ) ;
! function ( ) { if ( "undefined" != typeof self && self . Prism && self . document ) if ( Prism . plugins . toolbar ) { var r = { none : "Plain text" , html : "HTML" , xml : "XML" , svg : "SVG" , mathml : "MathML" , ssml : "SSML" , rss : "RSS" , css : "CSS" , clike : "C-like" , js : "JavaScript" , abap : "ABAP" , abnf : "ABNF" , al : "AL" , antlr4 : "ANTLR4" , g4 : "ANTLR4" , apacheconf : "Apache Configuration" , apl : "APL" , aql : "AQL" , arff : "ARFF" , asciidoc : "AsciiDoc" , adoc : "AsciiDoc" , aspnet : "ASP.NET (C#)" , asm6502 : "6502 Assembly" , autohotkey : "AutoHotkey" , autoit : "AutoIt" , basic : "BASIC" , bbcode : "BBcode" , bnf : "BNF" , rbnf : "RBNF" , bsl : "BSL (1C:Enterprise)" , oscript : "OneScript" , csharp : "C#" , cs : "C#" , dotnet : "C#" , cpp : "C++" , cil : "CIL" , cmake : "CMake" , coffee : "CoffeeScript" , conc : "Concurnas" , csp : "Content-Security-Policy" , "css-extras" : "CSS Extras" , dataweave : "DataWeave" , dax : "DAX" , django : "Django/Jinja2" , jinja2 : "Django/Jinja2" , "dns-zone-file" : "DNS zone file" , "dns-zone" : "DNS zone file" , dockerfile : "Docker" , ebnf : "EBNF" , editorconfig : "EditorConfig" , ejs : "EJS" , etlua : "Embedded Lua templating" , erb : "ERB" , "excel-formula" : "Excel Formula" , xlsx : "Excel Formula" , xls : "Excel Formula" , fsharp : "F#" , "firestore-security-rules" : "Firestore security rules" , ftl : "FreeMarker Template Language" , gml : "GameMaker Language" , gamemakerlanguage : "GameMaker Language" , gcode : "G-code" , gdscript : "GDScript" , gedcom : "GEDCOM" , glsl : "GLSL" , graphql : "GraphQL" , hs : "Haskell" , hcl : "HCL" , hlsl : "HLSL" , http : "HTTP" , hpkp : "HTTP Public-Key-Pins" , hsts : "HTTP Strict-Transport-Security" , ichigojam : "IchigoJam" , ignore : ".ignore" , gitignore : ".gitignore" , hgignore : ".hgignore" , npmignore : ".npmignore" , inform7 : "Inform 7" , javadoc : "JavaDoc" , javadoclike : "JavaDoc-like" , javastacktrace : "Java stack trace" , jq : "JQ" , jsdoc : "JSDoc" , "js-extras" : "JS Extras" , json : "JSON" , webmanifest : "Web App Manifest" , json5 : "JSON5" , jsonp : "JSONP" , jsstacktrace : "JS stack trace" , "js-templates" : "JS Templates" , kts : "Kotlin Script" , kt : "Kotlin" , latex : "LaTeX" , tex : "TeX" , context : "ConTeXt" , lilypond : "LilyPond" , ly : "LilyPond" , emacs : "Lisp" , elisp : "Lisp" , "emacs-lisp" : "Lisp" , llvm : "LLVM IR" , lolcode : "LOLCODE" , md : "Markdown" , "markup-templating" : "Markup templating" , matlab : "MATLAB" , mel : "MEL" , mongodb : "MongoDB" , moon : "MoonScript" , n1ql : "N1QL" , n4js : "N4JS" , n4jsd : "N4JS" , "nand2tetris-hdl" : "Nand To Tetris HDL" , naniscript : "Naninovel Script" , nani : "Naninovel Script" , nasm : "NASM" , neon : "NEON" , nginx : "nginx" , nsis : "NSIS" , objectivec : "Objective-C" , objc : "Objective-C" , ocaml : "OCaml" , opencl : "OpenCL" , parigp : "PARI/GP" , objectpascal : "Object Pascal" , pcaxis : "PC-Axis" , px : "PC-Axis" , peoplecode : "PeopleCode" , pcode : "PeopleCode" , php : "PHP" , phpdoc : "PHPDoc" , "php-extras" : "PHP Extras" , plsql : "PL/SQL" , powerquery : "PowerQuery" , pq : "PowerQuery" , mscript : "PowerQuery" , powershell : "PowerShell" , promql : "PromQL" , properties : ".properties" , protobuf : "Protocol Buffers" , purebasic : "PureBasic" , pbfasm : "PureBasic" , purs : "PureScript" , py : "Python" , q : "Q (kdb+ database)" , qml : "QML" , rkt : "Racket" , jsx : "React JSX" , tsx : "React TSX" , renpy : "Ren'py" , rpy : "Ren'py" , rest : "reST (reStructuredText)" , robotframework : "Robot Framework" , robot : "Robot Framework" , rb : "Ruby" , sas : "SAS" , sass : "Sass (Sass)" , scss : "Sass (Scss)" , "shell-session" : "Shell session" , "sh-session" : "Shell session" , shellsession : "Shell session" , sml : "SML" , smlnj : "SML/NJ" , solidity : "Solidity (Ethereum)" , sol : "Solidity (Ethereum)" , "solution-file" : "Solution file" , sln : "Solution file" , soy : "Soy (Closure Template)" , sparql : "SPARQL" , rq : "SPARQL" , "splunk-spl" : "Splunk SPL" , sqf : "SQF: Status Quo Function (Arma 3)" , sql : "SQL" , iecst : "Structured Text (IEC 61131-3)" , "t4-templating" : "T4 templating" , "t4-cs" : "T4 Text Templates (C#)" , t4 : "T4 Text Templates (C#)" , "t4-vb" : "T4 Text Templates (VB)" , tap : "TAP" , tt2 : "Template Toolkit 2" , toml : "TOML" , trig : "TriG" , ts : "TypeScript" , tsconfig : "TSConfig" , uscript : "UnrealScript" , uc : "UnrealScript" , vbnet : "VB.Net" , vhdl : "VHDL" , vim : "vim" , "visual-basic" : "Visual Basic" , vba : "VBA" , vb : "Visual Basic" , wasm : "WebAssembly" , wiki : "Wiki markup" , xeoracube : "XeoraCube" , "xml-doc" : "XML doc (.net)" , xojo : "Xojo (REALbasic)" , xquery : "XQuery" , yaml : "YAML" , yml : "YAML" , yang : "YANG" } ; Prism . plugins . toolbar . registerButton ( "show-language" , function ( e ) { var a = e . element . parentNode ; if ( a && /pre/i . test ( a . nodeName ) ) { var s , t = a . getAttribute ( "data-language" ) || r [ e . language ] || ( ( s = e . language ) ? ( s . substring ( 0 , 1 ) . toUpperCase ( ) + s . substring ( 1 ) ) . replace ( /s(?=cript)/ , "S" ) : s ) ; if ( t ) { var o = document . createElement ( "span" ) ; return o . textContent = t , o } } } ) } else console . warn ( "Show Languages plugin loaded before Toolbar plugin." ) } ( ) ;