diff --git a/demo/kitchen-sink/docs/typescript.ts b/demo/kitchen-sink/docs/typescript.ts index 31df9521..2f880d03 100644 --- a/demo/kitchen-sink/docs/typescript.ts +++ b/demo/kitchen-sink/docs/typescript.ts @@ -43,12 +43,30 @@ module Sayings { } } } -var greeter = new Sayings.Greeter("world"); +module Mankala { + export class Features { + public turnContinues = false; + public seedStoredCount = 0; + public capturedCount = 0; + public spaceCaptured = NoSpace; -var button = document.createElement('button') -button.innerText = "Say Hello" -button.onclick = function() { - alert(greeter.greet()) -} + public clear() { + this.turnContinues = false; + this.seedStoredCount = 0; + this.capturedCount = 0; + this.spaceCaptured = NoSpace; + } -document.body.appendChild(button) \ No newline at end of file + public toString() { + var stringBuilder = ""; + if (this.turnContinues) { + stringBuilder += " turn continues,"; + } + stringBuilder += " stores " + this.seedStoredCount; + if (this.capturedCount > 0) { + stringBuilder += " captures " + this.capturedCount + " from space " + this.spaceCaptured; + } + return stringBuilder; + } + } +} \ No newline at end of file diff --git a/lib/ace/mode/typescript_highlight_rules.js b/lib/ace/mode/typescript_highlight_rules.js index 8ac83f1c..692ff537 100644 --- a/lib/ace/mode/typescript_highlight_rules.js +++ b/lib/ace/mode/typescript_highlight_rules.js @@ -50,8 +50,8 @@ var TypeScriptHighlightRules = function() { var tsRules = [ // Match stuff like: module name {...} { - "token": ["keyword.operator.ts", "text", "variable.parameter.function.ts"], - "regex": "\\b(module)(\\s*)([a-zA-Z0-9_?.$][\\w?.$]*)\\s*" + "token": ["keyword.operator.ts", "text", "variable.parameter.function.ts", "text"], + "regex": "\\b(module)(\\s*)([a-zA-Z0-9_?.$][\\w?.$]*)(\\s*\\{)" }, // Match stuff like: super(argument, list) { @@ -61,7 +61,7 @@ var TypeScriptHighlightRules = function() { // Match stuff like: function() {...} { "token": ["entity.name.function.ts","paren.lparen", "paren.rparen"], - "regex": "([a-zA-Z_?.$][\\w?.$]*)(\\()(\\))(?:\\s*\\{)" + "regex": "([a-zA-Z_?.$][\\w?.$]*)(\\()(\\))" }, // Match stuff like: (function: return type) { @@ -70,7 +70,7 @@ var TypeScriptHighlightRules = function() { }, { "token": ["keyword.operator.ts"], - "regex": "(?:\\b(constructor|declare|interface|as|AS)\\b)" + "regex": "(?:\\b(constructor|declare|interface|as|AS|public|private|class|extends|export|super)\\b)" }, { "token": ["storage.type.variable.ts"],