0556099f80d050090e7b4d0a9e80d5b995e340cc
[Packages/TYPO3.CMS.git] / typo3 / sysext / t3editor / jslib / tokenizetyposcript.js
1 /* Tokenizer for TypoScript code
2 *
3 * based on tokenizejavascript.js by Marijn Haverbeke
4 */
5
6 // List of "reserved" word in typoscript and a css-class
7 var typoscriptWords = {
8 '_CSS_DEFAULT_STYLE' : 'keyword',
9 '_DEFAULT_PI_VARS' : 'keyword',
10 '_GIFBUILDER' : 'keyword',
11 '_LOCAL_LANG' : 'keyword',
12 'CARRAY' : 'keyword',
13 'CASE' : 'keyword',
14 'CLEARGIF' : 'keyword',
15 'COA' : 'keyword',
16 'COA_INT' : 'keyword',
17 'COBJ_ARRAY' : 'keyword',
18 'COLUMNS' : 'keyword',
19 'CONFIG' : 'keyword',
20 'CONSTANTS' : 'keyword',
21 'CONTENT' : 'keyword',
22 'CTABLE' : 'keyword',
23 'CType' : 'keyword',
24 'DB' : 'keyword',
25 'DOCUMENT_BODY' : 'keyword',
26 'EDITPANEL' : 'keyword',
27 'EFFECT' : 'keyword',
28 'FE_DATA' : 'keyword',
29 'FE_TABLE' : 'keyword',
30 'FEData' : 'keyword',
31 'FILE' : 'keyword',
32 'FORM' : 'keyword',
33 'FRAME' : 'keyword',
34 'FRAMESET' : 'keyword',
35 'GIFBUILDER' : 'keyword',
36 'global' : 'keyword',
37 'globalString' : 'keyword',
38 'globalVar' : 'keyword',
39 'GMENU' : 'keyword',
40 'GMENU_FOLDOUT' : 'keyword',
41 'GMENU_LAYERS' : 'keyword',
42 'GP' : 'keyword',
43 'HMENU' : 'keyword',
44 'HRULER' : 'keyword',
45 'HTML' : 'keyword',
46 'IENV' : 'keyword',
47 'IMAGE' : 'keyword',
48 'IMG_RESOURCE' : 'keyword',
49 'IMGMENU' : 'keyword',
50 'IMGMENUITEM' : 'keyword',
51 'IMGTEXT' : 'keyword',
52 'INCLUDE_TYPOSCRIPT' : 'keyword',
53 'includeLibs' : 'keyword',
54 'JSMENU' : 'keyword',
55 'JSMENUITEM' : 'keyword',
56 'LIT' : 'keyword',
57 'LOAD_REGISTER' : 'keyword',
58 'META' : 'keyword',
59 'MULTIMEDIA' : 'keyword',
60 'OTABLE' : 'keyword',
61 'PAGE' : 'keyword',
62 'PAGE_TARGET' : 'keyword',
63 'PAGE_TSCONFIG_ID' : 'keyword',
64 'PAGE_TSCONFIG_IDLIST' : 'keyword',
65 'PAGE_TSCONFIG_STR' : 'keyword',
66 'PHP_SCRIPT' : 'keyword',
67 'PHP_SCRIPT_EXT' : 'keyword',
68 'PHP_SCRIPT_INT' : 'keyword',
69 'RECORDS' : 'keyword',
70 'REMOTE_ADDR' : 'keyword',
71 'RESTORE_REGISTER' : 'keyword',
72 'RTE' : 'keyword',
73 'SEARCHRESULT' : 'keyword',
74 'SHARED' : 'keyword',
75 'TCAdefaults' : 'keyword',
76 'TCEFORM' : 'keyword',
77 'TCEMAIN' : 'keyword',
78 'TEMPLATE' : 'keyword',
79 'TEXT' : 'keyword',
80 'TMENU' : 'keyword',
81 'TMENU_LAYERS' : 'keyword',
82 'TMENUITEM' : 'keyword',
83 'TSFE' : 'keyword',
84 'USER' : 'keyword',
85 'USER_INT' : 'keyword',
86 'userFunc' : 'keyword',
87
88 '_offset' : 'reserved',
89 'absRefPrefix' : 'reserved',
90 'accessibility' : 'reserved',
91 'accessKey' : 'reserved',
92 'addAttributes' : 'reserved',
93 'addExtUrlsAndShortCuts' : 'reserved',
94 'addItems' : 'reserved',
95 'additionalHeaders' : 'reserved',
96 'additionalParams' : 'reserved',
97 'addParams' : 'reserved',
98 'addQueryString' : 'reserved',
99 'adjustItemsH' : 'reserved',
100 'adjustSubItemsH' : 'reserved',
101 'adminPanelStyles' : 'reserved',
102 'after' : 'reserved',
103 'afterImg' : 'reserved',
104 'afterImgLink' : 'reserved',
105 'afterImgTagParams' : 'reserved',
106 'afterROImg' : 'reserved',
107 'afterWrap' : 'reserved',
108 'age' : 'reserved',
109 'alertPopups' : 'reserved',
110 'align' : 'reserved',
111 'allow' : 'reserved',
112 'allowCaching' : 'reserved',
113 'allowedAttribs' : 'reserved',
114 'allowedClasses' : 'reserved',
115 'allowedCols' : 'reserved',
116 'allowEdit' : 'reserved',
117 'allowedNewTables' : 'reserved',
118 'allowNew' : 'reserved',
119 'allowTags' : 'reserved',
120 'allowTVlisting' : 'reserved',
121 'allSaveFunctions' : 'reserved',
122 'allStdWrap' : 'reserved',
123 'allWrap' : 'reserved',
124 'alternateBgColors' : 'reserved',
125 'alternativeSortingField' : 'reserved',
126 'alternativeTempPath' : 'reserved',
127 'altImgResource' : 'reserved',
128 'altLabels' : 'reserved',
129 'altTarget' : 'reserved',
130 'altText' : 'reserved',
131 'altUrl' : 'reserved',
132 'altUrl_noDefaultParams' : 'reserved',
133 'altWrap' : 'reserved',
134 'always' : 'reserved',
135 'alwaysActivePIDlist' : 'reserved',
136 'alwaysLink' : 'reserved',
137 'alwaysShowClickMenuInTopFrame' : 'reserved',
138 'andWhere' : 'reserved',
139 'angle' : 'reserved',
140 'antiAlias' : 'reserved',
141 'append' : 'reserved',
142 'applyTotalH' : 'reserved',
143 'applyTotalW' : 'reserved',
144 'archive' : 'reserved',
145 'archiveTypoLink' : 'reserved',
146 'arrayReturnMode' : 'reserved',
147 'arrowACT' : 'reserved',
148 'arrowImgParams' : 'reserved',
149 'arrowNO' : 'reserved',
150 'ATagAfterWrap' : 'reserved',
151 'ATagBeforeWrap' : 'reserved',
152 'ATagParams' : 'reserved',
153 'ATagTitle' : 'reserved',
154 'attribute' : 'reserved',
155 'autoInsertPID' : 'reserved',
156 'autoLevels' : 'reserved',
157 'autonumber' : 'reserved',
158 'backColor' : 'reserved',
159 'background' : 'reserved',
160 'badMess' : 'reserved',
161 'baseURL' : 'reserved',
162 'before' : 'reserved',
163 'beforeImg' : 'reserved',
164 'beforeImgLink' : 'reserved',
165 'beforeImgTagParams' : 'reserved',
166 'beforeROImg' : 'reserved',
167 'beforeWrap' : 'reserved',
168 'begin' : 'reserved',
169 'beLoginLinkIPList' : 'reserved',
170 'beLoginLinkIPList_login' : 'reserved',
171 'beLoginLinkIPList_logout' : 'reserved',
172 'bgCol' : 'reserved',
173 'bgImg' : 'reserved',
174 'blankStrEqFalse' : 'reserved',
175 'blur' : 'reserved',
176 'bm' : 'reserved',
177 'bodyTag' : 'reserved',
178 'bodyTagAdd' : 'reserved',
179 'bodyTagCObject' : 'reserved',
180 'bodyTagMargins' : 'reserved',
181 'bodytext' : 'reserved',
182 'border' : 'reserved',
183 'borderCol' : 'reserved',
184 'bordersWithin' : 'reserved',
185 'borderThick' : 'reserved',
186 'bottomBackColor' : 'reserved',
187 'bottomContent' : 'reserved',
188 'bottomHeight' : 'reserved',
189 'bottomImg' : 'reserved',
190 'bottomImg_mask' : 'reserved',
191 'br' : 'reserved',
192 'brTag' : 'reserved',
193 'bullet' : 'reserved',
194 'bulletlist' : 'reserved',
195 'bytes' : 'reserved',
196 'cache_clearAtMidnight' : 'reserved',
197 'cache_period' : 'reserved',
198 'caption' : 'reserved',
199 'caption_stdWrap' : 'reserved',
200 'captionAlign' : 'reserved',
201 'captionHeader' : 'reserved',
202 'captionSplit' : 'reserved',
203 'case' : 'reserved',
204 'casesensitiveComp' : 'reserved',
205 'cellpadding' : 'reserved',
206 'cellspacing' : 'reserved',
207 'centerImgACT' : 'reserved',
208 'centerImgCUR' : 'reserved',
209 'centerImgNO' : 'reserved',
210 'centerLeftImgACT' : 'reserved',
211 'centerLeftImgCUR' : 'reserved',
212 'centerLeftImgNO' : 'reserved',
213 'centerRightImgACT' : 'reserved',
214 'centerRightImgCUR' : 'reserved',
215 'centerRightImgNO' : 'reserved',
216 'char' : 'reserved',
217 'charcoal' : 'reserved',
218 'charMapConfig' : 'reserved',
219 'check' : 'reserved',
220 'class' : 'reserved',
221 'classesAnchor' : 'reserved',
222 'classesCharacter' : 'reserved',
223 'classesImage' : 'reserved',
224 'classesParagraph' : 'reserved',
225 'classicPageEditMode' : 'reserved',
226 'clear' : 'reserved',
227 'clearCache' : 'reserved',
228 'clearCache_disable' : 'reserved',
229 'clearCache_pageGrandParent' : 'reserved',
230 'clearCache_pageSiblingChildren' : 'reserved',
231 'clearCacheCmd' : 'reserved',
232 'clearCacheLevels' : 'reserved',
233 'clearCacheOfPages' : 'reserved',
234 'clickMenuTimeOut' : 'reserved',
235 'clickTitleMode' : 'reserved',
236 'clipboardNumberPads' : 'reserved',
237 'cMargins' : 'reserved',
238 'cObjNum' : 'reserved',
239 'collapse' : 'reserved',
240 'color' : 'reserved',
241 'color1' : 'reserved',
242 'color2' : 'reserved',
243 'color3' : 'reserved',
244 'color4' : 'reserved',
245 'colors' : 'reserved',
246 'colour' : 'reserved',
247 'colPos_list' : 'reserved',
248 'colRelations' : 'reserved',
249 'cols' : 'reserved',
250 'colSpace' : 'reserved',
251 'comment_auto' : 'reserved',
252 'commentWrap' : 'reserved',
253 'compensateFieldWidth' : 'reserved',
254 'compX' : 'reserved',
255 'compY' : 'reserved',
256 'condensedMode' : 'reserved',
257 'conf' : 'reserved',
258 'constants' : 'reserved',
259 'content_from_pid_allowOutsideDomain' : 'reserved',
260 'contextMenu' : 'reserved',
261 'copyLevels' : 'reserved',
262 'count_HMENU_MENUOBJ' : 'reserved',
263 'count_menuItems' : 'reserved',
264 'count_MENUOBJ' : 'reserved',
265 'create' : 'reserved',
266 'createFoldersInEB' : 'reserved',
267 'crop' : 'reserved',
268 'csConv' : 'reserved',
269 'CSS_inlineStyle' : 'reserved',
270 'current' : 'reserved',
271 'curUid' : 'reserved',
272 'cWidth' : 'reserved',
273 'data' : 'reserved',
274 'dataWrap' : 'reserved',
275 'date' : 'reserved',
276 'date_stdWrap' : 'reserved',
277 'datePrefix' : 'reserved',
278 'debug' : 'reserved',
279 'debugData' : 'reserved',
280 'debugFunc' : 'reserved',
281 'debugItemConf' : 'reserved',
282 'debugRenumberedObject' : 'reserved',
283 'default' : 'reserved',
284 'defaultAlign' : 'reserved',
285 'defaultCmd' : 'reserved',
286 'defaultFileUploads' : 'reserved',
287 'defaultHeaderType' : 'reserved',
288 'defaultOutput' : 'reserved',
289 'defaults' : 'reserved',
290 'defaultType' : 'reserved',
291 'delete' : 'reserved',
292 'denyTags' : 'reserved',
293 'depth' : 'reserved',
294 'DESC' : 'reserved',
295 'dimensions' : 'reserved',
296 'directionLeft' : 'reserved',
297 'directionUp' : 'reserved',
298 'disableAdvanced' : 'reserved',
299 'disableAllHeaderCode' : 'reserved',
300 'disableAltText' : 'reserved',
301 'disableBigButtons' : 'reserved',
302 'disableCacheSelector' : 'reserved',
303 'disableCharsetHeader' : 'reserved',
304 'disableCMlayers' : 'reserved',
305 'disabled' : 'reserved',
306 'disableDelete' : 'reserved',
307 'disableDocModuleInAB' : 'reserved',
308 'disableDocSelector' : 'reserved',
309 'disableHideAtCopy' : 'reserved',
310 'disableIconLinkToContextmenu' : 'reserved',
311 'disableItems' : 'reserved',
312 'disableNewContentElementWizard' : 'reserved',
313 'disableNoMatchingValueElement' : 'reserved',
314 'disablePageExternalUrl' : 'reserved',
315 'disablePrefixComment' : 'reserved',
316 'disablePrependAtCopy' : 'reserved',
317 'disableSearchBox' : 'reserved',
318 'disableSingleTableView' : 'reserved',
319 'disableTabInTextarea' : 'reserved',
320 'displayActiveOnLoad' : 'reserved',
321 'displayContent' : 'reserved',
322 'displayFieldIcons' : 'reserved',
323 'displayIcons' : 'reserved',
324 'displayMessages' : 'reserved',
325 'displayQueries' : 'reserved',
326 'displayRecord' : 'reserved',
327 'displayTimes' : 'reserved',
328 'distributeX' : 'reserved',
329 'distributeY' : 'reserved',
330 'DIV' : 'reserved',
331 'doctype' : 'reserved',
332 'doctypeSwitch' : 'reserved',
333 'doktype' : 'reserved',
334 'doNotLinkIt' : 'reserved',
335 'doNotShowLink' : 'reserved',
336 'doNotStripHTML' : 'reserved',
337 'dontCheckPid' : 'reserved',
338 'dontFollowMouse' : 'reserved',
339 'dontHideOnMouseUp' : 'reserved',
340 'dontLinkIfSubmenu' : 'reserved',
341 'dontShowPalettesOnFocusInAB' : 'reserved',
342 'dontWrapInTable' : 'reserved',
343 'doubleBrTag' : 'reserved',
344 'doublePostCheck' : 'reserved',
345 'dWorkArea' : 'reserved',
346 'edge' : 'reserved',
347 'edit_docModuleUplaod' : 'reserved',
348 'edit_docModuleUpload' : 'reserved',
349 'edit_RTE' : 'reserved',
350 'edit_showFieldHelp' : 'reserved',
351 'edit_wideDocument' : 'reserved',
352 'editFieldsAtATime' : 'reserved',
353 'editFormsOnPage' : 'reserved',
354 'editIcons' : 'reserved',
355 'editNoPopup' : 'reserved',
356 'editPanel' : 'reserved',
357 'elements' : 'reserved',
358 'emailMeAtLogin' : 'reserved',
359 'emailMess' : 'reserved',
360 'emboss' : 'reserved',
361 'enable' : 'reserved',
362 'encapsLines' : 'reserved',
363 'encapsLinesStdWrap' : 'reserved',
364 'encapsTagList' : 'reserved',
365 'entryLevel' : 'reserved',
366 'equalH' : 'reserved',
367 'everybody' : 'reserved',
368 'excludeDoktypes' : 'reserved',
369 'excludeUidList' : 'reserved',
370 'expAll' : 'reserved',
371 'expand' : 'reserved',
372 'explode' : 'reserved',
373 'ext' : 'reserved',
374 'externalBlocks' : 'reserved',
375 'extTarget' : 'reserved',
376 'face' : 'reserved',
377 'fe_adminLib' : 'reserved',
378 'field' : 'reserved',
379 'fieldOrder' : 'reserved',
380 'fieldRequired' : 'reserved',
381 'fields' : 'reserved',
382 'fieldWrap' : 'reserved',
383 'file' : 'reserved',
384 'file1' : 'reserved',
385 'file2' : 'reserved',
386 'file3' : 'reserved',
387 'file4' : 'reserved',
388 'file5' : 'reserved',
389 'filelink' : 'reserved',
390 'filelist' : 'reserved',
391 'firstLabel' : 'reserved',
392 'firstLabelGeneral' : 'reserved',
393 'fixAttrib' : 'reserved',
394 'flip' : 'reserved',
395 'flop' : 'reserved',
396 'foldSpeed' : 'reserved',
397 'foldTimer' : 'reserved',
398 'fontColor' : 'reserved',
399 'fontFile' : 'reserved',
400 'fontOffset' : 'reserved',
401 'fontSize' : 'reserved',
402 'fontSizeMultiplicator' : 'reserved',
403 'fontTag' : 'reserved',
404 'forceDisplayFieldIcons' : 'reserved',
405 'forceDisplayIcons' : 'reserved',
406 'forceNoPopup' : 'reserved',
407 'forceTemplateParsing' : 'reserved',
408 'forceTypeValue' : 'reserved',
409 'format' : 'reserved',
410 'frame' : 'reserved',
411 'frameReloadIfNotInFrameset' : 'reserved',
412 'frameSet' : 'reserved',
413 'freezeMouseover' : 'reserved',
414 'ftu' : 'reserved',
415 'function' : 'reserved',
416 'gamma' : 'reserved',
417 'gapBgCol' : 'reserved',
418 'gapLineCol' : 'reserved',
419 'gapLineThickness' : 'reserved',
420 'gapWidth' : 'reserved',
421 'get' : 'reserved',
422 'getBorder' : 'reserved',
423 'getLeft' : 'reserved',
424 'getRight' : 'reserved',
425 'globalNesting' : 'reserved',
426 'goodMess' : 'reserved',
427 'gray' : 'reserved',
428 'group' : 'reserved',
429 'groupBy' : 'reserved',
430 'groupid' : 'reserved',
431 'header' : 'reserved',
432 'header_layout' : 'reserved',
433 'headerComment' : 'reserved',
434 'headerData' : 'reserved',
435 'headerSpace' : 'reserved',
436 'headTag' : 'reserved',
437 'height' : 'reserved',
438 'helpText' : 'reserved',
439 'hidden' : 'reserved',
440 'hiddenFields' : 'reserved',
441 'hide' : 'reserved',
442 'hideButCreateMap' : 'reserved',
443 'hideMenuTimer' : 'reserved',
444 'hideMenuWhenNotOver' : 'reserved',
445 'hidePStyleItems' : 'reserved',
446 'hideRecords' : 'reserved',
447 'hideSubmoduleIcons' : 'reserved',
448 'highColor' : 'reserved',
449 'history' : 'reserved',
450 'hover' : 'reserved',
451 'hoverStyle' : 'reserved',
452 'HTMLparser' : 'reserved',
453 'HTMLparser_tags' : 'reserved',
454 'htmlSpecialChars' : 'reserved',
455 'htmlTag_dir' : 'reserved',
456 'htmlTag_langKey' : 'reserved',
457 'htmlTag_setParams' : 'reserved',
458 'http' : 'reserved',
459 'icon' : 'reserved',
460 'icon_image_ext_list' : 'reserved',
461 'icon_link' : 'reserved',
462 'iconCObject' : 'reserved',
463 'ifEmpty' : 'reserved',
464 'image' : 'reserved',
465 'image_compression' : 'reserved',
466 'image_effects' : 'reserved',
467 'image_frames' : 'reserved',
468 'imageLinkWrap' : 'reserved',
469 'imagePath' : 'reserved',
470 'images' : 'reserved',
471 'imageWrapIfAny' : 'reserved',
472 'imgList' : 'reserved',
473 'imgMap' : 'reserved',
474 'imgMapExtras' : 'reserved',
475 'imgMax' : 'reserved',
476 'imgNameNotRandom' : 'reserved',
477 'imgNamePrefix' : 'reserved',
478 'imgObjNum' : 'reserved',
479 'imgParams' : 'reserved',
480 'imgPath' : 'reserved',
481 'imgStart' : 'reserved',
482 'import' : 'reserved',
483 'inc' : 'reserved',
484 'includeCSS' : 'reserved',
485 'includeLibrary' : 'reserved',
486 'includeNotInMenu' : 'reserved',
487 'incT3Lib_htmlmail' : 'reserved',
488 'index' : 'reserved',
489 'index_descrLgd' : 'reserved',
490 'index_enable' : 'reserved',
491 'index_externals' : 'reserved',
492 'inlineStyle2TempFile' : 'reserved',
493 'innerStdWrap' : 'reserved',
494 'innerStdWrap_all' : 'reserved',
495 'innerWrap' : 'reserved',
496 'innerWrap2' : 'reserved',
497 'input' : 'reserved',
498 'inputLevels' : 'reserved',
499 'insertClassesFromRTE' : 'reserved',
500 'insertData' : 'reserved',
501 'insertDmailerBoundaries' : 'reserved',
502 'intensity' : 'reserved',
503 'intTarget' : 'reserved',
504 'intval' : 'reserved',
505 'invert' : 'reserved',
506 'IProcFunc' : 'reserved',
507 'itemArrayProcFunc' : 'reserved',
508 'itemH' : 'reserved',
509 'items' : 'reserved',
510 'itemsProcFunc' : 'reserved',
511 'iterations' : 'reserved',
512 'join' : 'reserved',
513 'JSWindow' : 'reserved',
514 'JSwindow_params' : 'reserved',
515 'jumpurl' : 'reserved',
516 'jumpUrl' : 'reserved',
517 'jumpurl_enable' : 'reserved',
518 'jumpurl_mailto_disable' : 'reserved',
519 'jumpUrl_transferSession' : 'reserved',
520 'keep' : 'reserved',
521 'keepEntries' : 'reserved',
522 'keepNonMatchedTags' : 'reserved',
523 'key' : 'reserved',
524 'label' : 'reserved',
525 'labelStdWrap' : 'reserved',
526 'labelWrap' : 'reserved',
527 'lang' : 'reserved',
528 'language' : 'reserved',
529 'language_alt' : 'reserved',
530 'languageField' : 'reserved',
531 'layer_menu_id' : 'reserved',
532 'layerStyle' : 'reserved',
533 'left' : 'reserved',
534 'leftIcons' : 'reserved',
535 'leftImgACT' : 'reserved',
536 'leftImgCUR' : 'reserved',
537 'leftImgNO' : 'reserved',
538 'leftjoin' : 'reserved',
539 'leftOffset' : 'reserved',
540 'levels' : 'reserved',
541 'leveluid' : 'reserved',
542 'limit' : 'reserved',
543 'line' : 'reserved',
544 'lineColor' : 'reserved',
545 'lineThickness' : 'reserved',
546 'linkPrefix' : 'reserved',
547 'linkTitleToSelf' : 'reserved',
548 'linkVars' : 'reserved',
549 'linkWrap' : 'reserved',
550 'listNum' : 'reserved',
551 'listOnlyInSingleTableView' : 'reserved',
552 'lm' : 'reserved',
553 'locale_all' : 'reserved',
554 'localNesting' : 'reserved',
555 'locationData' : 'reserved',
556 'lockFilePath' : 'reserved',
557 'lockPosition' : 'reserved',
558 'lockPosition_addSelf' : 'reserved',
559 'lockPosition_adjust' : 'reserved',
560 'lockToIP' : 'reserved',
561 'longdescURL' : 'reserved',
562 'lowColor' : 'reserved',
563 'lower' : 'reserved',
564 'LR' : 'reserved',
565 'mailto' : 'reserved',
566 'main' : 'reserved',
567 'mainScript' : 'reserved',
568 'makelinks' : 'reserved',
569 'markerWrap' : 'reserved',
570 'mask' : 'reserved',
571 'max' : 'reserved',
572 'maxAge' : 'reserved',
573 'maxAgeDays' : 'reserved',
574 'maxChars' : 'reserved',
575 'maxH' : 'reserved',
576 'maxHeight' : 'reserved',
577 'maxItems' : 'reserved',
578 'maxW' : 'reserved',
579 'maxWidth' : 'reserved',
580 'maxWInText' : 'reserved',
581 'mayNotCreateEditShortcuts' : 'reserved',
582 'menu_type' : 'reserved',
583 'menuBackColor' : 'reserved',
584 'menuHeight' : 'reserved',
585 'menuName' : 'reserved',
586 'menuOffset' : 'reserved',
587 'menuWidth' : 'reserved',
588 'message_page_is_being_generated' : 'reserved',
589 'message_preview' : 'reserved',
590 'meta' : 'reserved',
591 'metaCharset' : 'reserved',
592 'method' : 'reserved',
593 'min' : 'reserved',
594 'minH' : 'reserved',
595 'minItems' : 'reserved',
596 'minW' : 'reserved',
597 'mode' : 'reserved',
598 'moduleMenuCollapsable' : 'reserved',
599 'MP_defaults' : 'reserved',
600 'MP_disableTypolinkClosestMPvalue' : 'reserved',
601 'MP_mapRootPoints' : 'reserved',
602 'name' : 'reserved',
603 'navFrameResizable' : 'reserved',
604 'navFrameWidth' : 'reserved',
605 'nesting' : 'reserved',
606 'netprintApplicationLink' : 'reserved',
607 'neverHideAtCopy' : 'reserved',
608 'newPageWiz' : 'reserved',
609 'newRecordFromTable' : 'reserved',
610 'newWindow' : 'reserved',
611 'newWizards' : 'reserved',
612 'next' : 'reserved',
613 'niceText' : 'reserved',
614 'nicetext' : 'reserved',
615 'no_cache' : 'reserved',
616 'no_search' : 'reserved',
617 'noAttrib' : 'reserved',
618 'noBlur' : 'reserved',
619 'noCache' : 'reserved',
620 'noCols' : 'reserved',
621 'noCreateRecordsLink' : 'reserved',
622 'noLink' : 'reserved',
623 'noLinkUnderline' : 'reserved',
624 'noMatchingValue_label' : 'reserved',
625 'noMenuMode' : 'reserved',
626 'nonCachedSubst' : 'reserved',
627 'nonTypoTagStdWrap' : 'reserved',
628 'nonTypoTagUserFunc' : 'reserved',
629 'nonWrappedTag' : 'reserved',
630 'noOrderBy' : 'reserved',
631 'noPageTitle' : 'reserved',
632 'noRows' : 'reserved',
633 'noScaleUp' : 'reserved',
634 'noStretchAndMarginCells' : 'reserved',
635 'noThumbsInEB' : 'reserved',
636 'noThumbsInRTEimageSelect' : 'reserved',
637 'notification_email_charset' : 'reserved',
638 'notification_email_encoding' : 'reserved',
639 'notification_email_urlmode' : 'reserved',
640 'noTrimWrap' : 'reserved',
641 'noValueInsert' : 'reserved',
642 'obj' : 'reserved',
643 'offset' : 'reserved',
644 'offsetWrap' : 'reserved',
645 'onlineWorkspaceInfo' : 'reserved',
646 'onlyCurrentPid' : 'reserved',
647 'opacity' : 'reserved',
648 'orderBy' : 'reserved',
649 'outerWrap' : 'reserved',
650 'outline' : 'reserved',
651 'outputLevels' : 'reserved',
652 'override' : 'reserved',
653 'overrideAttribs' : 'reserved',
654 'overrideEdit' : 'reserved',
655 'overrideId' : 'reserved',
656 'overridePageModule' : 'reserved',
657 'overrideWithExtension' : 'reserved',
658 'pageFrameObj' : 'reserved',
659 'pageGenScript' : 'reserved',
660 'pageTitleFirst' : 'reserved',
661 'parameter' : 'reserved',
662 'params' : 'reserved',
663 'parseFunc' : 'reserved',
664 'parser' : 'reserved',
665 'password' : 'reserved',
666 'path' : 'reserved',
667 'permissions' : 'reserved',
668 'pid_list' : 'reserved',
669 'pidInList' : 'reserved',
670 'pixelSpaceFontSizeRef' : 'reserved',
671 'plaintextLib' : 'reserved',
672 'plainTextStdWrap' : 'reserved',
673 'postCObject' : 'reserved',
674 'postLineBlanks' : 'reserved',
675 'postLineChar' : 'reserved',
676 'postLineLen' : 'reserved',
677 'postUserFunc' : 'reserved',
678 'postUserFuncInt' : 'reserved',
679 'preBlanks' : 'reserved',
680 'preCObject' : 'reserved',
681 'prefix' : 'reserved',
682 'prefixComment' : 'reserved',
683 'prefixLocalAnchors' : 'reserved',
684 'prefixRelPathWith' : 'reserved',
685 'preIfEmptyListNum' : 'reserved',
686 'preLineBlanks' : 'reserved',
687 'preLineChar' : 'reserved',
688 'preLineLen' : 'reserved',
689 'prepend' : 'reserved',
690 'preserveEntities' : 'reserved',
691 'preUserFunc' : 'reserved',
692 'prev' : 'reserved',
693 'previewBorder' : 'reserved',
694 'prevnextToSection' : 'reserved',
695 'printheader' : 'reserved',
696 'prioriCalc' : 'reserved',
697 'proc' : 'reserved',
698 'processScript' : 'reserved',
699 'properties' : 'reserved',
700 'protect' : 'reserved',
701 'protectLvar' : 'reserved',
702 'publish_levels' : 'reserved',
703 'QEisDefault' : 'reserved',
704 'quality' : 'reserved',
705 'radio' : 'reserved',
706 'radioWrap' : 'reserved',
707 'range' : 'reserved',
708 'rawUrlEncode' : 'reserved',
709 'recipient' : 'reserved',
710 'recursive' : 'reserved',
711 'recursiveDelete' : 'reserved',
712 'redirect' : 'reserved',
713 'redirectToURL' : 'reserved',
714 'reduceColors' : 'reserved',
715 'register' : 'reserved',
716 'relativeToParentLayer' : 'reserved',
717 'relativeToTriggerItem' : 'reserved',
718 'relPathPrefix' : 'reserved',
719 'remap' : 'reserved',
720 'remapTag' : 'reserved',
721 'removeBadHTML' : 'reserved',
722 'removeDefaultJS' : 'reserved',
723 'removeIfEquals' : 'reserved',
724 'removeIfFalse' : 'reserved',
725 'removeItems' : 'reserved',
726 'removeObjectsOfDummy' : 'reserved',
727 'removePrependedNumbers' : 'reserved',
728 'removeTags' : 'reserved',
729 'removeWrapping' : 'reserved',
730 'renderCharset' : 'reserved',
731 'renderWrap' : 'reserved',
732 'reset' : 'reserved',
733 'resources' : 'reserved',
734 'resultObj' : 'reserved',
735 'returnLast' : 'reserved',
736 'returnUrl' : 'reserved',
737 'rightImgACT' : 'reserved',
738 'rightImgCUR' : 'reserved',
739 'rightImgNO' : 'reserved',
740 'rightjoin' : 'reserved',
741 'rm' : 'reserved',
742 'rmTagIfNoAttrib' : 'reserved',
743 'RO_chBgColor' : 'reserved',
744 'rotate' : 'reserved',
745 'rows' : 'reserved',
746 'rowSpace' : 'reserved',
747 'RTEfullScreenWidth' : 'reserved',
748 'rules' : 'reserved',
749 'sample' : 'reserved',
750 'saveClipboard' : 'reserved',
751 'saveDocNew' : 'reserved',
752 'secondRow' : 'reserved',
753 'section' : 'reserved',
754 'sectionIndex' : 'reserved',
755 'select' : 'reserved',
756 'select_key' : 'reserved',
757 'selectFields' : 'reserved',
758 'separator' : 'reserved',
759 'set' : 'reserved',
760 'setContentToCurrent' : 'reserved',
761 'setCurrent' : 'reserved',
762 'setfixed' : 'reserved',
763 'setFixedHeight' : 'reserved',
764 'setFixedWidth' : 'reserved',
765 'setJS_mouseOver' : 'reserved',
766 'setJS_openPic' : 'reserved',
767 'setOnly' : 'reserved',
768 'shadow' : 'reserved',
769 'sharpen' : 'reserved',
770 'shear' : 'reserved',
771 'short' : 'reserved',
772 'shortcut' : 'reserved',
773 'shortcut_onEditId_dontSetPageTree' : 'reserved',
774 'shortcut_onEditId_keepExistingExpanded' : 'reserved',
775 'shortcutFrame' : 'reserved',
776 'shortcutGroups' : 'reserved',
777 'shortcutIcon' : 'reserved',
778 'show' : 'reserved',
779 'showAccessRestrictedPages' : 'reserved',
780 'showActive' : 'reserved',
781 'showClipControlPanelsDespiteOfCMlayers' : 'reserved',
782 'showFirst' : 'reserved',
783 'showHiddenPages' : 'reserved',
784 'showHiddenRecords' : 'reserved',
785 'showHistory' : 'reserved',
786 'showPageIdWithTitle' : 'reserved',
787 'showTagFreeClasses' : 'reserved',
788 'simulateDate' : 'reserved',
789 'simulateStaticDocuments' : 'reserved',
790 'simulateStaticDocuments_addTitle' : 'reserved',
791 'simulateStaticDocuments_dontRedirectPathInfoError' : 'reserved',
792 'simulateStaticDocuments_noTypeIfNoTitle' : 'reserved',
793 'simulateStaticDocuments_pEnc' : 'reserved',
794 'simulateStaticDocuments_pEnc_onlyP' : 'reserved',
795 'simulateUserGroup' : 'reserved',
796 'singlePid' : 'reserved',
797 'site_author' : 'reserved',
798 'site_reserved' : 'reserved',
799 'sitetitle' : 'reserved',
800 'siteUrl' : 'reserved',
801 'size' : 'reserved',
802 'smallFormFields' : 'reserved',
803 'solarize' : 'reserved',
804 'sorting' : 'reserved',
805 'source' : 'reserved',
806 'space' : 'reserved',
807 'spaceAfter' : 'reserved',
808 'spaceBefore' : 'reserved',
809 'spaceBelowAbove' : 'reserved',
810 'spaceLeft' : 'reserved',
811 'spaceRight' : 'reserved',
812 'spacing' : 'reserved',
813 'spamProtectEmailAddresses' : 'reserved',
814 'spamProtectEmailAddresses_atSubst' : 'reserved',
815 'spamProtectEmailAddresses_lastDotSubst' : 'reserved',
816 'special' : 'reserved',
817 'splitChar' : 'reserved',
818 'splitRendering' : 'reserved',
819 'src' : 'reserved',
820 'startInTaskCenter' : 'reserved',
821 'stayFolded' : 'reserved',
822 'stdheader' : 'reserved',
823 'stdWrap' : 'reserved',
824 'stdWrap2' : 'reserved',
825 'strftime' : 'reserved',
826 'stripHtml' : 'reserved',
827 'styles' : 'reserved',
828 'stylesheet' : 'reserved',
829 'submenuObjSuffixes' : 'reserved',
830 'subMenuOffset' : 'reserved',
831 'submit' : 'reserved',
832 'subst_elementUid' : 'reserved',
833 'substMarksSeparately' : 'reserved',
834 'substring' : 'reserved',
835 'swirl' : 'reserved',
836 'sword' : 'reserved',
837 'sword_noMixedCase' : 'reserved',
838 'SWORD_PARAMS' : 'reserved',
839 'sword_standAlone' : 'reserved',
840 'sys_language_mode' : 'reserved',
841 'sys_language_overlay' : 'reserved',
842 'sys_language_softMergeIfNotBlank' : 'reserved',
843 'sys_language_uid' : 'reserved',
844 'table' : 'reserved',
845 'tableCellColor' : 'reserved',
846 'tableParams' : 'reserved',
847 'tables' : 'reserved',
848 'tableStdWrap' : 'reserved',
849 'tableStyle' : 'reserved',
850 'tableWidth' : 'reserved',
851 'tags' : 'reserved',
852 'target' : 'reserved',
853 'TDparams' : 'reserved',
854 'templateContent' : 'reserved',
855 'templateFile' : 'reserved',
856 'text' : 'reserved',
857 'textarea' : 'reserved',
858 'textMargin' : 'reserved',
859 'textMargin_outOfText' : 'reserved',
860 'textMaxLength' : 'reserved',
861 'textObjNum' : 'reserved',
862 'textPos' : 'reserved',
863 'textStyle' : 'reserved',
864 'thickness' : 'reserved',
865 'thumbnailsByDefault' : 'reserved',
866 'tile' : 'reserved',
867 'time_stdWrap' : 'reserved',
868 'tipafriendLib' : 'reserved',
869 'title' : 'reserved',
870 'titleLen' : 'reserved',
871 'titleTagFunction' : 'reserved',
872 'titleText' : 'reserved',
873 'tm' : 'reserved',
874 'token' : 'reserved',
875 'topOffset' : 'reserved',
876 'totalWidth' : 'reserved',
877 'transparentBackground' : 'reserved',
878 'transparentColor' : 'reserved',
879 'trim' : 'reserved',
880 'tsdebug_tree' : 'reserved',
881 'type' : 'reserved',
882 'typeNum' : 'reserved',
883 'types' : 'reserved',
884 'typolinkCheckRootline' : 'reserved',
885 'uidInList' : 'reserved',
886 'unset' : 'reserved',
887 'uploadFieldsInTopOfEB' : 'reserved',
888 'uploads' : 'reserved',
889 'upper' : 'reserved',
890 'useCacheHash' : 'reserved',
891 'useLargestItemX' : 'reserved',
892 'useLargestItemY' : 'reserved',
893 'user' : 'reserved',
894 'userdefined' : 'reserved',
895 'userfunction' : 'reserved',
896 'userid' : 'reserved',
897 'userIdColumn' : 'reserved',
898 'USERNAME_substToken' : 'reserved',
899 'userProc' : 'reserved',
900 'value' : 'reserved',
901 'valueArray' : 'reserved',
902 'wave' : 'reserved',
903 'where' : 'reserved',
904 'width' : 'reserved',
905 'wiz' : 'reserved',
906 'wordSpacing' : 'reserved',
907 'workArea' : 'reserved',
908 'wrap' : 'reserved',
909 'wrap1' : 'reserved',
910 'wrap2' : 'reserved',
911 'wrap3' : 'reserved',
912 'wrapAfterTags' : 'reserved',
913 'wrapAlign' : 'reserved',
914 'wrapFieldName' : 'reserved',
915 'wrapItemAndSub' : 'reserved',
916 'wrapNonWrappedLines' : 'reserved',
917 'wraps' : 'reserved',
918 'xhtml_cleaning' : 'reserved',
919 'xmlprologue' : 'reserved',
920 'xPosOffset' : 'reserved',
921 'yPosOffset' : 'reserved',
922
923 'admPanel' : 'keyword2',
924 'alt_print' : 'keyword2',
925 'auth' : 'keyword2',
926 'browser' : 'keyword2',
927 'cache' : 'keyword2',
928 'CHECK' : 'keyword2',
929 'cObj' : 'keyword2',
930 'cObject' : 'keyword2',
931 'COMMENT' : 'keyword2',
932 'config' : 'keyword2',
933 'content' : 'keyword2',
934 'copy' : 'keyword2',
935 'CSS_inlineStyle' : 'keyword2',
936 'cut' : 'keyword2',
937 'dataArray' : 'keyword2',
938 'dayofmonth' : 'keyword2',
939 'dayofweek' : 'keyword2',
940 'db_list' : 'keyword2',
941 'device' : 'keyword2',
942 'dynCSS' : 'keyword2',
943 'edit' : 'keyword2',
944 'edit_access' : 'keyword2',
945 'edit_pageheader' : 'keyword2',
946 'folder' : 'keyword2',
947 'folderTree' : 'keyword2',
948 'foldoutMenu' : 'keyword2',
949 'Functions' : 'keyword2',
950 'gmenu_foldout' : 'keyword2',
951 'gmenu_layers' : 'keyword2',
952 'hostname' : 'keyword2',
953 'hour' : 'keyword2',
954 'imgList' : 'keyword2',
955 'imgResource' : 'keyword2',
956 'imgText' : 'keyword2',
957 'info' : 'keyword2',
958 'IP' : 'keyword2',
959 'jsmenu' : 'keyword2',
960 'JSwindow' : 'keyword2',
961 'LABEL' : 'keyword2',
962 'layout' : 'keyword2',
963 'lib' : 'keyword2',
964 'loginUser' : 'keyword2',
965 'marks' : 'keyword2',
966 'minute' : 'keyword2',
967 'mod' : 'keyword2',
968 'module' : 'keyword2',
969 'month' : 'keyword2',
970 'move_wizard' : 'keyword2',
971 'new' : 'keyword2',
972 'new_wizard' : 'keyword2',
973 'noResultObj' : 'keyword2',
974 'numRows' : 'keyword2',
975 'options' : 'keyword2',
976 'page' : 'keyword2',
977 'pageTree' : 'keyword2',
978 'paste' : 'keyword2',
979 'perms' : 'keyword2',
980 'PIDinRootline' : 'keyword2',
981 'PIDupinRootline' : 'keyword2',
982 'plugin' : 'keyword2',
983 'postform' : 'keyword2',
984 'postform_newThread' : 'keyword2',
985 'preview' : 'keyword2',
986 'publish' : 'keyword2',
987 'RADIO' : 'keyword2',
988 'renderObj' : 'keyword2',
989 'REQ' : 'keyword2',
990 'RTE' : 'keyword2',
991 'RTE_compliant' : 'keyword2',
992 'select' : 'keyword2',
993 'setup' : 'keyword2',
994 'split' : 'keyword2',
995 'stat' : 'keyword2',
996 'stat_apache' : 'keyword2',
997 'stat_apache_logfile' : 'keyword2',
998 'stat_apache_noHost' : 'keyword2',
999 'stat_apache_notExtended' : 'keyword2',
1000 'stat_apache_pagenames' : 'keyword2',
1001 'stat_excludeBEuserHits' : 'keyword2',
1002 'stat_excludeIPList' : 'keyword2',
1003 'stat_mysql' : 'keyword2',
1004 'stat_titleLen' : 'keyword2',
1005 'stat_typeNumList' : 'keyword2',
1006 'stdWrap' : 'keyword2',
1007 'subparts' : 'keyword2',
1008 'system' : 'keyword2',
1009 'temp' : 'keyword2',
1010 'template' : 'keyword2',
1011 'treeLevel' : 'keyword2',
1012 'tsdebug' : 'keyword2',
1013 'typolink' : 'keyword2',
1014 'url' : 'keyword2',
1015 'useragent' : 'keyword2',
1016 'userFunc' : 'keyword2',
1017 'version' : 'keyword2',
1018 'view' : 'keyword2',
1019 'workOnSubpart' : 'keyword2',
1020
1021 'ACT' : 'keyword3',
1022 'ACTIFSUB' : 'keyword3',
1023 'ACTIFSUBRO' : 'keyword',
1024 'ACTRO' : 'keyword3',
1025 'all' : 'keyword3',
1026 'arrowACT' : 'keyword3',
1027 'arrowNO' : 'keyword3',
1028 'ascii' : 'keyword3',
1029 'atLeast' : 'keyword3',
1030 'atMost' : 'keyword3',
1031 'BE' : 'keyword3',
1032 'be_groups' : 'keyword3',
1033 'be_users' : 'keyword3',
1034 'BOX' : 'keyword3',
1035 'browse' : 'keyword3',
1036 'bullets' : 'keyword3',
1037 'CUR' : 'keyword3',
1038 'CURIFSUB' : 'keyword3',
1039 'CURIFSUBRO' : 'keyword3',
1040 'CURRO' : 'keyword3',
1041 'default' : 'keyword3',
1042 'description' : 'keyword3',
1043 'directory' : 'keyword3',
1044 'directReturn' : 'keyword3',
1045 'div' : 'keyword3',
1046 'else' : 'keyword3',
1047 'email' : 'keyword3',
1048 'end' : 'keyword3',
1049 'equals' : 'keyword3',
1050 'external' : 'keyword3',
1051 'false' : 'keyword3',
1052 'FE' : 'keyword3',
1053 'fe_groups' : 'keyword3',
1054 'fe_users' : 'keyword3',
1055 'feadmin' : 'keyword3',
1056 'header' : 'keyword3',
1057 'html' : 'keyword3',
1058 'id' : 'keyword3',
1059 'if' : 'keyword3',
1060 'ifEmpty' : 'keyword3',
1061 'IFSUB' : 'keyword3',
1062 'IFSUBRO' : 'keyword3',
1063 'image' : 'keyword3',
1064 'inBranch' : 'keyword3',
1065 'isFalse' : 'keyword3',
1066 'isGreaterThan' : 'keyword3',
1067 'isInList' : 'keyword3',
1068 'isLessThan' : 'keyword3',
1069 'isPositive' : 'keyword3',
1070 'isTrue' : 'keyword3',
1071 'keyword3' : 'keyword3',
1072 'language' : 'keyword3',
1073 'leveltitle' : 'keyword3',
1074 'list' : 'keyword3',
1075 'login' : 'keyword3',
1076 'mailform' : 'keyword3',
1077 'media' : 'keyword3',
1078 'menu' : 'keyword3',
1079 'mod' : 'keyword3',
1080 'multimedia' : 'keyword3',
1081 'negate' : 'keyword3',
1082 'NEW' : 'keyword3',
1083 'NO' : 'keyword3',
1084 'none' : 'keyword3',
1085 'pages' : 'keyword3',
1086 'pages_language_overlay' : 'keyword3',
1087 'parseFunc_RTE' : 'keyword3',
1088 'pid' : 'keyword3',
1089 'required' : 'keyword3',
1090 'RO' : 'keyword3',
1091 'rootline' : 'keyword3',
1092 'script' : 'keyword3',
1093 'search' : 'keyword3',
1094 'shortcut' : 'keyword3',
1095 'sitemap' : 'keyword3',
1096 'SPC' : 'keyword3',
1097 'splash' : 'keyword3',
1098 'sys_dmail' : 'keyword3',
1099 'sys_domain' : 'keyword3',
1100 'sys_filemounts' : 'keyword3',
1101 'sys_note' : 'keyword3',
1102 'sys_template' : 'keyword3',
1103 'tabel' : 'keyword3',
1104 'text' : 'keyword3',
1105 'textpic' : 'keyword3',
1106 'this' : 'keyword3',
1107 'top' : 'keyword3',
1108 'true' : 'keyword3',
1109 'tt_address' : 'keyword3',
1110 'tt_board' : 'keyword3',
1111 'tt_board_list' : 'keyword3',
1112 'tt_board_tree' : 'keyword3',
1113 'tt_calender' : 'keyword3',
1114 'tt_content' : 'keyword3',
1115 'tt_guest' : 'keyword3',
1116 'tt_news' : 'keyword3',
1117 'tt_poll' : 'keyword3',
1118 'tt_products' : 'keyword3',
1119 'tt_rating' : 'keyword3',
1120 'twice' : 'keyword3',
1121 'tx_automaketemplate_pi1' : 'keyword3',
1122 'tx_belog_webinfo' : 'keyword3',
1123 'tx_browserpagetitle' : 'keyword3',
1124 'tx_browserpagetitle_browser_title' : 'keyword3',
1125 'tx_chcforum_pi1' : 'keyword3',
1126 'tx_cms_layout' : 'keyword3',
1127 'tx_cms_webinfo_hits' : 'keyword3',
1128 'tx_cms_webinfo_lang' : 'keyword3',
1129 'tx_cms_webinfo_page' : 'keyword3',
1130 'tx_cssstyledcontent_pi1' : 'keyword3',
1131 'tx_dephpot_pi1' : 'keyword3',
1132 'tx_extkey' : 'keyword3',
1133 'tx_extkey_controllers' : 'keyword3',
1134 'tx_extkey_login' : 'keyword3',
1135 'tx_extrapagecmoptions' : 'keyword3',
1136 'tx_funcwizards_webfunc' : 'keyword3',
1137 'tx_gooffotoboek_pi1' : 'keyword3',
1138 'tx_impexp' : 'keyword3',
1139 'tx_impexp_clickmenu' : 'keyword3',
1140 'tx_impexp_modfunc1' : 'keyword3',
1141 'tx_indexed_search_extparse' : 'keyword3',
1142 'tx_indexedsearch' : 'keyword3',
1143 'tx_indexedsearch_indexer' : 'keyword3',
1144 'tx_indexedsearch_lexer' : 'keyword3',
1145 'tx_indexedsearch_modfunc1' : 'keyword3',
1146 'tx_indexedsearch_modfunc2' : 'keyword3',
1147 'tx_indexedsearch_pihook' : 'keyword3',
1148 'tx_infopagetsconfig_webinfo' : 'keyword3',
1149 'tx_install' : 'keyword3',
1150 'tx_lzgallery_pi1' : 'keyword3',
1151 'tx_mhajaxsearch_pi1' : 'keyword3',
1152 'tx_mhajaxsearch_q' : 'keyword3',
1153 'tx_mhajaxsearch_result' : 'keyword3',
1154 'tx_mhajaxsearch_search' : 'keyword3',
1155 'tx_newloginbox_pi1' : 'keyword3',
1156 'tx_newloginbox_pi3' : 'keyword3',
1157 'tx_open_printlink' : 'keyword3',
1158 'tx_pdfgenerator' : 'keyword3',
1159 'tx_realurl_advanced' : 'keyword3',
1160 'tx_realurl_enable' : 'keyword3',
1161 'tx_realurl_pathsegment' : 'keyword3',
1162 'tx_realurl_pi1' : 'keyword3',
1163 'tx_rlmptmplselector' : 'keyword3',
1164 'tx_rlmptmplselector_pi1' : 'keyword3',
1165 'tx_sochat_pi1' : 'keyword3',
1166 'tx_srfeuserregister_pi1' : 'keyword3',
1167 'tx_sv_auth' : 'keyword3',
1168 'tx_sv_authbase' : 'keyword3',
1169 'tx_sysaction' : 'keyword3',
1170 'tx_templavoila_pi1' : 'keyword3',
1171 'tx_terdoc_pi1' : 'keyword3',
1172 'tx_ttnews' : 'keyword3',
1173 'tx_ttnews_catmenu' : 'keyword3',
1174 'tx_ttnews_itemsProcFunc' : 'keyword3',
1175 'tx_ttnews_tcemain' : 'keyword3',
1176 'tx_ttnews_treeview=' : 'keyword3',
1177 'tx_ttproducts_pi1' : 'keyword3',
1178 'tx_veguestbook_pi1' : 'keyword3',
1179 'tx_version_cm1' : 'keyword3',
1180 'tx_vjchat_chat' : 'keyword3',
1181 'tx_vjchat_pi1' : 'keyword3',
1182 'tx_wizardcrpages_webfunc_2' : 'keyword3',
1183 'tx_wizardsortpages_webfunc_2' : 'keyword3',
1184 'tx_wwwebstats4u_pi1' : 'keyword3',
1185 'uid' : 'keyword3',
1186 'uniqueGlobal' : 'keyword3',
1187 'uniqueLocal' : 'keyword3',
1188 'unsetEmpty' : 'keyword3',
1189 'updated' : 'keyword3',
1190 'uploads' : 'keyword3',
1191 'us' : 'keyword3',
1192 'user_task' : 'keyword3',
1193 'USERDEF1' : 'keyword3',
1194 'USERDEF1RO' : 'keyword3',
1195 'USERDEF2' : 'keyword3',
1196 'USERDEF2RO' : 'keyword3',
1197 'usergroup' : 'keyword3',
1198 'USR' : 'keyword3',
1199 'USRRO' : 'keyword3',
1200 'web_func' : 'keyword3',
1201 'web_info' : 'keyword3',
1202 'web_layout' : 'keyword3',
1203 'web_list' : 'keyword3',
1204 'web_ts' : 'keyword',
1205 'xhtml_strict' : 'keyword3',
1206 'xhtml_trans' : 'keyword3',
1207 'XY' : 'keyword3',
1208 'ypMenu' : 'keyword3'
1209 }
1210
1211 var tokenizeTypoScript = function(){
1212
1213 // Some helper regexp matchers.
1214 var isOperatorChar = matcher(/[\+\-\*\&\%\/=<>!\?]/);
1215 var isDigit = matcher(/[0-9]/);
1216 var isHexDigit = matcher(/[0-9A-Fa-f]/);
1217 var isWordChar = matcher(/[\w\$_]/);
1218 function isWhiteSpace(ch){
1219 // Unfortunately, IE's regexp matcher thinks non-breaking spaces
1220 // aren't whitespace. Also, in our scheme newlines are no
1221 // whitespace (they are another special case).
1222 return ch != "\n" && (ch == nbsp || /\s/.test(ch));
1223 }
1224
1225 // This function produces a MochiKit-style iterator that tokenizes
1226 // the output of the given stringstream (see stringstream.js).
1227 // Tokens are objects with a type, style, and value property. The
1228 // value contains the textual content of the token. Because this may
1229 // include trailing whitespace (for efficiency reasons), some
1230 // tokens, such a variable names, also have a name property
1231 // containing their actual textual value.
1232 return function(source){
1233 // Produce a value to return. Automatically skips and includes any
1234 // whitespace. The base argument is prepended to the value
1235 // property and assigned to the name property -- this is used when
1236 // the caller has already extracted the text from the stream
1237 // himself.
1238 function result(type, style, base){
1239 // nextWhile(isWhiteSpace); - comment thats line because needed for autocomplete
1240 var value = {type: type, style: style, value: (base ? base + source.get() : source.get())};
1241 if (base) value.name = base;
1242 return value;
1243 }
1244
1245 // Advance the text stream over characters for which test returns
1246 // true. (The characters that are 'consumed' like this can later
1247 // be retrieved by calling source.get()).
1248 function nextWhile(test){
1249 var next;
1250 while((next = source.peek()) && test(next))
1251 source.next();
1252 }
1253 // Advance the stream until the given character (not preceded by a
1254 // backslash) is encountered (or a newline is found).
1255 function nextUntilUnescaped(end){
1256 var escaped = false;
1257 var next;
1258 while((next = source.peek()) && next != "\n"){
1259 source.next();
1260 if (next == end && !escaped)
1261 break;
1262 escaped = next == "\\";
1263 }
1264 }
1265
1266 function readHexNumber(){
1267 source.next(); // skip the 'x'
1268 nextWhile(isHexDigit);
1269 return result("number", "atom");
1270 }
1271 function readNumber(){
1272 nextWhile(isDigit);
1273 if (source.peek() == "."){
1274 source.next();
1275 nextWhile(isDigit);
1276 }
1277 if (source.peek() == "e" || source.peek() == "E"){
1278 source.next();
1279 if (source.peek() == "-")
1280 source.next();
1281 nextWhile(isDigit);
1282 }
1283 return result("number", "atom");
1284 }
1285 // Read a word, look it up in keywords. If not found, it is a
1286 // variable, otherwise it is a keyword of the type found.
1287 function readWord(){
1288 nextWhile(isWordChar);
1289 var word = source.get();
1290 var known = typoscriptWords.hasOwnProperty(word) && {type: 'keyword', style: typoscriptWords[word]};
1291 return known ? result(known.type, known.style, word) : result("variable", "other", word);
1292 }
1293 function readRegexp(){
1294 nextUntilUnescaped("/");
1295 nextWhile(matcher(/[gi]/));
1296 return result("regexp", "string");
1297 }
1298 // Mutli-line comments are tricky. We want to return the newlines
1299 // embedded in them as regular newline tokens, and then continue
1300 // returning a comment token for every line of the comment. So
1301 // some state has to be saved (inComment) to indicate whether we
1302 // are inside a /* */ sequence.
1303 function readMultilineComment(start){
1304 this.inComment = true;
1305 var maybeEnd = (start == "*");
1306 while(true){
1307 var next = source.peek();
1308 if (next == "\n")
1309 break;
1310 source.next();
1311 if (next == "/" && maybeEnd){
1312 this.inComment = false;
1313 break;
1314 }
1315 maybeEnd = (next == "*");
1316 }
1317 return result("comment", "comment");
1318 }
1319
1320 // Fetch the next token. Dispatches on first character in the
1321 // stream, or first two characters when the first is a slash. The
1322 // || things are a silly trick to keep simple cases on a single
1323 // line.
1324 function next(){
1325 var token = null;
1326 var ch = source.next();
1327 if (ch == "\n")
1328 token = {type: "newline", style: "whitespace", value: source.get()};
1329 else if (this.inComment)
1330 token = readMultilineComment.call(this, ch);
1331 else if (isWhiteSpace(ch))
1332 token = nextWhile(isWhiteSpace) || result("whitespace", "whitespace");
1333 else if (ch == "\"" || ch == "'")
1334 token = nextUntilUnescaped(ch) || result("string", "string");
1335 // with punctuation, the type of the token is the symbol itself
1336 else if (/[\[\]{}\(\),;\:\.]/.test(ch))
1337 token = result(ch, "punctuation");
1338 else if (ch == "0" && (source.peek() == "x" || source.peek() == "X"))
1339 token = readHexNumber();
1340 else if (isDigit(ch))
1341 token = readNumber();
1342 else if (ch == "/"){
1343 next = source.peek();
1344 if (next == "*")
1345 token = readMultilineComment.call(this, ch);
1346 else if (next == "/")
1347 token = nextUntilUnescaped(null) || result("comment", "comment");
1348 else if (this.regexp)
1349 token = readRegexp();
1350 else
1351 token = nextWhile(isOperatorChar) || result("operator", "operator");
1352 } else if (ch == "#")
1353 token = nextUntilUnescaped(null) || result("comment", "comment");
1354 else if (isOperatorChar(ch))
1355 token = nextWhile(isOperatorChar) || result("operator", "operator");
1356 else
1357 token = readWord();
1358
1359 // JavaScript's syntax rules for when a slash might be the start
1360 // of a regexp and when it is just a division operator are kind
1361 // of non-obvious. This decides, based on the current token,
1362 // whether the next token could be a regular expression.
1363 if (token.style != "whitespace" && token != "comment")
1364 this.regexp = token.type == "operator" || token.type == "keyword c" || token.type.match(/[\[{}\(,;:]/);
1365 return token;
1366 }
1367
1368 // Wrap it in an iterator. The state (regexp and inComment) is
1369 // exposed because a parser will need to save it when making a
1370 // copy of its state.
1371 return {next: next, regexp: true, inComment: false};
1372 }
1373 }();