2799b703e48de156caa65d07057c1b6665d1b71c
[redakcja.git] / project / static / js / reg_syntax / js.js
1 editAreaLoader.load_syntax["js"] = {\r
2         'COMMENT_SINGLE' : {1 : '//'}\r
3         ,'COMMENT_MULTI' : {'/*' : '*/'}\r
4         ,'QUOTEMARKS' : {1: "'", 2: '"'}\r
5         ,'KEYWORD_CASE_SENSITIVE' : false\r
6         ,'KEYWORDS' : {\r
7                 'statements' : [\r
8                         'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do',\r
9                         'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item',\r
10                         'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void',\r
11                         'while', 'write', 'with'\r
12                 ]\r
13                 ,'keywords' : [\r
14                         'class', 'const', 'default', 'debugger', 'export', 'extends', 'false',\r
15                         'function', 'import', 'namespace', 'new', 'null', 'package', 'private',\r
16                         'protected', 'public', 'super', 'true', 'use', 'var', 'window', 'document',             \r
17                         // the list below must be sorted and checked (if it is a keywords or a function and if it is not present twice\r
18                         'Link ', 'outerHeight ', 'Anchor', 'FileUpload', \r
19                         'location', 'outerWidth', 'Select', 'Area', 'find', 'Location', 'Packages', 'self', \r
20                         'arguments', 'locationbar', 'pageXoffset', 'Form', \r
21                         'Math', 'pageYoffset', 'setTimeout', 'assign', 'Frame', 'menubar', 'parent', 'status', \r
22                         'blur', 'frames', 'MimeType', 'parseFloat', 'statusbar', 'Boolean', 'Function', 'moveBy', \r
23                         'parseInt', 'stop', 'Button', 'getClass', 'moveTo', 'Password', 'String', 'callee', 'Hidden', \r
24                         'name', 'personalbar', 'Submit', 'caller', 'history', 'NaN', 'Plugin', 'sun', 'captureEvents', \r
25                         'History', 'navigate', 'print', 'taint', 'Checkbox', 'home', 'navigator', 'prompt', 'Text', \r
26                         'Image', 'Navigator', 'prototype', 'Textarea', 'clearTimeout', 'Infinity', \r
27                         'netscape', 'Radio', 'toolbar', 'close', 'innerHeight', 'Number', 'ref', 'top', 'closed', \r
28                         'innerWidth', 'Object', 'RegExp', 'toString', 'confirm', 'isFinite', 'onBlur', 'releaseEvents', \r
29                         'unescape', 'constructor', 'isNan', 'onError', 'Reset', 'untaint', 'Date', 'java', 'onFocus', \r
30                         'resizeBy', 'unwatch', 'defaultStatus', 'JavaArray', 'onLoad', 'resizeTo', 'valueOf', 'document', \r
31                         'JavaClass', 'onUnload', 'routeEvent', 'watch', 'Document', 'JavaObject', 'open', 'scroll', 'window', \r
32                         'Element', 'JavaPackage', 'opener', 'scrollbars', 'Window', 'escape', 'length', 'Option', 'scrollBy'                    \r
33                 ]\r
34         ,'functions' : [\r
35                         // common functions for Window object\r
36                         'alert', 'Array', 'back', 'blur', 'clearInterval', 'close', 'confirm', 'eval ', 'focus', 'forward', 'home',\r
37                         'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove',\r
38                         'onresize', 'onunload', 'open', 'print', 'prompt', 'scroll', 'scrollTo', 'setInterval', 'status',\r
39                         'stop' \r
40                 ]\r
41         }\r
42         ,'OPERATORS' :[\r
43                 '+', '-', '/', '*', '=', '<', '>', '%', '!'\r
44         ]\r
45         ,'DELIMITERS' :[\r
46                 '(', ')', '[', ']', '{', '}'\r
47         ]\r
48         ,'STYLES' : {\r
49                 'COMMENTS': 'color: #AAAAAA;'\r
50                 ,'QUOTESMARKS': 'color: #6381F8;'\r
51                 ,'KEYWORDS' : {\r
52                         'statements' : 'color: #60CA00;'\r
53                         ,'keywords' : 'color: #48BDDF;'\r
54                         ,'functions' : 'color: #2B60FF;'\r
55                 }\r
56                 ,'OPERATORS' : 'color: #FF00FF;'\r
57                 ,'DELIMITERS' : 'color: #0038E1;'\r
58                                 \r
59         }\r
60         ,'AUTO_COMPLETION' :  {\r
61                 "default": {    // the name of this definition group. It's posisble to have different rules inside the same definition file\r
62                         "REGEXP": { "before_word": "[^a-zA-Z0-9_]|^"    // \\s|\\.|\r
63                                                 ,"possible_words_letters": "[a-zA-Z0-9_]+"\r
64                                                 ,"letter_after_word_must_match": "[^a-zA-Z0-9_]|$"\r
65                                                 ,"prefix_separator": "\\."\r
66                                         }\r
67                         ,"CASE_SENSITIVE": true\r
68                         ,"MAX_TEXT_LENGTH": 100         // the maximum length of the text being analyzed before the cursor position\r
69                         ,"KEYWORDS": {\r
70                                 '': [   // the prefix of thoses items\r
71                                                 /**\r
72                                                  * 0 : the keyword the user is typing\r
73                                                  * 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
74                                                  *              If empty the keyword will be displayed\r
75                                                  * 2 : (optionnal) the text that appear in the suggestion box (if empty, the string to insert will be displayed)\r
76                                                  */\r
77                                                  ['Array', '§()', '']\r
78                                         ,['alert', '§({@})', 'alert(String message)']\r
79                                         ,['document']\r
80                                         ,['window']\r
81                                 ]\r
82                         ,'window' : [\r
83                                          ['location']\r
84                                         ,['document']\r
85                                         ,['scrollTo', 'scrollTo({@})', 'scrollTo(Int x,Int y)']\r
86                                         ]\r
87                         ,'location' : [\r
88                                          ['href']\r
89                                         ]\r
90                         }\r
91                 }\r
92         }\r
93 };\r