You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
3.9 KiB
1 line
3.9 KiB
"use strict";(self.webpackChunkjupyter_web=self.webpackChunkjupyter_web||[]).push([[7401],{47401:($,h,k)=>{k.r(h),k.d(h,{coffeeScript:()=>Z});var t="error";function l(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var w=/^(?:->|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/,a=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,g=/^[_A-Za-z$][_A-Za-z$0-9]*/,b=/^@[_A-Za-z$][_A-Za-z$0-9]*/,z=l(["and","or","not","is","isnt","in","instanceof","typeof"]),p=["for","while","loop","if","unless","else","switch","try","catch","finally","class"],A=l(p.concat(["break","by","continue","debugger","delete","do","in","of","new","return","then","this","@","throw","when","until","extends"]));p=l(p);var S=/^('{3}|\"{3}|['\"])/,C=/^(\/{3}|\/)/,R=l(["Infinity","NaN","undefined","null","true","false","on","off","yes","no"]);function u(e,n){if(e.sol()){null===n.scope.align&&(n.scope.align=!1);var i=n.scope.offset;if(e.eatSpace()){var f=e.indentation();return f>i&&"coffee"==n.scope.type?"indent":f<i?"dedent":null}i>0&&v(e,n)}if(e.eatSpace())return null;var r=e.peek();if(e.match("####"))return e.skipToEnd(),"comment";if(e.match("###"))return n.tokenize=_,n.tokenize(e,n);if("#"===r)return e.skipToEnd(),"comment";if(e.match(/^-?[0-9\.]/,!1)){var c=!1;if(e.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)&&(c=!0),e.match(/^-?\d+\.\d*/)&&(c=!0),e.match(/^-?\.\d+/)&&(c=!0),c)return"."==e.peek()&&e.backUp(1),"number";var o=!1;if(e.match(/^-?0x[0-9a-f]+/i)&&(o=!0),e.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)&&(o=!0),e.match(/^-?0(?![\dx])/i)&&(o=!0),o)return"number"}if(e.match(S))return n.tokenize=y(e.current(),!1,"string"),n.tokenize(e,n);if(e.match(C)){if("/"!=e.current()||e.match(/^.*\//,!1))return n.tokenize=y(e.current(),!0,"string.special"),n.tokenize(e,n);e.backUp(1)}return e.match(w)||e.match(z)?"operator":e.match(a)?"punctuation":e.match(R)?"atom":e.match(b)||n.prop&&e.match(g)?"property":e.match(A)?"keyword":e.match(g)?"variable":(e.next(),t)}function y(e,n,i){return function(f,r){for(;!f.eol();)if(f.eatWhile(/[^'"\/\\]/),f.eat("\\")){if(f.next(),n&&f.eol())return i}else{if(f.match(e))return r.tokenize=u,i;f.eat(/['"\/]/)}return n&&(r.tokenize=u),i}}function _(e,n){for(;!e.eol();){if(e.eatWhile(/[^#]/),e.match("###")){n.tokenize=u;break}e.eatWhile("#")}return"comment"}function d(e,n,i="coffee"){for(var f=0,r=!1,c=null,o=n.scope;o;o=o.prev)if("coffee"===o.type||"}"==o.type){f=o.offset+e.indentUnit;break}"coffee"!==i?(r=null,c=e.column()+e.current().length):n.scope.align&&(n.scope.align=!1),n.scope={offset:f,type:i,prev:n.scope,align:r,alignOffset:c}}function v(e,n){if(n.scope.prev){if("coffee"===n.scope.type){for(var i=e.indentation(),f=!1,r=n.scope;r;r=r.prev)if(i===r.offset){f=!0;break}if(!f)return!0;for(;n.scope.prev&&n.scope.offset!==i;)n.scope=n.scope.prev;return!1}return n.scope=n.scope.prev,!1}}const Z={name:"coffeescript",startState:function(){return{tokenize:u,scope:{offset:0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(e,n){var i=null===n.scope.align&&n.scope;i&&e.sol()&&(i.align=!1);var f=function E(e,n){var i=n.tokenize(e,n),f=e.current();"return"===f&&(n.dedent=!0),(("->"===f||"=>"===f)&&e.eol()||"indent"===i)&&d(e,n);var r="[({".indexOf(f);if(-1!==r&&d(e,n,"])}".slice(r,r+1)),p.exec(f)&&d(e,n),"then"==f&&v(e,n),"dedent"===i&&v(e,n))return t;if(-1!==(r="])}".indexOf(f))){for(;"coffee"==n.scope.type&&n.scope.prev;)n.scope=n.scope.prev;n.scope.type==f&&(n.scope=n.scope.prev)}return n.dedent&&e.eol()&&("coffee"==n.scope.type&&n.scope.prev&&(n.scope=n.scope.prev),n.dedent=!1),"indent"==i||"dedent"==i?null:i}(e,n);return f&&"comment"!=f&&(i&&(i.align=!0),n.prop="punctuation"==f&&"."==e.current()),f},indent:function(e,n){if(e.tokenize!=u)return 0;var i=e.scope,f=n&&"])}".indexOf(n.charAt(0))>-1;if(f)for(;"coffee"==i.type&&i.prev;)i=i.prev;var r=f&&i.type===n.charAt(0);return i.align?i.alignOffset-(r?1:0):(r?i.prev:i).offset},languageData:{commentTokens:{line:"#"}}}}}]); |