2019-09-18 11:25:21 +01:00
/ * P r i s m J S 1 . 1 7 . 1
https : //prismjs.com/download.html#themes=prism-solarizedlight&languages=markup+css+clike+javascript+c+csharp+bash+cpp+aspnet+coffeescript+clojure+ruby+markup-templating+docker+elixir+erlang+fsharp+git+go+graphql+less+handlebars+haskell+http+java+php+markdown+json+latex+makefile+typescript+nginx+objectivec+perl+sql+powershell+scss+python+jsx+rust+plsql+swift+yaml+toml+regex+wasm&plugins=line-numbers+toolbar+highlight-keywords+show-language */
var _self = "undefined" != typeof window ? window : "undefined" != typeof WorkerGlobalScope && self instanceof WorkerGlobalScope ? self : { } , Prism = function ( u ) { var c = /\blang(?:uage)?-([\w-]+)\b/i , a = 0 ; var _ = { manual : u . Prism && u . Prism . manual , disableWorkerMessageHandler : u . Prism && u . Prism . disableWorkerMessageHandler , util : { encode : function ( e ) { return e instanceof L ? new L ( e . type , _ . util . encode ( e . content ) , e . alias ) : Array . isArray ( e ) ? e . map ( _ . util . encode ) : e . 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 : ++ a } ) , e . _ _id } , clone : function n ( e , r ) { var t , a , i = _ . util . type ( e ) ; switch ( r = r || { } , i ) { case "Object" : if ( a = _ . util . objId ( e ) , r [ a ] ) return r [ a ] ; for ( var o in t = { } , r [ a ] = t , e ) e . hasOwnProperty ( o ) && ( t [ o ] = n ( e [ o ] , r ) ) ; return t ; case "Array" : return a = _ . util . objId ( e ) , r [ a ] ? r [ a ] : ( t = [ ] , r [ a ] = t , e . forEach ( function ( e , a ) { t [ a ] = n ( e , r ) } ) , t ) ; default : return e } } } , languages : { extend : function ( e , a ) { var n = _ . util . clone ( _ . languages [ e ] ) ; for ( var r in a ) n [ r ] = a [ r ] ; return n } , insertBefore : function ( n , e , a , r ) { var t = ( r = r || _ . languages ) [ n ] , i = { } ; for ( var o in t ) if ( t . hasOwnProperty ( o ) ) { if ( o == e ) for ( var l in a ) a . hasOwnProperty ( l ) && ( i [ l ] = a [ l ] ) ; a . hasOwnProperty ( o ) || ( i [ o ] = t [ o ] ) } var s = r [ n ] ; return r [ n ] = i , _ . languages . DFS ( _ . languages , function ( e , a ) { a === s && e != n && ( this [ e ] = i ) } ) , i } , DFS : function e ( a , n , r , t ) { t = t || { } ; var i = _ . util . objId ; for ( var o in a ) if ( a . hasOwnProperty ( o ) ) { n . call ( a , o , a [ o ] , r || o ) ; var l = a [ o ] , s = _ . util . type ( l ) ; "Object" !== s || t [ i ( l ) ] ? "Array" !== s || t [ i ( l ) ] || ( t [ i ( l ) ] = ! 0 , e ( l , n , o , t ) ) : ( t [ i ( l ) ] = ! 0 , e ( l , n , null , t ) ) } } } , plugins : { } , highlightAll : function ( e , a ) { _ . highlightAllUnder ( document , e , a ) } , highlightAllUnder : function ( e , a , n ) { var r = { callback : n , selector : 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code' } ; _ . hooks . run ( "before-highlightall" , r ) ; for ( var t , i = e . querySelectorAll ( r . selector ) , o = 0 ; t = i [ o ++ ] ; ) _ . highlightElement ( t , ! 0 === a , r . callback ) } , highlightElement : function ( e , a , n ) { var r = function ( e ) { for ( ; e && ! c . test ( e . className ) ; ) e = e . parentNode ; return e ? ( e . className . match ( c ) || [ , "none" ] ) [ 1 ] . toLowerCase ( ) : "none" } ( e ) , t = _ . languages [ r ] ; e . className = e . className . replace ( c , "" ) . replace ( /\s+/g , " " ) + " language-" + r ; var i = e . parentNode ; i && "pre" === i . nodeName . toLowerCase ( ) && ( i . className = i . className . replace ( c , "" ) . replace ( /\s+/g , " " ) + " language-" + r ) ; var o = { element : e , language : r , grammar : t , code : e . textContent } ; function l ( e ) { o . highlightedCode = e , _ . hooks . run ( "before-insert" , o ) , o . element . innerHTML = o . highlightedCode , _ . hooks . run ( "after-highlight" , o ) , _ . hooks . run ( "complete" , o ) , n && n . call ( o . element ) } if ( _ . hooks . run ( "before-sanity-check" , o ) , ! o . code ) return _ . hooks . run ( "complete" , o ) , void ( n && n . call ( o . element ) ) ; if ( _ . hooks . run ( "before-highlight" , o ) , o . grammar ) if ( a && u . Worker ) { var s = new Worker ( _ . filename ) ; s . onmessage = function ( e ) { l ( e . data ) } , s . postMessage ( JSON . stringify ( { language : o . language , code : o . code , immediateClose : ! 0 } ) ) } else l ( _ . highlight ( o . code , o . grammar , o . language ) ) ; else l ( _ . util . encode ( o . code ) ) } , highlight : function ( e , a , n ) { var r = { code : e , grammar : a , language : n } ; return _ . hooks . run ( "before-tokenize" , r ) , r . tokens = _ . tokenize ( r . code , r . grammar ) , _ . hooks . run ( "after-tokenize" , r ) , L . stringify ( _ . util . encode ( r . tokens ) , r . language ) } , matchGrammar : function ( e , a , n , r , t , i , o ) { for ( var l in n ) if ( n . hasOwnProperty ( l ) && n [ l ] ) { var s = n [ l ] ; s = Array . isArray ( s ) ? s : [ s ] ; for ( var u = 0 ; u < s . length ; ++ u ) { if ( o && o == l + "," + u ) return ; var c = s [ u ] , g = c . inside , f = ! ! c . lookbehind , h = ! ! c . greedy , d = 0 , m = c . alias ; if ( h && ! c . pattern . global ) { var p = c . pattern . toString ( ) . match ( /[imsuy]*$/ ) [ 0 ] ; c . pattern = RegExp ( c . pattern . source , p + "g" ) } c = c . pattern || c ; for ( var y = r , v = t ; y < a . length ; v += a [ y ] . length , ++ y ) { var k = a [ y ] ; if ( a . length > e . length ) return ; if ( ! ( k instanceof L ) ) { if ( h && y != a . length - 1 ) { if ( c . lastIndex = v , ! ( x = c . exec ( e ) ) ) break ; for ( var b = x . index + ( f && x [ 1 ] ? x [ 1 ] . length : 0 ) , w = x . index + x [ 0 ] . length , A = y , P = v , O = a . length ; A < O && ( P < w || ! a [ A ] . type && ! a [ A - 1 ] . greedy ) ; ++ A ) ( P += a [ A ] . length ) <= b && ( ++ y , v = P ) ; if ( a [ y ] instanceof L ) continue ; j = A - y , k = e . slice ( v , P ) , x . index -= v } else { c . lastIndex = 0 ; var x = c . exec ( k ) , j = 1 } if ( x ) { f && ( d = x [ 1 ] ? x [ 1 ] . length : 0 ) ; w = ( b = x . index + d ) + ( x = x [ 0 ] . slice ( d ) ) . length ; var N = k . slice ( 0 , b ) , S = k . s
Prism . languages . markup = { comment : /<!--[\s\S]*?-->/ , prolog : /<\?[\s\S]+?\?>/ , doctype : /<!DOCTYPE[\s\S]+?>/i , cdata : /<!\[CDATA\[[\s\S]*?]]>/i , tag : { pattern : /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i , greedy : ! 0 , inside : { tag : { pattern : /^<\/?[^\s>\/]+/i , inside : { punctuation : /^<\/?/ , namespace : /^[^\s>\/:]+:/ } } , "attr-value" : { pattern : /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i , inside : { punctuation : [ /^=/ , { pattern : /^(\s*)["']|["']$/ , lookbehind : ! 0 } ] } } , punctuation : /\/?>/ , "attr-name" : { pattern : /[^\s>\/]+/ , inside : { namespace : /^[^\s>\/:]+:/ } } } } , entity : /&#?[\da-z]{1,8};/i } , Prism . languages . markup . tag . inside [ "attr-value" ] . inside . entity = Prism . languages . markup . entity , 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 i = { } ; i [ a ] = { pattern : RegExp ( "(<__[\\s\\S]*?>)(?:<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\s*|[\\s\\S])*?(?=<\\/__>)" . replace ( /__/g , a ) , "i" ) , lookbehind : ! 0 , greedy : ! 0 , inside : n } , Prism . languages . insertBefore ( "markup" , "cdata" , i ) } } ) , Prism . languages . xml = Prism . languages . extend ( "markup" , { } ) , Prism . languages . html = Prism . languages . markup , Prism . languages . mathml = Prism . languages . markup , Prism . languages . svg = Prism . languages . markup ;
! function ( s ) { var t = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ ; s . languages . css = { comment : /\/\*[\s\S]*?\*\// , atrule : { pattern : /@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/ , inside : { rule : /@[\w-]+/ } } , url : { pattern : RegExp ( "url\\((?:" + t . source + "|[^\n\r()]*)\\)" , "i" ) , inside : { function : /^url/i , punctuation : /^\(|\)$/ } } , selector : RegExp ( "[^{}\\s](?:[^{};\"']|" + t . source + ")*?(?=\\s*\\{)" ) , string : { pattern : t , greedy : ! 0 } , property : /[-_a-z\xA0-\uFFFF][-\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 e = s . languages . markup ; e && ( e . tag . addInlined ( "style" , "css" ) , s . languages . insertBefore ( "inside" , "attr-value" , { "style-attr" : { pattern : /\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i , inside : { "attr-name" : { pattern : /^\s*style/i , inside : e . tag . inside } , punctuation : /^\s*=\s*['"]|['"]\s*$/ , "attr-value" : { pattern : /.+/i , inside : s . languages . css } } , alias : "language-css" } } , e . tag ) ) } ( Prism ) ;
Prism . languages . clike = { comment : [ { pattern : /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/ , lookbehind : ! 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+)|(?:catch\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])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/ , lookbehind : ! 0 } ] , keyword : [ { pattern : /((?:^|})\s*)(?:catch|finally)\b/ , lookbehind : ! 0 } , { pattern : /(^|[^.])\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|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)\b/ , lookbehind : ! 0 } ] , 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)?)+)?/ , function : /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/ , 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])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/ , lookbehind : ! 0 , greedy : ! 0 } , "function-variable" : { pattern : /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/ , alias : "function" } , parameter : [ { pattern : /(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/ , lookbehind : ! 0 , inside : Prism . languages . javascript } , { pattern : /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i , inside : Prism . languages . javascript } , { pattern : /(\(\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]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\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 . c = Prism . languages . extend ( "clike" , { "class-name" : { pattern : /(\b(?:enum|struct)\s+)\w+/ , lookbehind : ! 0 } , keyword : /\b(?:_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/ , operator : />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/ , number : /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i } ) , Prism . languages . insertBefore ( "c" , "string" , { macro : { pattern : /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im , lookbehind : ! 0 , alias : "property" , inside : { string : { pattern : /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/ , lookbehind : ! 0 } , directive : { pattern : /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/ , lookbehind : ! 0 , alias : "keyword" } } } , 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 ;
Prism . languages . csharp = Prism . languages . extend ( "clike" , { keyword : /\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/ , string : [ { pattern : /@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/ , greedy : ! 0 } , { pattern : /("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/ , greedy : ! 0 } ] , "class-name" : [ { pattern : /\b[A-Z]\w*(?:\.\w+)*\b(?=\s+\w+)/ , inside : { punctuation : /\./ } } , { pattern : /(\[)[A-Z]\w*(?:\.\w+)*\b/ , lookbehind : ! 0 , inside : { punctuation : /\./ } } , { pattern : /(\b(?:class|interface)\s+[A-Z]\w*(?:\.\w+)*\s*:\s*)[A-Z]\w*(?:\.\w+)*\b/ , lookbehind : ! 0 , inside : { punctuation : /\./ } } , { pattern : /((?:\b(?:class|interface|new)\s+)|(?:catch\s+\())[A-Z]\w*(?:\.\w+)*\b/ , lookbehind : ! 0 , inside : { punctuation : /\./ } } ] , number : /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i , operator : />>=?|<<=?|[-=]>|([-+&|?])\1|~|[-+*/%&|^!=<>]=?/ , punctuation : /\?\.?|::|[{}[\];(),.:]/ } ) , Prism . languages . insertBefore ( "csharp" , "class-name" , { "generic-method" : { pattern : /\w+\s*<[^>\r\n]+?>\s*(?=\()/ , inside : { function : /^\w+/ , "class-name" : { pattern : /\b[A-Z]\w*(?:\.\w+)*\b/ , inside : { punctuation : /\./ } } , keyword : Prism . languages . csharp . keyword , 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" } } } } ) , Prism . languages . dotnet = Prism . languages . cs = Prism . languages . csharp ;
! 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 = { 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*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\2/ , lookbehind : ! 0 , greedy : ! 0 , inside : n } , { pattern : /((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\3/ , lookbehind : ! 0 , greedy : ! 0 } , { pattern : /(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/ , greedy : ! 0 , inside : n } ] , environment : { pattern : RegExp ( "\\$?" + t ) , alias : "constant" } , variable : n . variable , function : { pattern : / ( ^ | [ \ s ; | & ] | [ < > ] \ ( ) ( ? : a d d | a p r o p o s | a p t | a p t i t u d e | a p t - c a c h e | a p t - g e t | a s p e l l | a u t o m y s q l b a c k u p | a w k | b a s e n a m e | b a s h | b c | b c o n s o l e | b g | b z i p 2 | c a l | c a t | c f d i s k | c h g r p | c h k c o n f i g | c h m o d | c h o w n | c h r o o t | c k s u m | c l e a r | c m p | c o l u m n | c o m m | c p | c r o n | c r o n t a b | c s p l i t | c u r l | c u t | d a t e | d c | d d | d d r e s c u e | d e b o o t s t r a p | d f | d i f f | d i f f 3 | d i g | d i r | d i r c o l o r s | d i r n a m e | d i r s | d m e s g | d u | e g r e p | e j e c t | e n v | e t h t o o l | e x p a n d | e x p e c t | e x p r | f d f o r m a t | f d i s k | f g | f g r e p | f i l e | f i n d | f m t | f o l d | f o r m a t | f r e e | f s c k | f t p | f u s e r | g a w k | g i t | g p a r t e d | g r e p | g r o u p a d d | g r o u p d e l | g r o u p m o d | g r o u p s | g r u b - m k c o n f i g | g z i p | h a l t | h e a d | h g | h i s t o r y | h o s t | h o s t n a m e | h t o p | i c o n v | i d | i f c o n f i g | i f d o w n | i f u p | i m p o r t | i n s t a l l | i p | j o b s | j o i n | k i l l | k i l l a l l | l e s s | l i n k | l n | l o c a t e | l o g n a m e | l o g r o t a t e | l o o k | l p c | l p r | l p r i n t | l p r i n t d | l p r i n t q | l p r m | l s | l s o f | l y n x | m a k e | m a n | m c | m d a d m | m k c o n f i g | m k d i r | m k e 2 f s | m k f i f o | m k f s | m k i s o f s | m k n o d | m k s w a p | m m v | m o r e | m o s t | m o u n t | m t o o l s | m t r | m u t t | m v | n a n o | n c | n e t s t a t | n i c e | n l | n o h u p | n o t i f y - s e n d | n p m | n s l o o k u p | o p | o p e n | p a r t e d | p a s s w d | p a s t e | p a t h c h k | p i n g | p k i l l | p n p m | p o p d | p r | p r i n t c a p | p r i n t e n v | p s | p u s h d | p v | q u o t a | q u o t a c h e c k | q u o t a c t l | r a m | r a r | r c p | r e b o o t | r e m s y n c | r e n a m e | r e n i c e | r e v | r m | r m d i r | r p m | r s y n c | s c p | s c r e e n | s d i f f | s e d | s e n d m a i l | s e q | s e r v i c e | s f t p | s h | s h e l l c h e c k | s h u f | s h u t d o w n | s l e e p | s l o c a t e | s o r t | s p l i t | s s h | s t a t | s t r a c e |
Prism . languages . cpp = Prism . languages . extend ( "c" , { "class-name" : { pattern : /(\b(?:class|enum|struct)\s+)\w+/ , lookbehind : ! 0 } , keyword : /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|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|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/ , number : { pattern : /(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/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/ } ) , Prism . languages . insertBefore ( "cpp" , "string" , { "raw-string" : { pattern : /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/ , alias : "string" , greedy : ! 0 } } ) ;
Prism . languages . aspnet = Prism . languages . extend ( "markup" , { "page-directive" : { pattern : /<%\s*@.*%>/i , alias : "tag" , inside : { "page-directive" : { pattern : /<%\s*@\s*(?:Assembly|Control|Implements|Import|Master(?:Type)?|OutputCache|Page|PreviousPageType|Reference|Register)?|%>/i , alias : "tag" } , rest : Prism . languages . markup . tag . inside } } , directive : { pattern : /<%.*%>/i , alias : "tag" , inside : { directive : { pattern : /<%\s*?[$=%#:]{0,2}|%>/i , alias : "tag" } , rest : Prism . languages . csharp } } } ) , Prism . languages . aspnet . tag . pattern = /<(?!%)\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i , Prism . languages . insertBefore ( "inside" , "punctuation" , { directive : Prism . languages . aspnet . directive } , Prism . languages . aspnet . tag . inside [ "attr-value" ] ) , Prism . languages . insertBefore ( "aspnet" , "comment" , { "asp-comment" : { pattern : /<%--[\s\S]*?--%>/ , alias : [ "asp" , "comment" ] } } ) , Prism . languages . insertBefore ( "aspnet" , Prism . languages . javascript ? "script" : "tag" , { "asp-script" : { pattern : /(<script(?=.*runat=['"]?server['"]?)[\s\S]*?>)[\s\S]*?(?=<\/script>)/i , lookbehind : ! 0 , alias : [ "asp" , "script" ] , inside : Prism . languages . csharp || { } } } ) ;
2019-01-09 11:02:59 +00:00
! 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" } , rest : 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 ) ;
2019-09-18 11:25:21 +01:00
Prism . languages . clojure = { comment : /;+.*/ , string : /"(?:\\.|[^\\"\r\n])*"/ , operator : /(?:::|[:|'])\b[a-z][\w*+!?-]*\b/i , keyword : { pattern : /([^\w+*'?-])(?:def|if|do|let|\.\.|quote|var|->>|->|fn|loop|recur|throw|try|monitor-enter|\.|new|set!|def\-|defn|defn\-|defmacro|defmulti|defmethod|defstruct|defonce|declare|definline|definterface|defprotocol|==|defrecord|>=|deftype|<=|defproject|ns|\*|\+|\-|\/|<|=|>|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|conj|cons|constantly|cond|if-not|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|deref|difference|disj|dissoc|distinct|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|for|fnseq|frest|gensym|get-proxy-class|get|hash-map|hash-set|identical\?|identity|if-let|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|line-seq|list\*|list|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|time|to-array|to-array-2d|tree-seq|true\?|union|up|update-proxy|val|vals|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[^\w+*'?-])/ , lookbehind : ! 0 } , boolean : /\b(?:true|false|nil)\b/ , number : /\b[0-9A-Fa-f]+\b/ , punctuation : /[{}\[\](),]/ } ;
! function ( e ) { e . languages . ruby = e . languages . extend ( "clike" , { comment : [ /#.*/ , { pattern : /^=begin\s[\s\S]*?^=end/m , greedy : ! 0 } ] , keyword : /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|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 : /%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\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 : /%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/ , greedy : ! 0 , inside : { interpolation : n } } , { pattern : /%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/ , 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 ( 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 ) ;
2019-01-09 11:02:59 +00:00
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 : /#.*/ , punctuation : /---|\.\.\.|[:[\]{}\-,|>?]/ } , Prism . languages . dockerfile = Prism . languages . docker ;
2019-09-18 11:25:21 +01:00
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)?|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 . elixir . string . forEach ( function ( e ) { e . inside = { interpolation : { pattern : /#\{[^}]+\}/ , inside : { delimiter : { pattern : /^#\{|\}$/ , alias : "punctuation" } , rest : Prism . languages . elixir } } } } ) ;
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 . fsharp = Prism . languages . extend ( "clike" , { comment : [ { pattern : /(^|[^\\])\(\*[\s\S]*?\*\)/ , lookbehind : ! 0 } , { pattern : /(^|[^\\:])\/\/.*/ , lookbehind : ! 0 } ] , string : { pattern : /(?:"""[\s\S]*?"""|@"(?:""|[^"])*"|"(?:\\[\s\S]|[^\\"])*")B?|'(?:[^\\']|\\(?:.|\d{3}|x[a-fA-F\d]{2}|u[a-fA-F\d]{4}|U[a-fA-F\d]{8}))'B?/ , greedy : ! 0 } , "class-name" : { pattern : /(\b(?:exception|inherit|interface|new|of|type)\s+|\w\s*:\s*|\s:\??>\s*)[.\w]+\b(?:\s*(?:->|\*)\s*[.\w]+\b)*(?!\s*[:.])/ , lookbehind : ! 0 , inside : { operator : /->|\*/ , punctuation : /\./ } } , keyword : /\b(?:let|return|use|yield)(?:!\B|\b)|\b(abstract|and|as|assert|base|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|global|if|in|inherit|inline|interface|internal|lazy|match|member|module|mutable|namespace|new|not|null|of|open|or|override|private|public|rec|select|static|struct|then|to|true|try|type|upcast|val|void|when|while|with|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|include|method|mixin|object|parallel|process|protected|pure|sealed|tailcall|trait|virtual|volatile)\b/ , number : [ /\b0x[\da-fA-F]+(?:un|lf|LF)?\b/ , /\b0b[01]+(?:y|uy)?\b/ , /(?:\b\d+\.?\d*|\B\.\d+)(?:[fm]|e[+-]?\d+)?\b/i , /\b\d+(?:[IlLsy]|u[lsy]?|UL)?\b/ ] , operator : /([<>~&^])\1\1|([*.:<>&])\2|<-|->|[!=:]=|<?\|{1,3}>?|\??(?:<=|>=|<>|[-+*/%=<>])\??|[!?^&]|~[+~-]|:>|:\?>?/ } ) , Prism . languages . insertBefore ( "fsharp" , "keyword" , { preprocessor : { pattern : /^[^\r\n\S]*#.*/m , alias : "property" , inside : { directive : { pattern : /(\s*#)\b(?:else|endif|if|light|line|nowarn)\b/ , lookbehind : ! 0 , alias : "keyword" } } } } ) , Prism . languages . insertBefore ( "fsharp" , "punctuation" , { "computation-expression" : { pattern : /[_a-z]\w*(?=\s*\{)/i , alias : "keyword" } } ) , Prism . languages . insertBefore ( "fsharp" , "string" , { annotation : { pattern : /\[<.+?>\]/ , inside : { punctuation : /^\[<|>\]$/ , "class-name" : { pattern : /^\w+$|(^|;\s*)[A-Z]\w*(?=\()/ , lookbehind : ! 0 } , "annotation-content" : { pattern : /[\s\S]+/ , inside : Prism . languages . fsharp } } } } ) ;
2019-01-09 11:02:59 +00:00
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 } ;
2019-09-18 11:25:21 +01:00
Prism . languages . go = Prism . languages . extend ( "clike" , { 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/ , 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/ , boolean : /\b(?:_|iota|nil|true|false)\b/ , operator : /[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./ , number : /(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i , string : { pattern : /(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/ , greedy : ! 0 } } ) , delete Prism . languages . go [ "class-name" ] ;
Prism . languages . graphql = { comment : /#.*/ , 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+)[a-zA-Z_]\w*/ , lookbehind : ! 0 } , fragment : { pattern : /(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/ , lookbehind : ! 0 , alias : "function" } , keyword : /\b(?:enum|fragment|implements|input|interface|mutation|on|query|scalar|schema|type|union)\b/ , operator : /[!=|]|\.{3}/ , punctuation : /[!(){}\[\]:=,]/ , constant : /\b(?!ID\b)[A-Z][A-Z_\d]*\b/ } ;
Prism . languages . less = Prism . languages . extend ( "css" , { comment : [ /\/\*[\s\S]*?\*\// , { pattern : /(^|[^\\])\/\/.*/ , lookbehind : ! 0 } ] , atrule : { pattern : /@[\w-]+?(?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};])*?(?=\s*\{)/ , inside : { punctuation : /[:()]/ } } , selector : { pattern : /(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@])*?(?=\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 ) { 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 : /'(?:[^\\']|\\(?:[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]+))'/ , string : { 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]+)|\\\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 : /((?:\r?\n|\r|^)\s*)import\s+(?:qualified\s+)?(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*(?:\s+as\s+(?:[A-Z][_a-zA-Z0-9']*)(?:\.[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 , s = { "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 } , p = { "application/json" : ! 0 , "application/xml" : ! 0 } ; for ( var r in s ) if ( s [ r ] ) { a = a || { } ; var T = p [ r ] ? ( void 0 , n = ( e = r ) . replace ( /^[a-z]+\// , "" ) , "(?:" + e + "|\\w+/(?:[\\w.-]+\\+)+" + n + "(?![+\\w.-]))" ) : r ; a [ r ] = { pattern : RegExp ( "(content-type:\\s*" + T + "[\\s\\S]*?)(?:\\r?\\n|\\r){2}[\\s\\S]*" , "i" ) , lookbehind : ! 0 , inside : { rest : s [ r ] } } } a && t . languages . insertBefore ( "http" , "header-name" , a ) } ( Prism ) ;
! function ( e ) { var t = /\b(?:abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while|var|null|exports|module|open|opens|provides|requires|to|transitive|uses|with)\b/ , a = /\b[A-Z](?:\w*[a-z]\w*)?\b/ ; e . languages . java = e . languages . extend ( "clike" , { "class-name" : [ a , /\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/ ] , keyword : t , function : [ e . languages . clike . function , { pattern : /(\:\:)[a-z_]\w*/ , lookbehind : ! 0 } ] , number : /\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i , operator : { pattern : /(^|[^.])(?:<<=?|>>>?=?|->|([-+&|])\2|[?:~]|[-+*/%&|^!=<>]=?)/m , lookbehind : ! 0 } } ) , e . languages . insertBefore ( "java" , "class-name" , { annotation : { alias : "punctuation" , pattern : /(^|[^.])@\w+/ , lookbehind : ! 0 } , namespace : { pattern : /(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(\.[a-z]\w*)+/ , lookbehind : ! 0 , inside : { punctuation : /\./ } } , generics : { pattern : /<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/ , inside : { "class-name" : a , keyword : t , punctuation : /[<>(),.:]/ , operator : /[?&|]/ } } } ) } ( Prism ) ;
! function ( n ) { n . languages . php = n . languages . extend ( "clike" , { keyword : /\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|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i , boolean : { pattern : /\b(?:false|true)\b/i , alias : "constant" } , constant : [ /\b[A-Z_][A-Z0-9_]*\b/ , /\b(?:null)\b/i ] , comment : { pattern : /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/ , lookbehind : ! 0 } } ) , n . languages . insertBefore ( "php" , "string" , { "shell-comment" : { pattern : /(^|[^\\])#.*/ , lookbehind : ! 0 , alias : "comment" } } ) , n . languages . insertBefore ( "php" , "comment" , { delimiter : { pattern : /\?>$|^<\?(?:php(?=\s)|=)?/i , alias : "important" } } ) , n . languages . insertBefore ( "php" , "keyword" , { variable : /\$+(?:\w+\b|(?={))/i , package : { pattern : /(\\|namespace\s+|use\s+)[\w\\]+/ , lookbehind : ! 0 , inside : { punctuation : /\\/ } } } ) , n . languages . insertBefore ( "php" , "operator" , { property : { pattern : /(->)[\w]+/ , lookbehind : ! 0 } } ) ; var e = { pattern : /{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/ , lookbehind : ! 0 , inside : { rest : n . languages . php } } ; n . languages . insertBefore ( "php" , "string" , { "nowdoc-string" : { pattern : /<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/ , greedy : ! 0 , alias : "string" , inside : { delimiter : { pattern : /^<<<'[^']+'|[a-z_]\w*;$/i , alias : "symbol" , inside : { punctuation : /^<<<'?|[';]$/ } } } } , "heredoc-string" : { pattern : /<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i , greedy : ! 0 , alias : "string" , inside : { delimiter : { pattern : /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i , alias : "symbol" , inside : { punctuation : /^<<<"?|[";]$/ } } , interpolation : e } } , "single-quoted-string" : { pattern : /'(?:\\[\s\S]|[^\\'])*'/ , greedy : ! 0 , alias : "string" } , "double-quoted-string" : { pattern : /"(?:\\[\s\S]|[^\\"])*"/ , greedy : ! 0 , alias : "string" , inside : { interpolation : e } } } ) , delete n . languages . php . string , n . hooks . add ( "before-tokenize" , function ( e ) { if ( /<\?/ . test ( e . code ) ) { n . languages [ "markup-templating" ] . buildPlaceholders ( e , "php" , /<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/gi ) } } ) , n . hooks . add ( "after-tokenize" , function ( e ) { n . languages [ "markup-templating" ] . tokenizePlaceholders ( e , "php" ) } ) } ( Prism ) ;
! function ( d ) { function n ( n , e ) { return n = n . replace ( /<inner>/g , "(?:\\\\.|[^\\\\\\n\r]|(?:\r?\n|\r)(?!\r?\n|\r))" ) , e && ( n = n + "|" + n . replace ( /_/g , "\\*" ) ) , RegExp ( "((?:^|[^\\\\])(?:\\\\{2})*)(?:" + n + ")" ) } var e = "(?:\\\\.|``.+?``|`[^`\r\\n]+`|[^\\\\|\r\\n`])+" , t = "\\|?__(?:\\|__)+\\|?(?:(?:\r?\n|\r)|$)" . replace ( /__/g , e ) , a = "\\|?[ \t]*:?-{3,}:?[ \t]*(?:\\|[ \t]*:?-{3,}:?[ \t]*)+\\|?(?:\r?\n|\r)" ; d . languages . markdown = d . languages . extend ( "markup" , { } ) , d . languages . insertBefore ( "markdown" , "prolog" , { blockquote : { pattern : /^>(?:[\t ]*>)*/m , alias : "punctuation" } , table : { pattern : RegExp ( "^" + t + a + "(?:" + t + ")*" , "m" ) , inside : { "table-data-rows" : { pattern : RegExp ( "^(" + t + a + ")(?:" + t + ")*$" ) , lookbehind : ! 0 , inside : { "table-data" : { pattern : RegExp ( e ) , inside : d . languages . markdown } , punctuation : /\|/ } } , "table-line" : { pattern : RegExp ( "^(" + t + ")" + a + "$" ) , lookbehind : ! 0 , inside : { punctuation : /\||:?-{3,}:?/ } } , "table-header-row" : { pattern : RegExp ( "^" + t + "$" ) , inside : { "table-header" : { pattern : RegExp ( e ) , alias : "important" , inside : d . languages . markdown } , punctuation : /\|/ } } } } , code : [ { pattern : /(^[ \t]*(?:\r?\n|\r))(?: {4}|\t).+(?:(?:\r?\n|\r)(?: {4}|\t).+)*/m , lookbehind : ! 0 , alias : "keyword" } , { pattern : /``.+?``|`[^`\r\n]+`/ , alias : "keyword" } , { pattern : /^```[\s\S]*?^```$/m , greedy : ! 0 , inside : { "code-block" : { pattern : /^(```.*(?:\r?\n|\r))[\s\S]+?(?=(?:\r?\n|\r)^```$)/m , lookbehind : ! 0 } , "code-language" : { pattern : /^(```).+/ , lookbehind : ! 0 } , punctuation : /```/ } } ] , title : [ { pattern : /\S.*(?:\r?\n|\r)(?:==+|--+)(?=[ \t]*$)/m , alias : "important" , inside : { punctuation : /==+$|--+$/ } } , { pattern : /(^\s*)#+.+/m , lookbehind : ! 0 , alias : "important" , inside : { punctuation : /^#+|#+$/ } } ] , hr : { pattern : /(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m , lookbehind : ! 0 , alias : "punctuation" } , list : { pattern : /(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m , lookbehind : ! 0 , alias : "punctuation" } , "url-reference" : { pattern : /!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/ , inside : { variable : { pattern : /^(!?\[)[^\]]+/ , lookbehind : ! 0 } , string : /(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/ , punctuation : /^[\[\]!:]|[<>]/ } , alias : "url" } , bold : { pattern : n ( "__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__" , ! 0 ) , lookbehind : ! 0 , greedy : ! 0 , inside : { content : { pattern : /(^..)[\s\S]+(?=..$)/ , lookbehind : ! 0 , inside : { } } , punctuation : /\*\*|__/ } } , italic : { pattern : n ( "_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_" , ! 0 ) , lookbehind : ! 0 , greedy : ! 0 , inside : { content : { pattern : /(^.)[\s\S]+(?=.$)/ , lookbehind : ! 0 , inside : { } } , punctuation : /[*_]/ } } , strike : { pattern : n ( "(~~?)(?:(?!~)<inner>)+?\\2" , ! 1 ) , lookbehind : ! 0 , greedy : ! 0 , inside : { content : { pattern : /(^~~?)[\s\S]+(?=\1$)/ , lookbehind : ! 0 , inside : { } } , punctuation : /~~?/ } } , url : { pattern : n ( '!?\\[(?:(?!\\])<inner>)+\\](?:\\([^\\s)]+(?:[\t ]+"(?:\\\\.|[^"\\\\])*")?\\)| ?\\[(?:(?!\\])<inner>)+\\])' , ! 1 ) , lookbehind : ! 0 , greedy : ! 0 , inside : { variable : { pattern : /(\[)[^\]]+(?=\]$)/ , lookbehind : ! 0 } , content : { pattern : /(^!?\[)[^\]]+(?=\])/ , lookbehind : ! 0 , inside : { } } , string : { pattern : /"(?:\\.|[^"\\])*"(?=\)$)/ } } } } ) , [ "url" , "bold" , "italic" , "strike" ] . forEach ( function ( e ) { [ "url" , "bold" , "italic" , "strike" ] . forEach ( function ( n ) { e !== n && ( d . languages . markdown [ e ] . inside . content . inside [ n ] = d . languages . markdown [ n ] ) } ) } ) , d . hooks . add ( "after-tokenize" , function ( n ) { "markdown" !== n . language && "md" !== n . language || ! function n ( e ) { if ( e && "string" != typeof e ) for ( var t = 0 , a = e . length ; t < a ; t ++ ) { var i = e [ t ] ; if ( "code" === i . type ) { var r = i . content [ 1 ] , o = i . content [ 3 ] ; if ( r && o && "code-language" === r . type && "code-block" === o . type && "string" == typeof r . content ) { var l = "language-" + r . content . trim ( ) . split ( /\s+/ ) [ 0 ] . toLowerCase ( ) ; o . alias ? "string" == typeof o . alias ? o . alias = [ o . alias , l ] : o . alias . push ( l ) : o . alias = [ l ] } } else n ( i . content ) } } ( n . tokens ) } ) , d . hooks . add ( "wrap" , function ( n ) { if ( "code-block" === n . type ) { for ( var e = "" , t = 0 , a = n . classes . length ; t < a ; t ++ ) { var i = n . classes [ t ] , r = /language-(.+)/ . exec ( i ) ; if ( r ) { e = r [ 1 ] ; break } } var o = d . languages [ e ] ; if ( o ) { var l = n . content . replace ( /</g , "<" ) . replace ( /&/g , "&" ) ; n . content = d . highlight ( l , o , e ) } else if ( e && "none" !== e && d . plugins . autoloader ) { var s = "md-" + ( new Date ) . valueOf ( ) + "-" + Math . floor ( 1e16 * Math . random ( ) ) ; n . attributes . id = s , d . plugins . autoloader . loadLanguages ( e , function ( ) { var n = document . getElementById ( s ) ; n
Prism . languages . json = { property : { pattern : /"(?:\\.|[^\\"\r\n])*"(?=\s*:)/ , greedy : ! 0 } , string : { pattern : /"(?:\\.|[^\\"\r\n])*"(?!\s*:)/ , greedy : ! 0 } , comment : /\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/ , number : /-?\d+\.?\d*(e[+-]?\d+)?/i , punctuation : /[{}[\],]/ , operator : /:/ , boolean : /\b(?:true|false)\b/ , null : { pattern : /\bnull\b/ , alias : "keyword" } } ;
! 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 ) ;
2019-01-09 11:02:59 +00:00
Prism . languages . makefile = { comment : { pattern : /(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/ , lookbehind : ! 0 } , string : { pattern : /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ , greedy : ! 0 } , builtin : /\.[A-Z][^:#=\s]+(?=\s*:(?!=))/ , symbol : { pattern : /^[^:=\r\n]+(?=\s*:(?!=))/m , inside : { variable : /\$+(?:[^(){}:#=\s]+|(?=[({]))/ } } , variable : /\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/ , keyword : [ /-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/ , { pattern : /(\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \t])/ , lookbehind : ! 0 } ] , operator : /(?:::|[?:+!])?=|[|@]/ , punctuation : /[:;(){}]/ } ;
Prism . languages . typescript = Prism . languages . extend ( "javascript" , { keyword : /\b(?:abstract|as|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|var|void|while|with|yield)\b/ , builtin : /\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/ } ) , Prism . languages . ts = Prism . languages . typescript ;
2019-09-18 11:25:21 +01:00
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
Prism . languages . objectivec = Prism . languages . extend ( "c" , { 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/ , string : /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|@"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/ , operator : /-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/ } ) , delete Prism . languages . objectivec [ "class-name" ] ;
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 : /[{}[\];(),:]/ } ;
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|RETURNS?|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|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i , punctuation : /[;[\]()`,.]/ } ;
! function ( e ) { var t = Prism . languages . powershell = { comment : [ { pattern : /(^|[^`])<#[\s\S]*?#>/ , lookbehind : ! 0 } , { pattern : /(^|[^`])#.*/ , lookbehind : ! 0 } ] , string : [ { pattern : /"(?:`[\s\S]|[^`"])*"/ , greedy : ! 0 , inside : { function : { pattern : /(^|[^`])\$\((?:\$\(.*?\)|(?!\$\()[^\r\n)])*\)/ , lookbehind : ! 0 , inside : { } } } } , { pattern : /'(?:[^']|'')*'/ , greedy : ! 0 } ] , namespace : /\[[a-z](?:\[(?:\[[^\]]*]|[^\[\]])*]|[^\[\]])*]/i , boolean : /\$(?:true|false)\b/i , variable : /\$\w+\b/i , function : [ /\b(?:Add-(?:Computer|Content|History|Member|PSSnapin|Type)|Checkpoint-Computer|Clear-(?:Content|EventLog|History|Item|ItemProperty|Variable)|Compare-Object|Complete-Transaction|Connect-PSSession|ConvertFrom-(?:Csv|Json|StringData)|Convert-Path|ConvertTo-(?:Csv|Html|Json|Xml)|Copy-(?:Item|ItemProperty)|Debug-Process|Disable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Disconnect-PSSession|Enable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Enter-PSSession|Exit-PSSession|Export-(?:Alias|Clixml|Console|Csv|FormatData|ModuleMember|PSSession)|ForEach-Object|Format-(?:Custom|List|Table|Wide)|Get-(?:Alias|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Culture|Date|Event|EventLog|EventSubscriber|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|WmiObject)|Group-Object|Import-(?:Alias|Clixml|Csv|LocalizedData|Module|PSSession)|Invoke-(?:Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)|Join-Path|Limit-EventLog|Measure-(?:Command|Object)|Move-(?:Item|ItemProperty)|New-(?:Alias|Event|EventLog|Item|ItemProperty|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy)|Out-(?:Default|File|GridView|Host|Null|Printer|String)|Pop-Location|Push-Location|Read-Host|Receive-(?:Job|PSSession)|Register-(?:EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)|Remove-(?:Computer|Event|EventLog|Item|ItemProperty|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)|Rename-(?:Computer|Item|ItemProperty)|Reset-ComputerMachinePassword|Resolve-Path|Restart-(?:Computer|Service)|Restore-Computer|Resume-(?:Job|Service)|Save-Help|Select-(?:Object|String|Xml)|Send-MailMessage|Set-(?:Alias|Content|Date|Item|ItemProperty|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)|Show-(?:Command|ControlPanelItem|EventLog)|Sort-Object|Split-Path|Start-(?:Job|Process|Service|Sleep|Transaction)|Stop-(?:Computer|Job|Process|Service)|Suspend-(?:Job|Service)|Tee-Object|Test-(?:ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)|Trace-Command|Unblock-File|Undo-Transaction|Unregister-(?:Event|PSSessionConfiguration)|Update-(?:FormatData|Help|List|TypeData)|Use-Transaction|Wait-(?:Event|Job|Process)|Where-Object|Write-(?:Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning))\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 : /[|{}[\];(),.]/ } , o = t . string [ 0 ] . inside ; o . boolean = t . boolean , o . variable = t . variable , o . function . i
Prism . languages . scss = Prism . languages . extend ( "css" , { comment : { pattern : /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/ , lookbehind : ! 0 } , atrule : { pattern : /@[\w-]+(?:\([^()]+\)|[^(])*?(?=\s+[{;])/ , inside : { rule : /@[\w-]+/ } } , url : /(?:[-a-z]+-)?url(?=\()/i , selector : { pattern : /(?=\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)?|for|each|while|import|extend|debug|warn|mixin|include|function|return|content)/i , { pattern : /( +)(?:from|through)(?= )/ , lookbehind : ! 0 } ] } ) , Prism . languages . insertBefore ( "scss" , "important" , { variable : /\$[-\w]+|#\{\$[-\w]+\}/ } ) , Prism . languages . insertBefore ( "scss" , "function" , { 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 ;
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 ;
! 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*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i , i . languages . jsx . tag . inside . tag . pattern = /^<\/?[^\s>\/]*/i , i . languages . jsx . tag . inside [ "attr-value" ] . pattern = /=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\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 : /\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/ , 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 ) ;
Prism . languages . rust = { comment : [ { pattern : /(^|[^\\])\/\*[\s\S]*?\*\// , lookbehind : ! 0 } , { pattern : /(^|[^\\:])\/\/.*/ , lookbehind : ! 0 } ] , string : [ { pattern : /b?r(#*)"(?:\\.|(?!"\1)[^\\\r\n])*"\1/ , greedy : ! 0 } , { pattern : /b?"(?:\\.|[^\\\r\n"])*"/ , greedy : ! 0 } ] , char : { pattern : /b?'(?:\\(?:x[0-7][\da-fA-F]|u{(?:[\da-fA-F]_*){1,6}|.)|[^\\\r\n\t'])'/ , alias : "string" } , "lifetime-annotation" : { pattern : /'[^\s>']+/ , alias : "symbol" } , keyword : /\b(?:abstract|alignof|as|async|await|be|box|break|const|continue|crate|do|dyn|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|match|mod|move|mut|offsetof|once|override|priv|pub|pure|ref|return|sizeof|static|self|Self|struct|super|true|trait|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/ , attribute : { pattern : /#!?\[.+?\]/ , greedy : ! 0 , alias : "attr-name" } , function : [ /\w+(?=\s*\()/ , /\w+!(?=\s*\(|\[)/ ] , "macro-rules" : { pattern : /\w+!/ , alias : "function" } , 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)?|f32|f64))?\b/ , "closure-params" : { pattern : /\|[^|]*\|(?=\s*[{-])/ , inside : { punctuation : /[|:,]/ , operator : /[&*]/ } } , punctuation : /->|\.\.=|\.{1,3}|::|[{}[\];(),:]/ , operator : /[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/ } ;
! function ( E ) { var A = E . languages . plsql = E . languages . extend ( "sql" , { comment : [ /\/\*[\s\S]*?\*\// , /--.*/ ] } ) , T = A . keyword ; Array . isArray ( T ) || ( T = A . keyword = [ T ] ) , T . unshift ( /\b(?:ACCESS|AGENT|AGGREGATE|ARRAY|ARROW|AT|ATTRIBUTE|AUDIT|AUTHID|BFILE_BASE|BLOB_BASE|BLOCK|BODY|BOTH|BOUND|BYTE|CALLING|CHAR_BASE|CHARSET(?:FORM|ID)|CLOB_BASE|COLAUTH|COLLECT|CLUSTERS?|COMPILED|COMPRESS|CONSTANT|CONSTRUCTOR|CONTEXT|CRASH|CUSTOMDATUM|DANGLING|DATE_BASE|DEFINE|DETERMINISTIC|DURATION|ELEMENT|EMPTY|EXCEPTIONS?|EXCLUSIVE|EXTERNAL|FINAL|FORALL|FORM|FOUND|GENERAL|HEAP|HIDDEN|IDENTIFIED|IMMEDIATE|INCLUDING|INCREMENT|INDICATOR|INDEXES|INDICES|INFINITE|INITIAL|ISOPEN|INSTANTIABLE|INTERFACE|INVALIDATE|JAVA|LARGE|LEADING|LENGTH|LIBRARY|LIKE[24C]|LIMITED|LONG|LOOP|MAP|MAXEXTENTS|MAXLEN|MEMBER|MINUS|MLSLABEL|MULTISET|NAME|NAN|NATIVE|NEW|NOAUDIT|NOCOMPRESS|NOCOPY|NOTFOUND|NOWAIT|NUMBER(?:_BASE)?|OBJECT|OCI(?:COLL|DATE|DATETIME|DURATION|INTERVAL|LOBLOCATOR|NUMBER|RAW|REF|REFCURSOR|ROWID|STRING|TYPE)|OFFLINE|ONLINE|ONLY|OPAQUE|OPERATOR|ORACLE|ORADATA|ORGANIZATION|ORL(?:ANY|VARY)|OTHERS|OVERLAPS|OVERRIDING|PACKAGE|PARALLEL_ENABLE|PARAMETERS?|PASCAL|PCTFREE|PIPE(?:LINED)?|PRAGMA|PRIOR|PRIVATE|RAISE|RANGE|RAW|RECORD|REF|REFERENCE|REM|REMAINDER|RESULT|RESOURCE|RETURNING|REVERSE|ROW(?:ID|NUM|TYPE)|SAMPLE|SB[124]|SEGMENT|SELF|SEPARATE|SEQUENCE|SHORT|SIZE(?:_T)?|SPARSE|SQL(?:CODE|DATA|NAME|STATE)|STANDARD|STATIC|STDDEV|STORED|STRING|STRUCT|STYLE|SUBMULTISET|SUBPARTITION|SUBSTITUTABLE|SUBTYPE|SUCCESSFUL|SYNONYM|SYSDATE|TABAUTH|TDO|THE|TIMEZONE_(?:ABBR|HOUR|MINUTE|REGION)|TRAILING|TRANSAC(?:TIONAL)?|TRUSTED|UB[124]|UID|UNDER|UNTRUSTED|VALIDATE|VALIST|VARCHAR2|VARIABLE|VARIANCE|VARRAY|VIEWS|VOID|WHENEVER|WRAPPED|ZONE)\b/i ) ; var R = A . operator ; Array . isArray ( R ) || ( R = A . operator = [ R ] ) , R . unshift ( /:=/ ) } ( Prism ) ;
2019-01-09 11:02:59 +00:00
Prism . languages . swift = Prism . languages . extend ( "clike" , { string : { pattern : /("|')(\\(?:\((?:[^()]|\([^)]+\))+\)|\r\n|[\s\S])|(?!\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 ;
2019-09-18 11:25:21 +01:00
Prism . languages . yaml = { scalar : { pattern : /([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/ , lookbehind : ! 0 , alias : "string" } , comment : /#.*/ , key : { pattern : /(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/ , lookbehind : ! 0 , alias : "atrule" } , directive : { pattern : /(^[ \t]*)%.+/m , lookbehind : ! 0 , alias : "important" } , datetime : { pattern : /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\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*)?)?)(?=[ \t]*(?:$|,|]|}))/m , lookbehind : ! 0 , alias : "number" } , boolean : { pattern : /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im , lookbehind : ! 0 , alias : "important" } , null : { pattern : /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im , lookbehind : ! 0 , alias : "important" } , string : { pattern : /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}|\s*#))/m , lookbehind : ! 0 , greedy : ! 0 } , number : { pattern : /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im , lookbehind : ! 0 } , tag : /![^\s]+/ , important : /[&*][\w]+/ , punctuation : /---|[:[\]{}\-,|>?]|\.\.\./ } , Prism . languages . yml = Prism . languages . yaml ;
! function ( e ) { var d = "(?:[\\w-]+|'[^'\n\r]*'|\"(?:\\.|[^\\\\\"\r\n])*\")" ; Prism . languages . toml = { comment : { pattern : /#.*/ , greedy : ! 0 } , table : { pattern : RegExp ( "(^\\s*\\[\\s*(?:\\[\\s*)?)" + d + "(?:\\s*\\.\\s*" + d + ")*(?=\\s*\\])" , "m" ) , lookbehind : ! 0 , greedy : ! 0 , alias : "class-name" } , key : { pattern : RegExp ( "(^\\s*|[{,]\\s*)" + d + "(?:\\s*\\.\\s*" + d + ")*(?=\\s*=)" , "m" ) , lookbehind : ! 0 , greedy : ! 0 , alias : "property" } , string : { pattern : /"""(?:\\[\s\S]|[^\\])*?"""|'''[\s\S]*?'''|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*"/ , greedy : ! 0 } , date : [ { pattern : /\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?/i , alias : "number" } , { pattern : /\d{2}:\d{2}:\d{2}(?:\.\d+)?/i , alias : "number" } ] , number : /(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?(?:inf|nan)\b/ , boolean : /\b(?:true|false)\b/ , punctuation : /[.,=[\]{}]/ } } ( ) ;
! function ( n ) { var e = { pattern : /\\[\\(){}[\]^$+*?|.]/ , alias : "escape" } , a = /\\(?: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}|.)/ , r = /\\[wsd]|\.|\\p{[^{}]+}/i , i = "(?:[^\\\\-]|" + a . source + ")" , s = RegExp ( i + "-" + i ) , t = { pattern : /(<|')[^<>']+(?=[>']$)/ , lookbehind : ! 0 , alias : "variable" } , c = [ /\\(?![123][0-7]{2})[1-9]/ , { pattern : /\\k<[^<>']+>/ , inside : { "group-name" : t } } ] ; n . languages . regex = { charset : { pattern : /((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/ , lookbehind : ! 0 , inside : { "charset-negation" : { pattern : /(^\[)\^/ , lookbehind : ! 0 } , "charset-punctuation" : /^\[|\]$/ , range : { pattern : s , inside : { escape : a , "range-punctuation" : /-/ } } , "special-escape" : e , charclass : r , backreference : c , escape : a } } , "special-escape" : e , charclass : r , backreference : c , anchor : /[$^]|\\[ABbGZz]/ , escape : a , group : [ { pattern : /\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/ , inside : { "group-name" : t } } , /\)/ ] , quantifier : /[+*?]|\{(?:\d+,?\d*)\}/ , alternation : /\|/ } , [ "actionscript" , "coffescript" , "flow" , "javascript" , "typescript" , "vala" ] . forEach ( function ( e ) { var a = n . languages [ e ] ; a && ( a . regex . inside = { "regex-flags" : /[a-z]+$/ , "regex-delimiter" : /^\/|\/$/ , "language-regex" : { pattern : /[\s\S]+/ , inside : n . languages . regex } } ) } ) } ( Prism ) ;
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 ( ) { if ( "undefined" != typeof self && self . Prism && self . document ) { var l = "line-numbers" , c = /\n(?!$)/g , m = function ( e ) { var t = a ( e ) [ "white-space" ] ; if ( "pre-wrap" === t || "pre-line" === t ) { var n = e . querySelector ( "code" ) , r = e . querySelector ( ".line-numbers-rows" ) , s = e . querySelector ( ".line-numbers-sizer" ) , i = n . textContent . split ( c ) ; s || ( ( s = document . createElement ( "span" ) ) . className = "line-numbers-sizer" , n . appendChild ( s ) ) , s . style . display = "block" , i . forEach ( function ( e , t ) { s . textContent = e || "\n" ; var n = s . getBoundingClientRect ( ) . height ; r . children [ t ] . style . height = n + "px" } ) , s . textContent = "" , s . style . display = "none" } } , a = function ( e ) { return e ? window . getComputedStyle ? getComputedStyle ( e ) : e . currentStyle || null : null } ; window . addEventListener ( "resize" , function ( ) { Array . prototype . forEach . call ( document . querySelectorAll ( "pre." + l ) , m ) } ) , Prism . hooks . add ( "complete" , function ( e ) { if ( e . code ) { var t = e . element , n = t . parentNode ; if ( n && /pre/i . test ( n . nodeName ) && ! t . querySelector ( ".line-numbers-rows" ) ) { for ( var r = ! 1 , s = /(?:^|\s)line-numbers(?:\s|$)/ , i = t ; i ; i = i . parentNode ) if ( s . test ( i . className ) ) { r = ! 0 ; break } if ( r ) { t . className = t . className . replace ( s , " " ) , s . test ( n . className ) || ( n . className += " line-numbers" ) ; var l , a = e . code . match ( c ) , o = a ? a . length + 1 : 1 , u = new Array ( o + 1 ) . join ( "<span></span>" ) ; ( l = document . createElement ( "span" ) ) . setAttribute ( "aria-hidden" , "true" ) , l . className = "line-numbers-rows" , l . innerHTML = u , n . hasAttribute ( "data-start" ) && ( n . style . counterReset = "linenumber " + ( parseInt ( n . getAttribute ( "data-start" ) , 10 ) - 1 ) ) , e . element . appendChild ( l ) , m ( n ) , Prism . hooks . run ( "line-numbers" , e ) } } } } ) , Prism . hooks . add ( "line-numbers" , function ( e ) { e . plugins = e . plugins || { } , e . plugins . lineNumbers = ! 0 } ) , Prism . plugins . lineNumbers = { getLine : function ( e , t ) { if ( "PRE" === e . tagName && e . classList . contains ( l ) ) { var n = e . querySelector ( ".line-numbers-rows" ) , r = parseInt ( e . getAttribute ( "data-start" ) , 10 ) || 1 , s = r + ( n . children . length - 1 ) ; t < r && ( t = r ) , s < t && ( t = s ) ; var i = t - r ; return n . children [ i ] } } } } } ( ) ;
! function ( ) { if ( "undefined" != typeof self && self . Prism && self . document ) { var r = [ ] , i = { } , a = function ( ) { } ; Prism . plugins . toolbar = { } ; var t = Prism . plugins . toolbar . registerButton = function ( t , a ) { var e ; e = "function" == typeof a ? a : function ( t ) { var e ; return "function" == typeof a . onClick ? ( ( e = document . createElement ( "button" ) ) . type = "button" , e . addEventListener ( "click" , function ( ) { a . onClick . call ( this , t ) } ) ) : "string" == typeof a . url ? ( e = document . createElement ( "a" ) ) . href = a . url : e = document . createElement ( "span" ) , a . className && e . classList . add ( a . className ) , e . textContent = a . text , e } , t in i ? console . warn ( 'There is a button with the key "' + t + '" registered already.' ) : r . push ( i [ t ] = e ) } , e = Prism . plugins . toolbar . hook = function ( n ) { var t = n . element . parentNode ; if ( t && /pre/i . test ( t . nodeName ) && ! t . parentNode . classList . contains ( "code-toolbar" ) ) { var e = document . createElement ( "div" ) ; e . classList . add ( "code-toolbar" ) , t . parentNode . insertBefore ( e , t ) , e . appendChild ( t ) ; var o = document . createElement ( "div" ) ; o . classList . add ( "toolbar" ) , document . body . hasAttribute ( "data-toolbar-order" ) && ( r = document . body . getAttribute ( "data-toolbar-order" ) . split ( "," ) . map ( function ( t ) { return i [ t ] || a } ) ) , r . forEach ( function ( t ) { var e = t ( n ) ; if ( e ) { var a = document . createElement ( "div" ) ; a . classList . add ( "toolbar-item" ) , a . appendChild ( e ) , o . appendChild ( a ) } } ) , e . appendChild ( o ) } } ; t ( "label" , function ( t ) { var e = t . element . parentNode ; if ( e && /pre/i . test ( e . nodeName ) && e . hasAttribute ( "data-label" ) ) { var a , n , o = e . getAttribute ( "data-label" ) ; try { n = document . querySelector ( "template#" + o ) } catch ( t ) { } return n ? a = n . content : ( e . hasAttribute ( "data-url" ) ? ( a = document . createElement ( "a" ) ) . href = e . getAttribute ( "data-url" ) : a = document . createElement ( "span" ) , a . textContent = o ) , a } } ) , Prism . hooks . add ( "complete" , e ) } } ( ) ;
"undefined" != typeof self && ! self . Prism || "undefined" != typeof global && ! global . Prism || Prism . hooks . add ( "wrap" , function ( e ) { "keyword" === e . type && e . classes . push ( "keyword-" + e . content ) } ) ;
! function ( ) { if ( "undefined" != typeof self && self . Prism && self . document ) if ( Prism . plugins . toolbar ) { var r = { html : "HTML" , xml : "XML" , svg : "SVG" , mathml : "MathML" , css : "CSS" , clike : "C-like" , js : "JavaScript" , abap : "ABAP" , abnf : "Augmented Backus– Naur form" , apacheconf : "Apache Configuration" , apl : "APL" , aql : "AQL" , arff : "ARFF" , asciidoc : "AsciiDoc" , adoc : "AsciiDoc" , asm6502 : "6502 Assembly" , aspnet : "ASP.NET (C#)" , autohotkey : "AutoHotkey" , autoit : "AutoIt" , shell : "Bash" , basic : "BASIC" , bnf : "Backus– Naur form" , rbnf : "Routing Backus– Naur form" , csharp : "C#" , cs : "C#" , dotnet : "C#" , cpp : "C++" , cil : "CIL" , coffee : "CoffeeScript" , cmake : "CMake" , csp : "Content-Security-Policy" , "css-extras" : "CSS Extras" , django : "Django/Jinja2" , jinja2 : "Django/Jinja2" , "dns-zone-file" : "DNS zone file" , "dns-zone" : "DNS zone file" , dockerfile : "Docker" , ebnf : "Extended Backus– Naur form" , ejs : "EJS" , erb : "ERB" , fsharp : "F#" , "firestore-security-rules" : "Firestore security rules" , gcode : "G-code" , gdscript : "GDScript" , gedcom : "GEDCOM" , glsl : "GLSL" , gml : "GameMaker Language" , gamemakerlanguage : "GameMaker Language" , graphql : "GraphQL" , hs : "Haskell" , hcl : "HCL" , http : "HTTP" , hpkp : "HTTP Public-Key-Pins" , hsts : "HTTP Strict-Transport-Security" , ichigojam : "IchigoJam" , inform7 : "Inform 7" , javadoc : "JavaDoc" , javadoclike : "JavaDoc-like" , javastacktrace : "Java stack trace" , jq : "JQ" , jsdoc : "JSDoc" , "js-extras" : "JS Extras" , "js-templates" : "JS Templates" , json : "JSON" , jsonp : "JSONP" , json5 : "JSON5" , latex : "LaTeX" , tex : "TeX" , context : "ConTeXt" , lilypond : "LilyPond" , ly : "LilyPond" , emacs : "Lisp" , elisp : "Lisp" , "emacs-lisp" : "Lisp" , lolcode : "LOLCODE" , md : "Markdown" , "markup-templating" : "Markup templating" , matlab : "MATLAB" , mel : "MEL" , n1ql : "N1QL" , n4js : "N4JS" , n4jsd : "N4JS" , "nand2tetris-hdl" : "Nand To Tetris HDL" , nasm : "NASM" , nginx : "nginx" , nsis : "NSIS" , objectivec : "Objective-C" , ocaml : "OCaml" , opencl : "OpenCL" , parigp : "PARI/GP" , objectpascal : "Object Pascal" , pcaxis : "PC-Axis" , px : "PC-Axis" , php : "PHP" , phpdoc : "PHPDoc" , "php-extras" : "PHP Extras" , plsql : "PL/SQL" , powershell : "PowerShell" , properties : ".properties" , protobuf : "Protocol Buffers" , py : "Python" , q : "Q (kdb+ database)" , jsx : "React JSX" , tsx : "React TSX" , renpy : "Ren'py" , rest : "reST (reStructuredText)" , "robot-framework" : "Robot Framework" , robot : "Robot Framework" , rb : "Ruby" , sas : "SAS" , sass : "Sass (Sass)" , scss : "Sass (Scss)" , "shell-session" : "Shell session" , solidity : "Solidity (Ethereum)" , soy : "Soy (Closure Template)" , sparql : "SPARQL" , rq : "SPARQL" , "splunk-spl" : "Splunk SPL" , sql : "SQL" , tap : "TAP" , toml : "TOML" , tt2 : "Template Toolkit 2" , trig : "TriG" , ts : "TypeScript" , "t4-cs" : "T4 Text Templates (C#)" , t4 : "T4 Text Templates (C#)" , "t4-vb" : "T4 Text Templates (VB)" , "t4-templating" : "T4 templating" , vbnet : "VB.Net" , vhdl : "VHDL" , vim : "vim" , "visual-basic" : "Visual Basic" , vb : "Visual Basic" , wasm : "WebAssembly" , wiki : "Wiki markup" , xeoracube : "XeoraCube" , xojo : "Xojo (REALbasic)" , xquery : "XQuery" , yaml : "YAML" , yml : "YAML" } ; 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." ) } ( ) ;