{"size": 2407, "ext": "js", "max_stars_repo_path": "unauthenticated/js/codemirror/mode/smalltalk/smalltalk.js", "max_stars_repo_name": "Sopor/authentic-theme", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "unauthenticated/js/codemirror/mode/smalltalk/smalltalk.js", "max_issues_repo_name": "Sopor/authentic-theme", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "unauthenticated/js/codemirror/mode/smalltalk/smalltalk.js", "max_forks_repo_name": "Sopor/authentic-theme", "max_forks_repo_forks_event_min_datetime": "2021-05-01T15:49:59.000Z", "max_forks_repo_forks_event_max_datetime": "2021-05-01T15:49:59.000Z"}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": 1, "avg_line_length": 2407.0, "max_line_length": 2407, "alphanum_fraction": 0.6489405899}
(function(b){if(typeof exports=="object"&&typeof module=="object"){b(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],b)}else{b(CodeMirror)}}})(function(b){b.defineMode("smalltalk",function(t){var s=/[+\-\/\\*~<>=@%|&?!.,:;^]/;var p=/true|false|nil|self|super|thisContext/;var n=function(d,c){this.next=d;this.parent=c};var u=function(c,e,d){this.name=c;this.context=e;this.eos=d};var m=function(){this.context=new n(q,null);this.expectVariable=true;this.indentation=0;this.userIndentationDelta=0};m.prototype.userIndent=function(c){this.userIndentationDelta=c>0?(c/t.indentUnit-this.indentation):0};var q=function(d,f,e){var g=new u(null,f,false);var c=d.next();if(c==='"'){g=v(d,new n(v,f))}else{if(c==="'"){g=a(d,new n(a,f))}else{if(c==="#"){if(d.peek()==="'"){d.next();g=o(d,new n(o,f))}else{if(d.eatWhile(/[^\s.{}\[\]()]/)){g.name="string-2"}else{g.name="meta"}}}else{if(c==="$"){if(d.next()==="<"){d.eatWhile(/[^\s>]/);d.next()}g.name="string-2"}else{if(c==="|"&&e.expectVariable){g.context=new n(r,f)}else{if(/[\[\]{}()]/.test(c)){g.name="bracket";g.eos=/[\[{(]/.test(c);if(c==="["){e.indentation++}else{if(c==="]"){e.indentation=Math.max(0,e.indentation-1)}}}else{if(s.test(c)){d.eatWhile(s);g.name="operator";g.eos=c!==";"}else{if(/\d/.test(c)){d.eatWhile(/[\w\d]/);g.name="number"}else{if(/[\w_]/.test(c)){d.eatWhile(/[\w\d_]/);g.name=e.expectVariable?(p.test(d.current())?"keyword":"variable"):null}else{g.eos=e.expectVariable}}}}}}}}}return g};var v=function(d,c){d.eatWhile(/[^"]/);return new u("comment",d.eat('"')?c.parent:c,true)};var a=function(d,c){d.eatWhile(/[^']/);return new u("string",d.eat("'")?c.parent:c,false)};var o=function(d,c){d.eatWhile(/[^']/);return new u("string-2",d.eat("'")?c.parent:c,false)};var r=function(d,e){var f=new u(null,e,false);var c=d.next();if(c==="|"){f.context=e.parent;f.eos=true}else{d.eatWhile(/[^|]/);f.name="variable"}return f};return{startState:function(){return new m},token:function(d,e){e.userIndent(d.indentation());if(d.eatSpace()){return null}var c=e.context.next(d,e.context,e);e.context=c.context;e.expectVariable=c.eos;return c.name},blankLine:function(c){c.userIndent(0)},indent:function(d,c){var e=d.context.next===q&&c&&c.charAt(0)==="]"?-1:d.userIndentationDelta;return(d.indentation+e)*t.indentUnit},electricChars:"]"}});b.defineMIME("text/x-stsrc",{name:"smalltalk"})});