--- /dev/null
+editAreaLoader.load_syntax["js"] = {\r
+ 'COMMENT_SINGLE' : {1 : '//'}\r
+ ,'COMMENT_MULTI' : {'/*' : '*/'}\r
+ ,'QUOTEMARKS' : {1: "'", 2: '"'}\r
+ ,'KEYWORD_CASE_SENSITIVE' : false\r
+ ,'KEYWORDS' : {\r
+ 'statements' : [\r
+ 'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do',\r
+ 'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item',\r
+ 'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void',\r
+ 'while', 'write', 'with'\r
+ ]\r
+ ,'keywords' : [\r
+ 'class', 'const', 'default', 'debugger', 'export', 'extends', 'false',\r
+ 'function', 'import', 'namespace', 'new', 'null', 'package', 'private',\r
+ 'protected', 'public', 'super', 'true', 'use', 'var', 'window', 'document', \r
+ // the list below must be sorted and checked (if it is a keywords or a function and if it is not present twice\r
+ 'Link ', 'outerHeight ', 'Anchor', 'FileUpload', \r
+ 'location', 'outerWidth', 'Select', 'Area', 'find', 'Location', 'Packages', 'self', \r
+ 'arguments', 'locationbar', 'pageXoffset', 'Form', \r
+ 'Math', 'pageYoffset', 'setTimeout', 'assign', 'Frame', 'menubar', 'parent', 'status', \r
+ 'blur', 'frames', 'MimeType', 'parseFloat', 'statusbar', 'Boolean', 'Function', 'moveBy', \r
+ 'parseInt', 'stop', 'Button', 'getClass', 'moveTo', 'Password', 'String', 'callee', 'Hidden', \r
+ 'name', 'personalbar', 'Submit', 'caller', 'history', 'NaN', 'Plugin', 'sun', 'captureEvents', \r
+ 'History', 'navigate', 'print', 'taint', 'Checkbox', 'home', 'navigator', 'prompt', 'Text', \r
+ 'Image', 'Navigator', 'prototype', 'Textarea', 'clearTimeout', 'Infinity', \r
+ 'netscape', 'Radio', 'toolbar', 'close', 'innerHeight', 'Number', 'ref', 'top', 'closed', \r
+ 'innerWidth', 'Object', 'RegExp', 'toString', 'confirm', 'isFinite', 'onBlur', 'releaseEvents', \r
+ 'unescape', 'constructor', 'isNan', 'onError', 'Reset', 'untaint', 'Date', 'java', 'onFocus', \r
+ 'resizeBy', 'unwatch', 'defaultStatus', 'JavaArray', 'onLoad', 'resizeTo', 'valueOf', 'document', \r
+ 'JavaClass', 'onUnload', 'routeEvent', 'watch', 'Document', 'JavaObject', 'open', 'scroll', 'window', \r
+ 'Element', 'JavaPackage', 'opener', 'scrollbars', 'Window', 'escape', 'length', 'Option', 'scrollBy' \r
+ ]\r
+ ,'functions' : [\r
+ // common functions for Window object\r
+ 'alert', 'Array', 'back', 'blur', 'clearInterval', 'close', 'confirm', 'eval ', 'focus', 'forward', 'home',\r
+ 'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove',\r
+ 'onresize', 'onunload', 'open', 'print', 'prompt', 'scroll', 'scrollTo', 'setInterval', 'status',\r
+ 'stop' \r
+ ]\r
+ }\r
+ ,'OPERATORS' :[\r
+ '+', '-', '/', '*', '=', '<', '>', '%', '!'\r
+ ]\r
+ ,'DELIMITERS' :[\r
+ '(', ')', '[', ']', '{', '}'\r
+ ]\r
+ ,'STYLES' : {\r
+ 'COMMENTS': 'color: #AAAAAA;'\r
+ ,'QUOTESMARKS': 'color: #6381F8;'\r
+ ,'KEYWORDS' : {\r
+ 'statements' : 'color: #60CA00;'\r
+ ,'keywords' : 'color: #48BDDF;'\r
+ ,'functions' : 'color: #2B60FF;'\r
+ }\r
+ ,'OPERATORS' : 'color: #FF00FF;'\r
+ ,'DELIMITERS' : 'color: #0038E1;'\r
+ \r
+ }\r
+ ,'AUTO_COMPLETION' : {\r
+ "default": { // the name of this definition group. It's posisble to have different rules inside the same definition file\r
+ "REGEXP": { "before_word": "[^a-zA-Z0-9_]|^" // \\s|\\.|\r
+ ,"possible_words_letters": "[a-zA-Z0-9_]+"\r
+ ,"letter_after_word_must_match": "[^a-zA-Z0-9_]|$"\r
+ ,"prefix_separator": "\\."\r
+ }\r
+ ,"CASE_SENSITIVE": true\r
+ ,"MAX_TEXT_LENGTH": 100 // the maximum length of the text being analyzed before the cursor position\r
+ ,"KEYWORDS": {\r
+ '': [ // the prefix of thoses items\r
+ /**\r
+ * 0 : the keyword the user is typing\r
+ * 1 : (optionnal) the string inserted in code ("{@}" being the new position of the cursor, "§" beeing the equivalent to the value the typed string indicated if the previous )\r
+ * If empty the keyword will be displayed\r
+ * 2 : (optionnal) the text that appear in the suggestion box (if empty, the string to insert will be displayed)\r
+ */\r
+ ['Array', '§()', '']\r
+ ,['alert', '§({@})', 'alert(String message)']\r
+ ,['document']\r
+ ,['window']\r
+ ]\r
+ ,'window' : [\r
+ ['location']\r
+ ,['document']\r
+ ,['scrollTo', 'scrollTo({@})', 'scrollTo(Int x,Int y)']\r
+ ]\r
+ ,'location' : [\r
+ ['href']\r
+ ]\r
+ }\r
+ }\r
+ }\r
+};\r