comment JavaScript Syntax: version 2.0 fileTypes js htc foldingStartMarker ^.*\bfunction\s*(\w+\s*)?\([^\)]*\)(\s*\{[^\}]*)?\s*$ foldingStopMarker ^\s*\} keyEquivalent ^~J name JavaScript patterns captures 1 name storage.type.function.js 2 name entity.name.function.js 3 name variable.parameter.function.js match \b(function)\s+([a-zA-Z_$]\w*)?\s*\((.*?)\) name meta.function.js captures 1 name entity.name.function.js 2 name storage.type.function.js 3 name variable.parameter.function.js comment match stuff like: foobar: function() { … } match \b([a-zA-Z_?\.$]+\w*)\s*:\s+\b(function)?\s*\((.*?)\) name meta.function.js captures 1 name entity.name.function.js 2 name storage.type.function.js 3 name variable.parameter.function.js comment match stuff like: Sound.prototype.play = function() { … } match \b([a-zA-Z_?\.$]+\w*)\s+=\s+\b(function)?\s*\((.*?)\) name meta.function.js match \b((0(x|X)[0-9a-fA-F]+)|([0-9]+(\.[0-9]+)?))\b name constant.numeric.js begin ' captures 0 name string.quoted.single.brace.js contentName string.quoted.single.js end ' patterns match \\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|.) name constant.character.escape.js begin " captures 0 name string.quoted.double.brace.js contentName string.quoted.double.js end " patterns match \\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|.) name constant.character.escape.js begin /\* captures 0 name meta.brace.comment.block.js end \*/ name comment.block.js match //.*$\n? name comment.line.double-slash.js match (<!--|-->) name comment.block.html.js match \b(boolean|byte|char|class|double|enum|float|function|int|interface|long|short|var|void)\b name storage.type.js match \b(const|export|extends|final|implements|native|private|protected|public|static|synchronized|throws|transient|volatile)\b name storage.modifier.js match \b(break|case|catch|continue|default|do|else|finally|for|goto|if|import|package|return|switch|throw|try|while)\b name keyword.control.js match \b(delete|in|instanceof|new|typeof|with)\b name keyword.operator.js match \b(false|null|true)\b name constant.language.js match \b(super|this)\b name variable.language.js match \b(debugger)\b name keyword.other.js match \b(Anchor|Applet|Area|Array|Boolean|Button|Checkbox|Date|document|event|FileUpload|Form|Frame|Function|Hidden|History|Image|JavaArray|JavaClass|JavaObject|JavaPackage|java|Layer|Link|Location|Math|MimeType|Number|navigator|netscape|Object|Option|Packages|Password|Plugin|Radio|RegExp|Reset|Select|String|Style|Submit|screen|sun|Text|Textarea|window|XMLHttpRequest)\b name support.class.js match \b(abort|abs|acos|alert|anchor|apply|asin|atan|atan2|atob|attachEvent|back|big|blink|bold|borderWidths|btoa|call|captureEvents|ceil|charAt|charCodeAt|clear|clearInterval|clearTimeout|compile|concat|confirm|contextual|cos|createEventObject|createPopup|createStyleSheet|detachEvent|disableExternalCapture|dump|elementFromPoint|enableExternalCapture|escape|eval|exec|execCommand|execScript|exp|fileCreatedDate|fileModifiedDate|fileSize|fileUpdatedDate|find|fixed|floor|fontcolor|fontsize|fromCharCode|forward|getAllResponseHeaders|getAttention|getDate|getDay|getFullYear|getHours|getMilliseconds|getMinutes|getMonth|getResponseHeader|getSeconds|getSelection|getTime|getTimezoneOffset|getUTCDate|getUTCDay|getUTCFullYear|getUTCHours|getUTCMilliseconds|getUTCMinutes|getUTCMonth|getUTCSeconds|getYear|go|handleEvent|home|indexOf|isFinite|isNaN|italics|javaEnabled|join|lastIndexOf|link|load|log|margins|match|max|mergeAttributes|min|moveAbove|moveBelow|moveBy|moveTo|moveToAbsolute|navigate|paddings|parse|parseFloat|parseInt|plugins.refresh|pop|pow|preference|print|prompt|push|queryCommandEnabled|queryCommandIndeterm|queryCommandState|queryCommandValue|random|recalc|releaseCapture|releaseEvents|reload|replace|resizeBy|resizeTo|returnValue|reverse|round|routeEvents|savePreferences|scroll|scrollBy|scrollByLines|scrollByPages|scrollTo|scrollX|scrollY|search|send|setDate|setFullYear|setActive|setCursor|setHotKeys|setHours|setInterval|setMilliseconds|setMinutes|setMonth|setResizable|setRequestHeader|setSeconds|setTime|setTimeout|setUTCDate|setUTCFullYear|setUTCHours|setUTCMilliseconds|setUTCMinutes|setUTCMonth|setUTCSeconds|setYear|setZOptions|shift|showHelp|showModalDialog|showModelessDialog|sidebar|sin|signText|sizeToContent|slice|small|sort|splice|split|sqrt|strike|stop|sub|substr|substring|sup|taint|taintEnabled|tan|test|toGMTString|toLocaleString|toLowerCase|toSource|toString|toUpperCase|toUTCString|UTC|unescape|unshift|untaint|updateCommands|unwatch|valueOf|watch)\b(?=\() name support.function.js match \b(add|appendChild|appendData|blur|cloneNode|close|click|createAttribute|createCaption|createCDATASection|createComment|createDocumentFragment|createElement|createEntityReference|createTextNode|createTFoot|createTHead|createProcessingInstruction|deleteCaption|deleteCell|deleteData|deleteRow|deleteTFoot|deleteTHead|focus|getElementById|getElementsByName|getElementsByTagName|getAttributeNode|getAttribute|getNamedItem|insertBefore|insertCell|insertData|insertRow|item|hasChildNodes|hasFeature|namedItem|open|remove|removeAttributeNode|removeAttribute|removeChild|removeNamedItem|replaceChild|replaceData|reset|select|setAttributeNode|setAttribute|setNamedItem|splitText|submit|substringData|tabIndex|write|writeln)\b(?=\() name support.function.dom.js match (?<=\.)(_content|above|aLinkcolor|all|appCodeName|appCore|appMinorVersion|appName|appVersion|arguments|arity|availHeight|availLeft|availTop|availWidth|backgroundColor|backgroundImage|below|borderBottomWidth|borderColor|borderLeftWidth|borderRightWidth|borderStyle|borderTopWidth|bottom|bufferDepth|callee|caller|characterSet|classes|clientInformation|clipboardData|clip|closed|colorDepth|complete|components|constructor|controllers|cookieEnabled|cpuClass|crypto|current|defaultCharset|defaultChecked|defaultStatus|defaultView|description|dialogArguments|dialogHeight|dialogLeft|dialogTop|dialogWidth|directories|display|E|embeds|enabledPlugin|encoding|expando|external|fgColor|filename|fontFamily|fontSize|fontWeight|formName|frameElement|frames|global|hasFocus|hash|history|hostname|host|ids|ignoreCase|input|innerHeight|innerWidth|LN10|LN2|LOG10E|LOG2E|language|lastIndex|lastMatch|lastModified|lastParen|layers|layerX|leftContext|left|length|lineHeight|linkColor|listStyleType|localName|locationbar|location|lowsrc|MAX_VALUE|MIN_VALUE|marginBottom|marginLeft|marginRight|marginTop|menubar|mimeTypes|multiline|NEGATIVE_INFINITY|nameProp|namespaces|namespaceURI|next|offscreenBuffering|onLine|onreadystatechange|opener|opsProfile|oscpu|outerHeight|outerWidth|POSITIVE_INFINITY|PI|paddingBottom|paddingLeft|paddingRight|paddingTop|pageXOffset|pageYOffset|pageX|pageY|parentLayer|parentWindow|parent|pathname|personalbar|pixelDepth|platform|plugins|pkcs11|port|prefix|previous|productSub|product|prompter|protocol|prototype|readyState|responseText|responseXML|rightContext|right|SQRT1_2|SQRT2|screenLeft|screenTop|screenX|screenY|scripts|scrollbars|securityPolicy|security|selection|self|siblingAbove|siblingBelow|source|statusbar|statusText|status|style|styleSheets|suffixes|systemLanguage|tags|textAlign|textDecoration|textIndent|textTransform|toolbar|top|URLUnencoded|undefined|uniqueID|updateInterval|userAgent|userLanguage|userProfile|vendorSub|vendor|visibility|vLinkcolor|whiteSpace|XMLDocument|XSLDocument|x|y|zIndex)\b name support.constant.js match (?<=\.)(abbr|accept|acceptCharset|accessKey|action|aLink|align|alt|anchors|applets|areas|archive|attributes|axis|background|bgColor|body|border|caption|charset|cellPadding|cells|cellSpacing|ch|checked|childNodes|chOff|cite|className|clear|colSpan|code|codeBase|codeType|color|cols|compact|content|cookie|coords|data|dateTime|declare|defaultChecked|defaultSelected|defaultValue|defer|dir|disabled|doctype|documentElement|domain|elements|enctype|entities|event|face|firstChild|form|forms|frame|frameBorder|headers|height|hspace|href|hreflang|htmlFor|httpEquiv|id|images|implementation|index|isMap|label|lang|lastChild|link|links|longDesc|lowSrc|maxLength|marginHeight|marginWidth|media|method|multiple|name|nextSibling|nodeName|nodeType|nodeValue|noHref|noResize|noShade|notationName|notations|noWrap|object|options|ownerDocument|parentNode|previousSibling|profile|prompt|publicId|readOnly|rel|referrer|rev|rowIndex|rows|rowSpan|rules|scheme|scope|scrolling|sectionRowIndex|selected|selectedIndex|shape|size|specified|src|standby|start|summary|systemId|tagName|target|text|tBodies|tFoot|tHead|title|type|URL|useMap|vAlign|value|valueType|version|vLink|vspace|width)\b name support.constant.dom.js match \b(ELEMENT_NODE|ATTRIBUTE_NODE|TEXT_NODE|CDATA_SECTION_NODE|ENTITY_REFERENCE_NODE|ENTITY_NODE|PROCESSING_INSTRUCTION_NODE|COMMENT_NODE|DOCUMENT_NODE|DOCUMENT_TYPE_NODE|DOCUMENT_FRAGMENT_NODE|NOTATION_NODE|INDEX_SIZE_ERR|DOMSTRING_SIZE_ERR|HIERARCHY_REQUEST_ERR|WRONG_DOCUMENT_ERR|INVALID_CHARACTER_ERR|NO_DATA_ALLOWED_ERR|NO_MODIFICATION_ALLOWED_ERR|NOT_FOUND_ERR|NOT_SUPPORTED_ERR|INUSE_ATTRIBUTE_ERR)\b name support.constant.dom.js match \b(onAbort|onActivate|onAfterprint|onAfterupdate|onBeforeactivate|onBeforecut|onBeforedeactivate|onBeforeeditfocus|onBeforepaste|onBeforeprint|onBeforeunload|onBeforeupdate|onBlur|onCellchange|onChange|onClick|onClose|onContextmenu|onControlselect|onCut|onDataavailable|onDatasetchanged|onDatasetcomplete|onDblclick|onDeactivate|onDrag|onDragdrop|onDragend|onDragenter|onDragleave|onDragover|onDragstart|onDrop|onError|onErrorupdate|onFocus|onHelp|onHover|onKeydown|onKeypress|onKeyup|onLoad|onMousedown|onMousemove|onMouseout|onMouseover|onMouseup|onPaste|onPropertychange|onReadystatechange|onReset|onResize|onResizeend|onResizestart|onRowenter|onRowexit|onRowsdelete|onRowsinserted|onScroll|onSelect|onSelectionchange|onSelectstart|onStop|onSubmit|onUnload)\b name support.function.event-handler.js match !|\$|%|&|\*|\-\-|\-|\+\+|\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\|\||\?\:|\*=|/=|%=|\+=|\-=|&=|\^=|\b(in|instanceof|new|delete|typeof|void)\b name keyword.operator.js match \b(Infinity|NaN|Undefined)\b name constant.language.js begin (?<=[=(:]|^)\s*/(?![/*+{}?]) end /[igm]* name string.regexp.js patterns match \\. name constant.character.escape.js match \; name meta.delimiter.statement.semicolon.js match ,[ |\t]* name meta.delimiter.object.comma.js match \. name meta.delimiter.method.period.js match \{|\} name meta.brace.curly.js match \(|\) name meta.brace.round.js match \[|\] name meta.brace.square.js scopeName source.js uuid 93E017CC-6F27-11D9-90EB-000D93589AF6