From f7a17ac67dd8fe53bfbb74cd1f36e01f8238440a Mon Sep 17 00:00:00 2001 From: nightwing Date: Mon, 29 Apr 2013 23:19:25 +0400 Subject: [PATCH 01/11] smaller demo file --- demo/kitchen-sink/docs/lsl.lsl | 287 ++--- lib/ace/mode/_test/tokens_lsl.json | 1873 +++++----------------------- 2 files changed, 408 insertions(+), 1752 deletions(-) diff --git a/demo/kitchen-sink/docs/lsl.lsl b/demo/kitchen-sink/docs/lsl.lsl index e7ee8472..185b9dd4 100644 --- a/demo/kitchen-sink/docs/lsl.lsl +++ b/demo/kitchen-sink/docs/lsl.lsl @@ -1,222 +1,75 @@ -//////////////////////////////////////////////////////////////////// -// -// AbcText -// by Ange Capalini -// Originally Written 10/31/2011 -// code released to the public domain -// -//////////////////////////////////////////////////////////////////// - - -//================================================================== -// INSTRUCTIONS -//================================================================== -// -// - set Max Particles to 4096 -// - create white cube "board" <15.500, 0.010, 0.800> -// - create red cube "cursor" <0.050, 0.010, 0.030> & drop AbcText -// - link cursor (child) to board (root) -// - send message <= 25 char. to chanel 20 -// - that's all folk's -// -///////////////////////////////////////////////////////////////////// - - -//=========================================== -// CONSTANTS -//=========================================== -float Size_Point = 0.1; //pixel size -string Txt_Point = ""; //pixel texture -vector Color_Point = < 0., 0., 1. >; //pixel color -vector Size_Affich = <15.5, .01, .8>; //display size - -//=========================================== -// GLOBALS VARIABLES -//=========================================== -list Alphabet = [ " ", - "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", - "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", - - "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", - "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", - - "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", - - ":", "'", ",", "!", "?", "#", ".", "/", "-", "é", "è", "à" ]; - -//char matrix 6 x 5 points -list Matrices = [ " ", - "011001001010010111101001000000", //A - "111001001011100100101110000000", - "011001000010000100000110000000", - "111001001010010100101110000000", - "111001000011100100001110000000", - "111001000011100100001000000000", - "011101000010110100100111000000", - "100101001011110100101001000000", - "111000100001000010001110000000", - "001100001000010100100110000000", - "100101010011000101001001000000", - "100001000010000100001110000000", - "100011101110101100011000100000", - "100101101010110100101001000000", - "011001001010010100100110000000", - "111001001010010111001000000000", - "011001001010010100100110000010", - "111001001010010111001001000000", - "011101000001100000101110000000", - "111000100001000010000100000000", - "100101001010010100100110000000", - "100101001010100101000100000000", - "100011010110101101010101000000", - "100101001001100100101001000000", - "100101001001110000100110000000", - "111100001001100100001111000000", //Z - - "000000110010010100100111000000", //a - "100001110010010100101110000000", - "000000110010000100000110000000", - "000100111010010100100111000000", - "000000111010010101000111000000", - "011001000011000100001000000000", - "011001001010010011100001001100", - "100001110010010100101001000000", - "100000000010000100001000000000", - "001000000000100001000010011000", - "100001001010100110101001000000", - "100001000010000100001000000000", - "000001101010101101011010100000", - "000001110010010100101001000000", - "000000110010010100100110000000", - "111001001010010111001000010000", - "011101001010010011100001000010", - "000001010011000100001000000000", - "000000111011000001101110000000", - "010001110001000010000100000000", - "000001001010010100100111000000", - "000001001010010100100110000000", - "000001010110101101010101000000", - "000001001001100011001001000000", - "100101001010010011100001001100", - "000001111000100010001111000000", //z - - "011001001010010100100110000000", //0 - "011000010000100001000010000000", - "111000001001100100001111000000", - "111000001001100000101110000000", - "001000110010100111100010000000", - "111101000011100000101110000000", - "011001000011100100100110000000", - "111100001000100010000100000000", - "011001001001100100100110000000", - "011001001001110000100110000000", //9 - - "000000000000100000000010000000", //: - "000100010000000000000000000000", - "000000000000000000100010000000", - "001000010000100000000010000000", - "001000101000010001000000000100", - "010101111101010111110101000000", - "000000000000000000000010000000", - "000010001000100010001000000000", - "000000000001110000000000000000", - "000100110010010101000111000000", - "010000111010010101000111000000", - "010000110010010100100111000000" //à - ]; - -list Particle_Parameters=[]; -vector Origine; -string Texte; -integer id_Phrase; -integer len_Phrase; -integer id_Lettre; -string Lettre; -string matrice_Lettre; -vector point_zero; -integer x; -integer z; - -//=========================================== -// SET PARTICLES -//=========================================== - -init_particles(){ - - Particle_Parameters = [ - PSYS_SRC_TEXTURE, Txt_Point, - PSYS_PART_START_SCALE, < Size_Point, Size_Point, FALSE >, - PSYS_PART_END_SCALE, < Size_Point, Size_Point, FALSE >, - PSYS_PART_START_COLOR, Color_Point, - PSYS_PART_END_COLOR, Color_Point, - - PSYS_SRC_BURST_PART_COUNT, (integer)1, - PSYS_SRC_BURST_RATE, (float) 0.0, - PSYS_PART_MAX_AGE, (float) 30.0, - - PSYS_SRC_PATTERN, (integer) 1, - - PSYS_PART_FLAGS, - PSYS_PART_EMISSIVE_MASK - ]; +/* + Testing syntax highlighting + of Ace Editor + for the Linden Scripting Language +*/ + +integer someIntNormal = 3672; +integer someIntHex = 0x00000000; +integer someIntMath = PI_BY_TWO; + +integer event = 5673; // invalid reserved keyword! + +key someKeyTexture = TEXTURE_DEFAULT; +string someStringSpecial = EOF; + +some_user_defined_function_without_return_type(string inputAsString) +{ + llSay(PUBLIC_CHANNEL, inputAsString); } - -//=========================================== -// SET DISPLAY -//=========================================== -affichage (string phrase) { - - integer len_Phrase = llStringLength(phrase)-1; - for(id_Phrase = 0; id_Phrase <= len_Phrase;++id_Phrase){ - Lettre = llGetSubString(phrase, id_Phrase, id_Phrase); - id_Lettre = llListFindList(Alphabet, [Lettre]); - matrice_Lettre = llList2String(Matrices, id_Lettre); - z=0; - do{ - x=0; - do{ - if( (integer)llGetSubString(matrice_Lettre, x + 5*z, x + 5*z) ) { - llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_POSITION, point_zero + < x*Size_Point, 0.0, -z*Size_Point > ]); - llParticleSystem( Particle_Parameters ); - llSleep(0.12); - llParticleSystem( [] ); - } - } while( ++x <= 4); - } while( ++z <= 5); - - point_zero += < 6. * Size_Point, 0.0, 0.0 >; //locate next char + +string user_defined_function_returning_a_string(key inputAsKey) +{ + return (string)inputAsKey; +} + +default +{ + state_entry() + { + key someKey = NULL_KEY; + someKey = llGetOwner(); + + string someString = user_defined_function_returning_a_string(someKey); + + some_user_defined_function_without_return_type(someString); + } + + touch_start(integer num_detected) + { + list agentsInRegion = llGetAgentList(AGENT_LIST_REGION, []); + integer numOfAgents = llGetListLength(agentsInRegion); + + integer index; // defaults to 0 + for (; index <= numOfAgents - 1; index++) // for each agent in region + { + llRegionSayTo(llList2Key(agentsInRegion, index), PUBLIC_CHANNEL, "Hello, Avatar!"); + } + } + + touch_end(integer num_detected) + { + someIntNormal = 3672; + someIntHex = 0x00000000; + someIntMath = PI_BY_TWO; + + event = 5673; // invalid reserved keyword! + + someKeyTexture = TEXTURE_DEFAULT; + someStringSpecial = EOF; + + llCollisionSprite(someKeyTexture); // invalid deprecated function! + + llWhisper(PUBLIC_CHANNEL, "Leaving \"default\" now..."); + state other; } } -///////////////////////////////////// -///////////////////////////////////// -///////////////////////////////////// -///////////////////////////////////// - - -default { - - state_entry() { - - llListen(20, "", llGetOwner(), ""); - init_particles(); - Origine = < (-0.48 * Size_Affich.x) , (-1.25 * Size_Point) , (0.3 * Size_Affich.z) >; //raz cursor + +state other +{ + state_entry() + { + llWhisper(PUBLIC_CHANNEL, "Entered \"state other\", returning to \"default\" again..."); + state default; } - - listen( integer channel, string name, key id, string msg ) { - - Texte = msg; - point_zero = Origine; //raz cursor - llSetTimerEvent(30.); - affichage(Texte); - } - - timer(){ - - point_zero = Origine; //raz cursor - affichage(Texte); - } - - on_rez(integer param) {llResetScript();} - changed(integer mask) {if(mask & CHANGED_OWNER) {llResetScript();}} - } diff --git a/lib/ace/mode/_test/tokens_lsl.json b/lib/ace/mode/_test/tokens_lsl.json index bc4e01c0..c51c0a6f 100644 --- a/lib/ace/mode/_test/tokens_lsl.json +++ b/lib/ace/mode/_test/tokens_lsl.json @@ -1,1623 +1,430 @@ [[ - "start", - ["comment.line","//////////////////////////////////////////////////////////////////// "] + "comment", + ["comment.block","/*"] +],[ + "comment", + ["comment.block"," Testing syntax highlighting"] +],[ + "comment", + ["comment.block"," of Ace Editor"] +],[ + "comment", + ["comment.block"," for the Linden Scripting Language"] ],[ "start", - ["comment.line","//"] + ["comment.block","*/"] +],[ + "start" ],[ "start", - ["comment.line","// AbcText"] -],[ - "start", - ["comment.line","// by Ange Capalini"] -],[ - "start", - ["comment.line","// Originally Written 10/31/2011"] -],[ - "start", - ["comment.line","// code released to the public domain"] -],[ - "start", - ["comment.line","// "] -],[ - "start", - ["comment.line","//////////////////////////////////////////////////////////////////// "] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["comment.line","//=================================================================="] -],[ - "start", - ["comment.line","// INSTRUCTIONS"] -],[ - "start", - ["comment.line","//=================================================================="] -],[ - "start", - ["comment.line","//"] -],[ - "start", - ["comment.line","// - set Max Particles to 4096"] -],[ - "start", - ["comment.line","// - create white cube \"board\" <15.500, 0.010, 0.800>"] -],[ - "start", - ["comment.line","// - create red cube \"cursor\" <0.050, 0.010, 0.030> & drop AbcText"] -],[ - "start", - ["comment.line","// - link cursor (child) to board (root)"] -],[ - "start", - ["comment.line","// - send message <= 25 char. to chanel 20"] -],[ - "start", - ["comment.line","// - that's all folk's"] -],[ - "start", - ["comment.line","//"] -],[ - "start", - ["comment.line","/////////////////////////////////////////////////////////////////////"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["comment.line","//==========================================="] -],[ - "start", - ["comment.line","// CONSTANTS"] -],[ - "start", - ["comment.line","//==========================================="] -],[ - "start", - ["storage.type","float"], - ["text"," "], - ["identifier","Size_Point"], + ["storage.type","integer"], ["text"," "], + ["identifier","someIntNormal"], + ["text"," "], ["keyword.operator","="], ["text"," "], - ["constant.numeric","0.1"], - ["punctuation.operator",";"], + ["constant.numeric","3672"], + ["punctuation.operator",";"] +],[ + "start", + ["storage.type","integer"], ["text"," "], - ["comment.line","//pixel size"] + ["identifier","someIntHex"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.numeric","0x00000000"], + ["punctuation.operator",";"] +],[ + "start", + ["storage.type","integer"], + ["text"," "], + ["identifier","someIntMath"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.language","PI_BY_TWO"], + ["punctuation.operator",";"] +],[ + "start" +],[ + "start", + ["storage.type","integer"], + ["text"," "], + ["invalid.illegal","event"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.numeric","5673"], + ["punctuation.operator",";"], + ["text"," "], + ["comment.line","// invalid reserved keyword!"] +],[ + "start" +],[ + "start", + ["storage.type","key"], + ["text"," "], + ["identifier","someKeyTexture"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.language","TEXTURE_DEFAULT"], + ["punctuation.operator",";"] ],[ "start", ["storage.type","string"], ["text"," "], - ["identifier","Txt_Point"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["string.double","\"\""], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//pixel texture"] -],[ - "start", - ["storage.type","vector"], - ["text"," "], - ["identifier","Color_Point"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["keyword.operator","<"], - ["text"," "], - ["constant.numeric","0"], - ["punctuation.operator",".,"], - ["text"," "], - ["constant.numeric","0"], - ["punctuation.operator",".,"], - ["text"," "], - ["constant.numeric","1"], - ["punctuation.operator","."], - ["text"," "], - ["keyword.operator",">"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//pixel color"] -],[ - "start", - ["storage.type","vector"], - ["text"," "], - ["identifier","Size_Affich"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["keyword.operator","<"], - ["constant.numeric","15.5"], - ["punctuation.operator",","], - ["text"," "], - ["punctuation.operator","."], - ["constant.numeric","01"], - ["punctuation.operator",","], - ["text"," "], - ["punctuation.operator","."], - ["constant.numeric","8"], - ["keyword.operator",">"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//display size"] -],[ - "start", - ["text"," "] -],[ - "start", - ["comment.line","//==========================================="] -],[ - "start", - ["comment.line","// GLOBALS VARIABLES"] -],[ - "start", - ["comment.line","//==========================================="] -],[ - "start", - ["storage.type","list"], - ["text"," "], - ["identifier","Alphabet"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["paren.lparen","["], - ["text"," "], - ["string.double","\" \""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"A\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"B\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"C\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"D\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"E\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"F\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"G\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"H\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"I\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"J\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"K\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"L\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"M\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"N\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"O\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"P\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"Q\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"R\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"S\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"T\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"U\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"V\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"W\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"X\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"Y\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"Z\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"a\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"b\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"c\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"d\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"e\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"f\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"g\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"h\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"i\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"j\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"k\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"l\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"m\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"n\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"o\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"p\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"q\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"r\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"s\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"t\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"u\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"v\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"w\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"x\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"y\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"z\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"0\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"1\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"2\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"3\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"4\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"5\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"6\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"7\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"8\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"9\""], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\":\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"'\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\",\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"!\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"?\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"#\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\".\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"/\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"-\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"�\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"�\""], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"�\""], - ["text"," "], - ["paren.rparen","]"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "] -],[ - "start", - ["comment.line","//char matrix 6 x 5 points"] -],[ - "start", - ["storage.type","list"], - ["text"," "], - ["identifier","Matrices"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["paren.lparen","["], - ["text"," "], - ["string.double","\" \""], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"011001001010010111101001000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//A"] -],[ - "start", - ["text"," "], - ["string.double","\"111001001011100100101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001000010000100000110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111001001010010100101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111001000011100100001110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111001000011100100001000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011101000010110100100111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101001011110100101001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111000100001000010001110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"001100001000010100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101010011000101001001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100001000010000100001110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100011101110101100011000100000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101101010110100101001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001001010010100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111001001010010111001000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001001010010100100110000010\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111001001010010111001001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011101000001100000101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111000100001000010000100000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101001010010100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101001010100101000100000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100011010110101101010101000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101001001100100101001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101001001110000100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111100001001100100001111000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//Z"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"000000110010010100100111000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//a"] -],[ - "start", - ["text"," "], - ["string.double","\"100001110010010100101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000000110010000100000110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000100111010010100100111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000000111010010101000111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001000011000100001000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001001010010011100001001100\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100001110010010100101001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100000000010000100001000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"001000000000100001000010011000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100001001010100110101001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100001000010000100001000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001101010101101011010100000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001110010010100101001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000000110010010100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111001001010010111001000010000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011101001010010011100001000010\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001010011000100001000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000000111011000001101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"010001110001000010000100000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001001010010100100111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001001010010100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001010110101101010101000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001001001100011001001000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"100101001010010011100001001100\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000001111000100010001111000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//z"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"011001001010010100100110000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//0"] -],[ - "start", - ["text"," "], - ["string.double","\"011000010000100001000010000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111000001001100100001111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111000001001100000101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"001000110010100111100010000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111101000011100000101110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001000011100100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"111100001000100010000100000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001001001100100100110000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"011001001001110000100110000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//9"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"000000000000100000000010000000\""], - ["punctuation.operator",","], - ["text"," "], - ["comment.line","//:"] -],[ - "start", - ["text"," "], - ["string.double","\"000100010000000000000000000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"000000000000000000100010000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"001000010000100000000010000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"001000101000010001000000000100\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"010101111101010111110101000000\""], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"000000000000000000000010000000\""], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"000010001000100010001000000000\""], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"000000000001110000000000000000\""], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["string.double","\"000100110010010101000111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"010000111010010101000111000000\""], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["string.double","\"010000110010010100100111000000\""], - ["text"," "], - ["comment.line","//�"] -],[ - "start", - ["text"," "], - ["paren.rparen","]"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "] -],[ - "start", - ["storage.type","list"], + ["identifier","someStringSpecial"], ["text"," "], - ["identifier","Particle_Parameters"], ["keyword.operator","="], - ["paren.lparen","["], - ["paren.rparen","]"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","vector"], - ["text"," "], - ["identifier","Origine"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","string"], - ["text"," "], - ["identifier","Texte"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","integer"], ["text"," "], - ["identifier","id_Phrase"], + ["constant.language","EOF"], ["punctuation.operator",";"] ],[ - "start", - ["storage.type","integer"], - ["text"," "], - ["identifier","len_Phrase"], - ["punctuation.operator",";"] + "start" ],[ "start", - ["storage.type","integer"], - ["text"," "], - ["identifier","id_Lettre"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","string"], - ["text"," "], - ["identifier","Lettre"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","string"], - ["text"," "], - ["identifier","matrice_Lettre"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","vector"], - ["text"," "], - ["identifier","point_zero"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","integer"], - ["text"," "], - ["identifier","x"], - ["punctuation.operator",";"] -],[ - "start", - ["storage.type","integer"], - ["text"," "], - ["identifier","z"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "] -],[ - "start", - ["comment.line","//==========================================="] -],[ - "start", - ["comment.line","// SET PARTICLES"] -],[ - "start", - ["comment.line","//==========================================="] -],[ - "start", - ["text"," "] -],[ - "start", - ["identifier","init_particles"], + ["identifier","some_user_defined_function_without_return_type"], ["paren.lparen","("], - ["paren.rparen",")"], + ["storage.type","string"], + ["text"," "], + ["identifier","inputAsString"], + ["paren.rparen",")"] +],[ + "start", ["paren.lparen","{"] -],[ - "start", - ["text"," "] ],[ "start", ["text"," "], - ["identifier","Particle_Parameters"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["paren.lparen","["], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_SRC_TEXTURE"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","Txt_Point"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_START_SCALE"], - ["punctuation.operator",","], - ["text"," "], - ["keyword.operator","<"], - ["text"," "], - ["identifier","Size_Point"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","Size_Point"], - ["punctuation.operator",","], - ["text"," "], - ["constant.language","FALSE"], - ["text"," "], - ["keyword.operator",">"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_END_SCALE"], - ["punctuation.operator",","], - ["text"," "], - ["keyword.operator","<"], - ["text"," "], - ["identifier","Size_Point"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","Size_Point"], - ["punctuation.operator",","], - ["text"," "], - ["constant.language","FALSE"], - ["text"," "], - ["keyword.operator",">"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_START_COLOR"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","Color_Point"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_END_COLOR"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","Color_Point"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_SRC_BURST_PART_COUNT"], - ["punctuation.operator",","], - ["text"," "], + ["support.function","llSay"], ["paren.lparen","("], - ["storage.type","integer"], + ["constant.language","PUBLIC_CHANNEL"], + ["punctuation.operator",","], + ["text"," "], + ["identifier","inputAsString"], ["paren.rparen",")"], - ["constant.numeric","1"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_SRC_BURST_RATE"], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","("], - ["storage.type","float"], - ["paren.rparen",")"], - ["text"," "], - ["constant.numeric","0.0"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_MAX_AGE"], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","("], - ["storage.type","float"], - ["paren.rparen",")"], - ["text"," "], - ["constant.numeric","30.0"], - ["punctuation.operator",","], - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_SRC_PATTERN"], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","("], - ["storage.type","integer"], - ["paren.rparen",")"], - ["text"," "], - ["constant.numeric","1"], - ["punctuation.operator",","] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_FLAGS"], - ["punctuation.operator",","] -],[ - "start", - ["text"," "], - ["constant.language","PSYS_PART_EMISSIVE_MASK"] -],[ - "start", - ["text"," "], - ["paren.rparen","]"], ["punctuation.operator",";"] ],[ "start", ["paren.rparen","}"] ],[ - "start", - ["text"," "] + "start" ],[ "start", - ["comment.line","//==========================================="] + ["storage.type","string"], + ["text"," "], + ["identifier","user_defined_function_returning_a_string"], + ["paren.lparen","("], + ["storage.type","key"], + ["text"," "], + ["identifier","inputAsKey"], + ["paren.rparen",")"] ],[ "start", - ["comment.line","// SET DISPLAY"] + ["paren.lparen","{"] ],[ "start", - ["comment.line","//==========================================="] -],[ - "start", - ["identifier","affichage"], + ["text"," "], + ["keyword.control","return"], ["text"," "], ["paren.lparen","("], ["storage.type","string"], - ["text"," "], - ["identifier","phrase"], - ["paren.rparen",")"], - ["text"," "], - ["paren.lparen","{"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["storage.type","integer"], - ["text"," "], - ["identifier","len_Phrase"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llStringLength"], - ["paren.lparen","("], - ["identifier","phrase"], - ["paren.rparen",")"], - ["constant.numeric","-1"], - ["punctuation.operator",";"], - ["text"," "] -],[ - "start", - ["text"," "], - ["keyword.control","for"], - ["paren.lparen","("], - ["identifier","id_Phrase"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","0"], - ["punctuation.operator",";"], - ["text"," "], - ["identifier","id_Phrase"], - ["text"," "], - ["keyword.operator","<="], - ["text"," "], - ["identifier","len_Phrase"], - ["punctuation.operator",";"], - ["keyword.operator","++"], - ["identifier","id_Phrase"], - ["paren.rparen",")"], - ["paren.lparen","{"], - ["text"," "] -],[ - "start", - ["text"," "], - ["identifier","Lettre"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llGetSubString"], - ["paren.lparen","("], - ["identifier","phrase"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","id_Phrase"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","id_Phrase"], ["paren.rparen",")"], + ["identifier","inputAsKey"], ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["identifier","id_Lettre"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llListFindList"], - ["paren.lparen","("], - ["identifier","Alphabet"], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","["], - ["identifier","Lettre"], - ["paren.rparen","])"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["identifier","matrice_Lettre"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llList2String"], - ["paren.lparen","("], - ["identifier","Matrices"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","id_Lettre"], - ["paren.rparen",")"], - ["punctuation.operator",";"], - ["text"," "] -],[ - "start", - ["text"," "], - ["identifier","z"], - ["keyword.operator","="], - ["constant.numeric","0"], - ["punctuation.operator",";"], - ["text"," "] -],[ - "start", - ["text"," "], - ["keyword.control","do"], - ["paren.lparen","{"], - ["text"," "] -],[ - "start", - ["text"," "], - ["identifier","x"], - ["keyword.operator","="], - ["constant.numeric","0"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["keyword.control","do"], - ["paren.lparen","{"] -],[ - "start", - ["text"," "], - ["keyword.control","if"], - ["paren.lparen","("], - ["text"," "], - ["paren.lparen","("], - ["storage.type","integer"], - ["paren.rparen",")"], - ["support.function","llGetSubString"], - ["paren.lparen","("], - ["identifier","matrice_Lettre"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","x"], - ["text"," "], - ["keyword.operator","+"], - ["text"," "], - ["constant.numeric","5"], - ["keyword.operator","*"], - ["identifier","z"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","x"], - ["text"," "], - ["keyword.operator","+"], - ["text"," "], - ["constant.numeric","5"], - ["keyword.operator","*"], - ["identifier","z"], - ["paren.rparen",")"], - ["text"," "], - ["paren.rparen",")"], - ["text"," "], - ["paren.lparen","{"] -],[ - "start", - ["text"," "], - ["support.function","llSetLinkPrimitiveParamsFast"], - ["paren.lparen","("], - ["constant.language","LINK_THIS"], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","["], - ["constant.language","PRIM_POSITION"], - ["punctuation.operator",","], - ["text"," "], - ["identifier","point_zero"], - ["text"," "], - ["keyword.operator","+"], - ["text"," "], - ["keyword.operator","<"], - ["text"," "], - ["identifier","x"], - ["keyword.operator","*"], - ["identifier","Size_Point"], - ["punctuation.operator",","], - ["text"," "], - ["constant.numeric","0.0"], - ["punctuation.operator",","], - ["text"," "], - ["keyword.operator","-"], - ["identifier","z"], - ["keyword.operator","*"], - ["identifier","Size_Point"], - ["text"," "], - ["keyword.operator",">"], - ["text"," "], - ["paren.rparen","])"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["support.function","llParticleSystem"], - ["paren.lparen","("], - ["text"," "], - ["identifier","Particle_Parameters"], - ["text"," "], - ["paren.rparen",")"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["support.function","llSleep"], - ["paren.lparen","("], - ["constant.numeric","0.12"], - ["paren.rparen",")"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["support.function","llParticleSystem"], - ["paren.lparen","("], - ["text"," "], - ["paren.lparen","["], - ["paren.rparen","]"], - ["text"," "], - ["paren.rparen",")"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["paren.rparen","}"] -],[ - "start", - ["text"," "], - ["paren.rparen","}"], - ["text"," "], - ["keyword.control","while"], - ["paren.lparen","("], - ["text"," "], - ["keyword.operator","++"], - ["identifier","x"], - ["text"," "], - ["keyword.operator","<="], - ["text"," "], - ["constant.numeric","4"], - ["paren.rparen",")"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["paren.rparen","}"], - ["text"," "], - ["keyword.control","while"], - ["paren.lparen","("], - ["text"," "], - ["keyword.operator","++"], - ["identifier","z"], - ["text"," "], - ["keyword.operator","<="], - ["text"," "], - ["constant.numeric","5"], - ["paren.rparen",")"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["identifier","point_zero"], - ["text"," "], - ["keyword.operator","+="], - ["text"," "], - ["keyword.operator","<"], - ["text"," "], - ["constant.numeric","6"], - ["punctuation.operator","."], - ["text"," "], - ["keyword.operator","*"], - ["text"," "], - ["identifier","Size_Point"], - ["punctuation.operator",","], - ["text"," "], - ["constant.numeric","0.0"], - ["punctuation.operator",","], - ["text"," "], - ["constant.numeric","0.0"], - ["text"," "], - ["keyword.operator",">"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//locate next char"] -],[ - "start", - ["text"," "], - ["paren.rparen","}"] ],[ "start", ["paren.rparen","}"] ],[ - "start", - ["comment.line","/////////////////////////////////////"] + "start" ],[ "start", - ["comment.line","///////////////////////////////////// "] + ["keyword.other","default"] ],[ "start", - ["comment.line","/////////////////////////////////////"] -],[ - "start", - ["comment.line","/////////////////////////////////////"] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["keyword.other","default"], - ["text"," "], ["paren.lparen","{"] -],[ - "start", - ["text"," "] ],[ "start", ["text"," "], ["support.function.event","state_entry"], ["paren.lparen","("], - ["paren.rparen",")"], - ["text"," "], + ["paren.rparen",")"] +],[ + "start", + ["text"," "], ["paren.lparen","{"] ],[ "start", - ["text"," "] + ["text"," "], + ["storage.type","key"], + ["text"," "], + ["identifier","someKey"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.language","NULL_KEY"], + ["punctuation.operator",";"] ],[ "start", ["text"," "], - ["support.function","llListen"], - ["paren.lparen","("], - ["constant.numeric","20"], - ["punctuation.operator",","], + ["identifier","someKey"], ["text"," "], - ["string.double","\"\""], - ["punctuation.operator",","], + ["keyword.operator","="], ["text"," "], ["support.function","llGetOwner"], ["paren.lparen","("], ["paren.rparen",")"], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"\""], - ["paren.rparen",")"], ["punctuation.operator",";"] ],[ - "start", - ["text"," "], - ["identifier","init_particles"], - ["paren.lparen","("], - ["paren.rparen",")"], - ["punctuation.operator",";"], - ["text"," "] + "start" ],[ "start", ["text"," "], - ["identifier","Origine"], + ["storage.type","string"], + ["text"," "], + ["identifier","someString"], ["text"," "], ["keyword.operator","="], ["text"," "], - ["keyword.operator","<"], - ["text"," "], + ["identifier","user_defined_function_returning_a_string"], ["paren.lparen","("], - ["constant.numeric","-0.48"], - ["text"," "], - ["keyword.operator","*"], - ["text"," "], - ["identifier","Size_Affich"], - ["punctuation.operator","."], - ["identifier","x"], + ["identifier","someKey"], ["paren.rparen",")"], - ["text"," "], - ["punctuation.operator",","], - ["text"," "], + ["punctuation.operator",";"] +],[ + "start" +],[ + "start", + ["text"," "], + ["identifier","some_user_defined_function_without_return_type"], ["paren.lparen","("], - ["constant.numeric","-1.25"], - ["text"," "], - ["keyword.operator","*"], - ["text"," "], - ["identifier","Size_Point"], + ["identifier","someString"], ["paren.rparen",")"], - ["text"," "], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","("], - ["constant.numeric","0.3"], - ["text"," "], - ["keyword.operator","*"], - ["text"," "], - ["identifier","Size_Affich"], - ["punctuation.operator","."], - ["identifier","z"], - ["paren.rparen",")"], - ["text"," "], - ["keyword.operator",">"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//raz cursor"] + ["punctuation.operator",";"] ],[ "start", ["text"," "], ["paren.rparen","}"] ],[ - "start", - ["text"," "] + "start" ],[ "start", ["text"," "], - ["support.function.event","listen"], + ["support.function.event","touch_start"], ["paren.lparen","("], - ["text"," "], ["storage.type","integer"], ["text"," "], - ["identifier","channel"], - ["punctuation.operator",","], - ["text"," "], - ["storage.type","string"], - ["text"," "], - ["identifier","name"], - ["punctuation.operator",","], - ["text"," "], - ["storage.type","key"], - ["text"," "], - ["identifier","id"], - ["punctuation.operator",","], - ["text"," "], - ["storage.type","string"], - ["text"," "], - ["identifier","msg"], - ["text"," "], - ["paren.rparen",")"], - ["text"," "], + ["identifier","num_detected"], + ["paren.rparen",")"] +],[ + "start", + ["text"," "], ["paren.lparen","{"] -],[ - "start", - ["text"," "] ],[ "start", ["text"," "], - ["identifier","Texte"], + ["storage.type","list"], + ["text"," "], + ["identifier","agentsInRegion"], ["text"," "], ["keyword.operator","="], ["text"," "], - ["identifier","msg"], + ["support.function","llGetAgentList"], + ["paren.lparen","("], + ["constant.language","AGENT_LIST_REGION"], + ["punctuation.operator",","], + ["text"," "], + ["paren.lparen","["], + ["paren.rparen","])"], ["punctuation.operator",";"] ],[ "start", ["text"," "], - ["identifier","point_zero"], + ["storage.type","integer"], + ["text"," "], + ["identifier","numOfAgents"], ["text"," "], ["keyword.operator","="], ["text"," "], - ["identifier","Origine"], + ["support.function","llGetListLength"], + ["paren.lparen","("], + ["identifier","agentsInRegion"], + ["paren.rparen",")"], + ["punctuation.operator",";"] +],[ + "start" +],[ + "start", + ["text"," "], + ["storage.type","integer"], + ["text"," "], + ["identifier","index"], ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//raz cursor "] + ["text"," "], + ["comment.line","// defaults to 0"] ],[ "start", ["text"," "], - ["support.function","llSetTimerEvent"], + ["keyword.control","for"], + ["text"," "], ["paren.lparen","("], - ["constant.numeric","30"], - ["punctuation.operator","."], + ["punctuation.operator",";"], + ["text"," "], + ["identifier","index"], + ["text"," "], + ["keyword.operator","<="], + ["text"," "], + ["identifier","numOfAgents"], + ["text"," "], + ["keyword.operator","-"], + ["text"," "], + ["constant.numeric","1"], + ["punctuation.operator",";"], + ["text"," "], + ["identifier","index"], + ["keyword.operator","++"], ["paren.rparen",")"], - ["punctuation.operator",";"] + ["text"," "], + ["comment.line","// for each agent in region"] ],[ "start", ["text"," "], - ["identifier","affichage"], - ["paren.lparen","("], - ["identifier","Texte"], - ["paren.rparen",")"], - ["punctuation.operator",";"] -],[ - "start", - ["text"," "], - ["paren.rparen","}"], - ["text"," "] -],[ - "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["support.function.event","timer"], - ["paren.lparen","("], - ["paren.rparen",")"], ["paren.lparen","{"] ],[ "start", - ["text"," "] + ["text"," "], + ["support.function","llRegionSayTo"], + ["paren.lparen","("], + ["support.function","llList2Key"], + ["paren.lparen","("], + ["identifier","agentsInRegion"], + ["punctuation.operator",","], + ["text"," "], + ["identifier","index"], + ["paren.rparen",")"], + ["punctuation.operator",","], + ["text"," "], + ["constant.language","PUBLIC_CHANNEL"], + ["punctuation.operator",","], + ["text"," "], + ["string.double","\"Hello, Avatar!\""], + ["paren.rparen",")"], + ["punctuation.operator",";"] ],[ "start", ["text"," "], - ["identifier","point_zero"], + ["paren.rparen","}"] +],[ + "start", + ["text"," "], + ["paren.rparen","}"] +],[ + "start" +],[ + "start", + ["text"," "], + ["support.function.event","touch_end"], + ["paren.lparen","("], + ["storage.type","integer"], ["text"," "], + ["identifier","num_detected"], + ["paren.rparen",")"] +],[ + "start", + ["text"," "], + ["paren.lparen","{"] +],[ + "start", + ["text"," "], + ["identifier","someIntNormal"], + ["text"," "], ["keyword.operator","="], ["text"," "], - ["identifier","Origine"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","//raz cursor"] + ["constant.numeric","3672"], + ["punctuation.operator",";"] ],[ "start", ["text"," "], - ["identifier","affichage"], + ["identifier","someIntHex"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.numeric","0x00000000"], + ["punctuation.operator",";"] +],[ + "start", + ["text"," "], + ["identifier","someIntMath"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.language","PI_BY_TWO"], + ["punctuation.operator",";"] +],[ + "start" +],[ + "start", + ["text"," "], + ["invalid.illegal","event"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.numeric","5673"], + ["punctuation.operator",";"], + ["text"," "], + ["comment.line","// invalid reserved keyword!"] +],[ + "start" +],[ + "start", + ["text"," "], + ["identifier","someKeyTexture"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.language","TEXTURE_DEFAULT"], + ["punctuation.operator",";"] +],[ + "start", + ["text"," "], + ["identifier","someStringSpecial"], + ["text"," "], + ["keyword.operator","="], + ["text"," "], + ["constant.language","EOF"], + ["punctuation.operator",";"] +],[ + "start" +],[ + "start", + ["text"," "], + ["invalid.deprecated","llCollisionSprite"], ["paren.lparen","("], - ["identifier","Texte"], + ["identifier","someKeyTexture"], ["paren.rparen",")"], + ["punctuation.operator",";"], + ["text"," "], + ["comment.line","// invalid deprecated function!"] +],[ + "start" +],[ + "start", + ["text"," "], + ["support.function","llWhisper"], + ["paren.lparen","("], + ["constant.language","PUBLIC_CHANNEL"], + ["punctuation.operator",","], + ["text"," "], + ["string.double","\"Leaving \\\"default\\\" now...\""], + ["paren.rparen",")"], + ["punctuation.operator",";"] +],[ + "start", + ["text"," "], + ["keyword.other","state"], + ["text"," "], + ["identifier","other"], ["punctuation.operator",";"] ],[ "start", @@ -1625,53 +432,49 @@ ["paren.rparen","}"] ],[ "start", - ["text"," "] -],[ - "start", - ["text"," "], - ["support.function.event","on_rez"], - ["paren.lparen","("], - ["storage.type","integer"], - ["text"," "], - ["identifier","param"], - ["paren.rparen",")"], - ["text"," "], - ["paren.lparen","{"], - ["support.function","llResetScript"], - ["paren.lparen","("], - ["paren.rparen",")"], - ["punctuation.operator",";"], ["paren.rparen","}"] ],[ - "start", - ["text"," "], - ["support.function.event","changed"], - ["paren.lparen","("], - ["storage.type","integer"], - ["text"," "], - ["identifier","mask"], - ["paren.rparen",")"], - ["text"," "], - ["paren.lparen","{"], - ["keyword.control","if"], - ["paren.lparen","("], - ["identifier","mask"], - ["text"," "], - ["keyword.operator","&"], - ["text"," "], - ["constant.language","CHANGED_OWNER"], - ["paren.rparen",")"], - ["text"," "], - ["paren.lparen","{"], - ["support.function","llResetScript"], - ["paren.lparen","("], - ["paren.rparen",")"], - ["punctuation.operator",";"], - ["paren.rparen","}}"], - ["text"," "] + "start" ],[ "start", - ["text"," "] + ["keyword.other","state"], + ["text"," "], + ["identifier","other"] +],[ + "start", + ["paren.lparen","{"] +],[ + "start", + ["text"," "], + ["support.function.event","state_entry"], + ["paren.lparen","("], + ["paren.rparen",")"] +],[ + "start", + ["text"," "], + ["paren.lparen","{"] +],[ + "start", + ["text"," "], + ["support.function","llWhisper"], + ["paren.lparen","("], + ["constant.language","PUBLIC_CHANNEL"], + ["punctuation.operator",","], + ["text"," "], + ["string.double","\"Entered \\\"state other\\\", returning to \\\"default\\\" again...\""], + ["paren.rparen",")"], + ["punctuation.operator",";"] +],[ + "start", + ["text"," "], + ["keyword.other","state"], + ["text"," "], + ["keyword.other","default"], + ["punctuation.operator",";"] +],[ + "start", + ["text"," "], + ["paren.rparen","}"] ],[ "start", ["paren.rparen","}"] From b1d7fc75577664bfa9ab46890f4ac65b7ea264c6 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Mon, 15 Apr 2013 19:58:42 +0200 Subject: [PATCH 02/11] attempting to fix LSL for Ace --- lib/ace/mode/lsl.js | 19 +- lib/ace/mode/lsl_highlight_rules.js | 619 ++++++++++++++-------------- 2 files changed, 317 insertions(+), 321 deletions(-) diff --git a/lib/ace/mode/lsl.js b/lib/ace/mode/lsl.js index 0be8be85..f839ef16 100644 --- a/lib/ace/mode/lsl.js +++ b/lib/ace/mode/lsl.js @@ -31,17 +31,17 @@ define(function(require, exports, module) { "use strict"; -var oop = require("../lib/oop"); -var TextMode = require("./text").Mode; var Tokenizer = require("../tokenizer").Tokenizer; -var lslHighlightRules = require("./lsl_highlight_rules").lslHighlightRules; -var MatchingBraceOutdent = require("./matching_brace_outdent").MatchingBraceOutdent; +var Rules = require("./lsl_highlight_rules").LSLHighlightRules; +var Outdent = require("./matching_brace_outdent").MatchingBraceOutdent; var Range = require("../range").Range; +var TextMode = require("./text").Mode; var CstyleBehaviour = require("./behaviour/cstyle").CstyleBehaviour; var CStyleFoldMode = require("./folding/cstyle").FoldMode; +var oop = require("../lib/oop"); var Mode = function() { - this.$tokenizer = new Tokenizer(new lslHighlightRules().getRules()); + this.$tokenizer = new Tokenizer(new Rules().getRules()); this.$outdent = new MatchingBraceOutdent(); this.$behaviour = new CstyleBehaviour(); this.foldingRules = new CStyleFoldMode(); @@ -52,7 +52,10 @@ oop.inherits(Mode, TextMode); this.lineCommentStart = ["//"]; - this.blockComment = {start: "/*", end: "*/"}; + this.blockComment = { + start: "/*", + end: "*/" + }; this.getNextLineIndent = function(state, line, tab) { var indent = this.$getIndent(line); @@ -61,11 +64,11 @@ oop.inherits(Mode, TextMode); var tokens = tokenizedLine.tokens; var endState = tokenizedLine.state; - if (tokens.length && tokens[tokens.length-1].type == "comment") { + if (tokens.length && tokens[tokens.length-1].type === "comment.block.lsl") { return indent; } - if (state == "start") { + if (state === "start") { var match = line.match(/^.*[\{\(\[]\s*$/); if (match) { indent += tab; diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index 80452a17..ca85351d 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -31,321 +31,314 @@ define(function(require, exports, module) { "use strict"; -var oop = require("../lib/oop"); -var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; + var oop = require("../lib/oop"); + var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; -var lslHighlightRules = function() { + oop.inherits(LSLHighlightRules, TextHighlightRules); -var keywordMapper = this.createKeywordMapper({ - "constant.language": "ACTIVE ALWAYS_RUN|AGENT_ATTACHMENTS|AGENT_AUTOPILOT|" + - "AGENT_AWAY|AGENT_BUSY|AGENT_BY_LEGACY_NAME|AGENT_BY_USERNAME|AGENT_CROUCHING|" + - "AGENT_FLYING|AGENT_IN_AIR|AGENT_LIST_PARCEL|AGENT_LIST_PARCEL_OWNER|" + - "AGENT_LIST_REGION|AGENT_MOUSELOOK|AGENT_ON_OBJECT|AGENT_SCRIPTED|AGENT_SITTING|" + - "AGENT_TYPING|AGENT_WALKING|ALL_SIDES|ANIM_ON|ATTACH_BACK|ATTACH_BELLY|" + - "ATTACH_CHEST|ATTACH_CHIN|ATTACH_HEAD|ATTACH_HUD_BOTTOM|ATTACH_HUD_BOTTOM_LEFT|" + - "ATTACH_HUD_BOTTOM_RIGHT|ATTACH_HUD_CENTER_1|ATTACH_HUD_CENTER_2|ATTACH_HUD_TOP_CENTER|" + - "ATTACH_HUD_TOP_LEFT|ATTACH_HUD_TOP_RIGHT|ATTACH_LEAR|ATTACH_LEFT_PEC|" + - "ATTACH_LEYE|ATTACH_LFOOT|ATTACH_LHAND|ATTACH_LHIP|ATTACH_LLARM|ATTACH_LLLEG|" + - "ATTACH_LSHOULDER|ATTACH_LUARM|ATTACH_LULEG|ATTACH_MOUTH|ATTACH_NOSE|" + - "ATTACH_PELVIS|ATTACH_REAR|ATTACH_REYE|ATTACH_RFOOT|ATTACH_RHAND|ATTACH_RHIP|" + - "ATTACH_RIGHT_PEC|ATTACH_RLARM|ATTACH_RLLEG|ATTACH_RSHOULDER|ATTACH_RUARM|" + - "ATTACH_RULEG|AVOID_CHARACTERS|AVOID_DYNAMIC_OBSTACLES|AVOID_NONE|CAMERA_ACTIVE|" + - "CAMERA_BEHINDNESS_ANGLE|CAMERA_BEHINDNESS_LAG|CAMERA_DISTANCE|CAMERA_FOCUS|" + - "CAMERA_FOCUS_LAG|CAMERA_FOCUS_LOCKED|CAMERA_FOCUS_OFFSET|CAMERA_FOCUS_THRESHOLD|" + - "CAMERA_PITCH|CAMERA_POSITION|CAMERA_POSITION_LAG|CAMERA_POSITION_LOCKED|" + - "CAMERA_POSITION_THRESHOLD|CHANGED_ALLOWED_DROP|CHANGED_COLOR|CHANGED_INVENTORY|" + - "CHANGED_LINK|CHANGED_MEDIA|CHANGED_OWNER|CHANGED_REGION|CHANGED_REGION_START|" + - "CHANGED_SCALE|CHANGED_SHAPE|CHANGED_TELEPORT|CHANGED_TEXTURE|CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES|" + - "CHARACTER_AVOIDANCE_MODE|CHARACTER_CMD_JUMP|CHARACTER_CMD_SMOOTH_STOP|" + - "CHARACTER_CMD_STOP|CHARACTER_DESIRED_SPEED|CHARACTER_DESIRED_TURN_SPEED|" + - "CHARACTER_LENGTH|CHARACTER_MAX_ACCEL|CHARACTER_MAX_ANGULAR_ACCEL|CHARACTER_MAX_ANGULAR_SPEED|" + - "CHARACTER_MAX_DECEL|CHARACTER_MAX_SPEED|CHARACTER_MAX_TURN_RADIUS|CHARACTER_ORIENTATION|" + - "CHARACTER_RADIUS|CHARACTER_TYPE|CHARACTER_TYPE_A|CHARACTER_TYPE_B|CHARACTER_TYPE_C|" + - "CHARACTER_TYPE_D|CHARACTER_TYPE_NONE|CLICK_ACTION_BUY|CLICK_ACTION_NONE|" + - "CLICK_ACTION_OPEN|CLICK_ACTION_OPEN_MEDIA|CLICK_ACTION_PAY|CLICK_ACTION_PLAY|" + - "CLICK_ACTION_SIT|CLICK_ACTION_TOUCH|CONTENT_TYPE_HTML|CONTENT_TYPE_TEXT|" + - "CONTROL_BACK|CONTROL_DOWN|CONTROL_FWD|CONTROL_LBUTTON|CONTROL_LEFT|CONTROL_ML_LBUTTON|" + - "CONTROL_RIGHT|CONTROL_ROT_LEFT|CONTROL_ROT_RIGHT|CONTROL_UP|DATA_BORN|" + - "DATA_NAME|DATA_ONLINE|DATA_PAYINFO|DATA_SIM_POS|DATA_SIM_RATING|DATA_SIM_STATUS|" + - "DENSITY|DEBUG_CHANNEL|DEG_TO_RAD|EOF|ESTATE_ACCESS_ALLOWED_AGENT_ADD|" + - "ESTATE_ACCESS_ALLOWED_AGENT_REMOVE|ESTATE_ACCESS_ALLOWED_GROUP_ADD|ESTATE_ACCESS_ALLOWED_GROUP_REMOVE|" + - "ESTATE_ACCESS_BANNED_AGENT_ADD|ESTATE_ACCESS_BANNED_AGENT_REMOVE|FALSE|" + - "FORCE_DIRECT_PATH|FRICTION|GCNP_RADIUS|GCNP_STATIC|GRAVITY_MULTIPLIER|" + - "HORIZONTAL|HTTP_BODY_MAXLENGTH|HTTP_BODY_TRUNCATED|HTTP_CUSTOM_HEADER|" + - "HTTP_METHOD|HTTP_MIMETYPE|HTTP_PRAGMA_NO_CACHE|HTTP_VERBOSE_THROTTLE|" + - "HTTP_VERIFY_CERT|INVENTORY_ALL|INVENTORY_ANIMATION|INVENTORY_BODYPART|" + - "INVENTORY_CLOTHING|INVENTORY_GESTURE|INVENTORY_LANDMARK|INVENTORY_NONE|" + - "INVENTORY_NOTECARD|INVENTORY_OBJECT|INVENTORY_SCRIPT|INVENTORY_SOUND|" + - "INVENTORY_TEXTURE|KFM_CMD_PAUSE|KFM_CMD_PLAY|KFM_CMD_STOP|KFM_COMMAND|" + - "KFM_DATA|KFM_FORWARD|KFM_LOOP|KFM_MODE|KFM_PING_PONG|KFM_REVERSE|KFM_ROTATION|" + - "KFM_TRANSLATION|LAND_LEVEL|LAND_LOWER|LAND_NOISE|LAND_RAISE|LAND_REVERT|" + - "LAND_SMOOTH|LINK_ALL_CHILDREN|LINK_ALL_OTHERS|LINK_ROOT|LINK_SET|LINK_THIS|" + - "LIST_STAT_GEOMETRIC_MEAN|LIST_STAT_MAX|LIST_STAT_MEAN|LIST_STAT_MEDIAN|" + - "LIST_STAT_MIN|LIST_STAT_NUM_COUNT|LIST_STAT_RANGE|LIST_STAT_STD_DEV|LIST_STAT_SUM|" + - "LIST_STAT_SUM_SQUARES|LOOP|MASK_BASE|MASK_EVERYONE|MASK_GROUP|MASK_NEXT|" + - "MASK_OWNER|NULL_KEY|OBJECT_ATTACHED_POINT|OBJECT_CREATOR|OBJECT_DESC|" + - "OBJECT_GROUP|OBJECT_NAME|OBJECT_OWNER|OBJECT_PATHFINDING_TYPE|OBJECT_PHYSICS_COST|" + - "OBJECT_POS|OBJECT_PRIM_EQUIVALENCE|OBJECT_ROOT|OBJECT_ROT|OBJECT_RUNNING_SCRIPT_COUNT|" + - "OBJECT_SCRIPT_MEMORY|OBJECT_SCRIPT_TIME|OBJECT_SERVER_COST|OBJECT_STREAMING_COST|" + - "OBJECT_TOTAL_SCRIPT_COUNT|OBJECT_UNKNOWN_DETAIL|OBJECT_VELOCITY|OPT_AVATAR|" + - "OPT_CHARACTER|OPT_EXCLUSION_VOLUME|OPT_LEGACY_LINKSET|OPT_MATERIAL_VOLUME|" + - "OPT_OTHER|OPT_STATIC_OBSTACLE|OPT_WALKABLE|PARCEL_COUNT_GROUP|PARCEL_COUNT_OTHER|" + - "PARCEL_COUNT_OWNER|PARCEL_COUNT_SELECTED|PARCEL_COUNT_TEMP|PARCEL_COUNT_TOTAL|" + - "PARCEL_DETAILS_AREA|PARCEL_DETAILS_DESC|PARCEL_DETAILS_GROUP|PARCEL_DETAILS_ID|" + - "PARCEL_DETAILS_NAME|PARCEL_DETAILS_OWNER|PARCEL_DETAILS_SEE_AVATARS|" + - "PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS|" + - "PARCEL_FLAG_ALLOW_CREATE_OBJECTS|PARCEL_FLAG_ALLOW_DAMAGE|PARCEL_FLAG_ALLOW_FLY|" + - "PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_GROUP_SCRIPTS|" + - "PARCEL_FLAG_ALLOW_LANDMARK|PARCEL_FLAG_ALLOW_SCRIPTS|PARCEL_FLAG_ALLOW_TERRAFORM|" + - "PARCEL_FLAG_LOCAL_SOUND_ONLY|PARCEL_FLAG_RESTRICT_PUSHOBJECT|PARCEL_FLAG_USE_ACCESS_GROUP|" + - "PARCEL_FLAG_USE_ACCESS_LIST|PARCEL_FLAG_USE_BAN_LIST|PARCEL_FLAG_USE_LAND_PASS_LIST|" + - "PARCEL_MEDIA_COMMAND_AGENT|PARCEL_MEDIA_COMMAND_AUTO_ALIGN|PARCEL_MEDIA_COMMAND_DESC|" + - "PARCEL_MEDIA_COMMAND_LOOP|PARCEL_MEDIA_COMMAND_LOOP_SET|PARCEL_MEDIA_COMMAND_PAUSE|" + - "PARCEL_MEDIA_COMMAND_PLAY|PARCEL_MEDIA_COMMAND_SIZE|PARCEL_MEDIA_COMMAND_STOP|" + - "PARCEL_MEDIA_COMMAND_TEXTURE|PARCEL_MEDIA_COMMAND_TIME|PARCEL_MEDIA_COMMAND_TYPE|" + - "PARCEL_MEDIA_COMMAND_UNLOAD|PARCEL_MEDIA_COMMAND_URL|PASSIVE|PATROL_PAUSE_AT_WAYPOINTS|" + - "PAYMENT_INFO_ON_FILE|PAYMENT_INFO_USED|PAY_DEFAULT|PAY_HIDE|PERMISSION_ATTACH|" + - "PERMISSION_CHANGE_LINKS|PERMISSION_CONTROL_CAMERA|PERMISSION_DEBIT|PERMISSION_OVERRIDE_ANIMATIONS|" + - "PERMISSION_SILENT_ESTATE_MANAGEMENT|PERMISSION_TAKE_CONTROLS|PERMISSION_TELEPORT|PERMISSION_TRACK_CAMERA|" + - "PERMISSION_TRIGGER_ANIMATION|PERM_ALL|PERM_COPY|PERM_MODIFY|PERM_MOVE|" + - "PERM_TRANSFER|PI|PING_PONG|PI_BY_TWO|PRIM_BUMP_BARK|PRIM_BUMP_BLOBS|" + - "PRIM_BUMP_BRICKS|PRIM_BUMP_BRIGHT|PRIM_BUMP_CHECKER|PRIM_BUMP_CONCRETE|" + - "PRIM_BUMP_DARK|PRIM_BUMP_DISKS|PRIM_BUMP_GRAVEL|PRIM_BUMP_LARGETILE|" + - "PRIM_BUMP_NONE|PRIM_BUMP_SHINY|PRIM_BUMP_SIDING|PRIM_BUMP_STONE|PRIM_BUMP_STUCCO|" + - "PRIM_BUMP_SUCTION|PRIM_BUMP_TILE|PRIM_BUMP_WEAVE|PRIM_BUMP_WOOD|PRIM_COLOR|" + - "PRIM_DESC|PRIM_FLEXIBLE|PRIM_FULLBRIGHT|PRIM_GLOW|PRIM_HOLE_CIRCLE|PRIM_HOLE_DEFAULT|" + - "PRIM_HOLE_SQUARE|PRIM_HOLE_TRIANGLE|PRIM_LINK_TARGET|PRIM_MATERIAL|PRIM_MATERIAL_FLESH|" + - "PRIM_MATERIAL_GLASS|PRIM_MATERIAL_LIGHT|PRIM_MATERIAL_METAL|PRIM_MATERIAL_PLASTIC|" + - "PRIM_MATERIAL_RUBBER|PRIM_MATERIAL_STONE|PRIM_MATERIAL_WOOD|PRIM_MEDIA_ALT_IMAGE_ENABLE|" + - "PRIM_MEDIA_AUTO_LOOP|PRIM_MEDIA_AUTO_PLAY|PRIM_MEDIA_AUTO_SCALE|PRIM_MEDIA_AUTO_ZOOM|" + - "PRIM_MEDIA_CONTROLS|PRIM_MEDIA_CONTROLS_STANDARD|PRIM_MEDIA_CONTROLS_MINI|" + - "PRIM_MEDIA_CURRENT_URL|PRIM_MEDIA_FIRST_CLICK_INTERACT|PRIM_MEDIA_HEIGHT_PIXELS|" + - "PRIM_MEDIA_HOME_URL|PRIM_MEDIA_PERM_ANYONE|PRIM_MEDIA_PERM_GROUP|PRIM_MEDIA_PERM_NONE|" + - "PRIM_MEDIA_PERM_OWNER|PRIM_MEDIA_PERMS_CONTROL|PRIM_MEDIA_PERMS_INTERACT|" + - "PRIM_MEDIA_WIDTH_PIXELS|PRIM_MEDIA_WHITELIST|PRIM_MEDIA_WHITELIST_ENABLE|" + - "PRIM_NAME|PRIM_OMEGA|PRIM_PHANTOM|PRIM_PHYSICS|PRIM_PHYSICS_MATERIAL|" + - "PRIM_PHYSICS_SHAPE_CONVEX|PRIM_PHYSICS_SHAPE_NONE|PRIM_PHYSICS_SHAPE_PRIM|" + - "PRIM_PHYSICS_SHAPE_TYPE|PRIM_POINT_LIGHT|PRIM_POSITION|PRIM_POS_LOCAL|" + - "PRIM_ROTATION|PRIM_ROT_LOCAL|PRIM_SCULPT_FLAG_INVERT|PRIM_SCULPT_FLAG_MIRROR|" + - "PRIM_SCULPT_TYPE_CYLINDER|PRIM_SCULPT_TYPE_MASK|PRIM_SCULPT_TYPE_PLANE|" + - "PRIM_SCULPT_TYPE_SPHERE|PRIM_SCULPT_TYPE_TORUS|PRIM_SHINY_HIGH|PRIM_SHINY_LOW|" + - "PRIM_SHINY_MEDIUM|PRIM_SHINY_NONE|PRIM_SIZE|PRIM_SLICE|PRIM_TEMP_ON_REZ|" + - "PRIM_TEXGEN|PRIM_TEXGEN_DEFAULT|PRIM_TEXGEN_PLANAR|PRIM_TEXT|PRIM_TEXTURE|" + - "PRIM_TYPE|PRIM_TYPE_BOX|PRIM_TYPE_CYLINDER|PRIM_TYPE_PRISM|PRIM_TYPE_RING|" + - "PRIM_TYPE_SCULPT|PRIM_TYPE_SPHERE|PRIM_TYPE_TORUS|PRIM_TYPE_TUBE|PROFILE_NONE|" + - "PROFILE_SCRIPT_MEMORY|PSYS_PART_BOUNCE_MASK|PSYS_PART_EMISSIVE_MASK|PSYS_PART_END_ALPHA|" + - "PSYS_PART_END_COLOR|PSYS_PART_END_SCALE|PSYS_PART_FLAGS|PSYS_PART_FOLLOW_SRC_MASK|" + - "PSYS_PART_FOLLOW_VELOCITY_MASK|PSYS_PART_INTERP_COLOR_MASK|PSYS_PART_INTERP_SCALE_MASK|" + - "PSYS_PART_MAX_AGE|PSYS_PART_START_ALPHA|PSYS_PART_START_COLOR|PSYS_PART_START_SCALE|" + - "PSYS_PART_TARGET_LINEAR_MASK|PSYS_PART_TARGET_POS_MASK|PSYS_PART_WIND_MASK|" + - "PSYS_SRC_ACCEL|PSYS_SRC_ANGLE_BEGIN|PSYS_SRC_ANGLE_END|PSYS_SRC_BURST_PART_COUNT|" + - "PSYS_SRC_BURST_RADIUS|PSYS_SRC_BURST_RATE|PSYS_SRC_BURST_SPEED_MAX|PSYS_SRC_BURST_SPEED_MIN|" + - "PSYS_SRC_MAX_AGE|PSYS_SRC_OMEGA|PSYS_SRC_PATTERN|PSYS_SRC_PATTERN_ANGLE|" + - "PSYS_SRC_PATTERN_ANGLE_CONE|PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY|PSYS_SRC_PATTERN_DROP|" + - "PSYS_SRC_PATTERN_EXPLODE|PSYS_SRC_TARGET_KEY|PSYS_SRC_TEXTURE|PUBLIC_CHANNEL|" + - "PURSUIT_FUZZ_FACTOR|PURSUIT_GOAL_TOLERANCE|PURSUIT_INTERCEPT|PURSUIT_OFFSET|" + - "PU_EVADE_HIDDEN|PU_EVADE_SPOTTED|PU_FAILURE_DYNAMIC_PATHFINDING_DISABLED|" + - "PU_FAILURE_INVALID_GOAL|PU_FAILURE_INVALID_START|PU_FAILURE_NO_NAVMESH|" + - "PU_FAILURE_NO_VALID_DESTINATION|PU_FAILURE_OTHER|PU_FAILURE_PARCEL_UNREACHABLE|" + - "PU_FAILURE_TARGET_GONE|PU_FAILURE_UNREACHABLE|PU_GOAL_REACHED|PU_SLOWDOWN_DISTANCE_REACHED|" + - "RAD_TO_DEG|RC_DATA_FLAGS|RC_DETECT_PHANTOM|RC_GET_LINK_NUM|RC_GET_NORMAL|" + - "RC_GET_ROOT_KEY|RC_MAX_HITS|RC_REJECT_AGENTS|RC_REJECT_LAND|RC_REJECT_NONPHYSICAL|" + - "RC_REJECT_PHYSICAL|RC_REJECT_TYPES|RCERR_CAST_TIME_EXCEEDED|RCERR_SIM_PERF_LOW|" + - "RCERR_UNKNOWN|REGION_FLAG_ALLOW_DAMAGE|REGION_FLAG_ALLOW_DIRECT_TELEPORT|" + - "REGION_FLAG_BLOCK_FLY|REGION_FLAG_BLOCK_TERRAFORM|REGION_FLAG_DISABLE_COLLISIONS|" + - "REGION_FLAG_DISABLE_PHYSICS|REGION_FLAG_FIXED_SUN|REGION_FLAG_RESTRICT_PUSHOBJECT|" + - "REGION_FLAG_SANDBOX|REMOTE_DATA_CHANNEL|REMOTE_DATA_REPLY|REMOTE_DATA_REQUEST|" + - "REQUIRE_LINE_OF_SIGHT|RESTITUTION|REVERSE|ROTATE|SCALE|SCRIPTED|SIM_STAT_PCT_CHARS_STEPPED|" + - "SMOOTH|SQRT2|STATUS_BLOCK_GRAB|STATUS_BLOCK_GRAB_OBJECT|STATUS_BOUNDS_ERROR|" + - "STATUS_CAST_SHADOWS|STATUS_DIE_AT_EDGE|STATUS_INTERNAL_ERROR|STATUS_MALFORMED_PARAMS|" + - "STATUS_NOT_FOUND|STATUS_NOT_SUPPORTED|STATUS_OK|STATUS_PHANTOM|STATUS_PHYSICS|" + - "STATUS_RETURN_AT_EDGE|STATUS_ROTATE_X|STATUS_ROTATE_Y|STATUS_ROTATE_Z|" + - "STATUS_SANDBOX|STATUS_TYPE_MISMATCH|STATUS_WHITELIST_FAILED|STRING_TRIM|" + - "STRING_TRIM_HEAD|STRING_TRIM_TAIL|TEXTURE_DEFAULT|TEXTURE_BLANK|TEXTURE_MEDIA|" + - "TEXTURE_PLYWOOD|TEXTURE_TRANSPARENT|TOUCH_INVALID_FACE|TOUCH_INVALID_TEXCOORD|" + - "TOUCH_INVALID_VECTOR|TRAVERSAL_TYPE|TRAVERSAL_TYPE_FAST|TRAVERSAL_TYPE_NONE|" + - "TRAVERSAL_TYPE_SLOW|TRUE|TWO_PI|TYPE_FLOAT|TYPE_INTEGER|TYPE_INVALID|" + - "TYPE_KEY|TYPE_ROTATION|TYPE_STRING|TYPE_VECTOR|URL_REQUEST_DENIED|URL_REQUEST_GRANTED|" + - "VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY|VEHICLE_ANGULAR_DEFLECTION_TIMESCALE|" + - "VEHICLE_ANGULAR_FRICTION_TIMESCALE|VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE|" + - "VEHICLE_ANGULAR_MOTOR_DIRECTION|VEHICLE_ANGULAR_MOTOR_TIMESCALE|VEHICLE_BANKING_EFFICIENCY|" + - "VEHICLE_BANKING_MIX|VEHICLE_BANKING_TIMESCALE|VEHICLE_BUOYANCY|VEHICLE_FLAG_CAMERA_DECOUPLED|" + - "VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT|VEHICLE_FLAG_HOVER_TERRAIN_ONLY|VEHICLE_FLAG_HOVER_UP_ONLY|" + - "VEHICLE_FLAG_HOVER_WATER_ONLY|VEHICLE_FLAG_LIMIT_MOTOR_UP|VEHICLE_FLAG_LIMIT_ROLL_ONLY|" + - "VEHICLE_FLAG_MOUSELOOK_BANK|VEHICLE_FLAG_MOUSELOOK_STEER|VEHICLE_FLAG_NO_DEFLECTION_UP|" + - "VEHICLE_HOVER_EFFICIENCY|VEHICLE_HOVER_HEIGHT|VEHICLE_HOVER_TIMESCALE|" + - "VEHICLE_LINEAR_DEFLECTION_EFFICIENCY|VEHICLE_LINEAR_DEFLECTION_TIMESCALE|" + - "VEHICLE_LINEAR_FRICTION_TIMESCALE|VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE|" + - "VEHICLE_LINEAR_MOTOR_DIRECTION|VEHICLE_LINEAR_MOTOR_OFFSET|VEHICLE_LINEAR_MOTOR_TIMESCALE|" + - "VEHICLE_REFERENCE_FRAME|VEHICLE_TYPE_AIRPLANE|VEHICLE_TYPE_BALLOON|VEHICLE_TYPE_BOAT|" + - "VEHICLE_TYPE_CAR|VEHICLE_TYPE_NONE|VEHICLE_TYPE_SLED|VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY|" + - "VEHICLE_VERTICAL_ATTRACTION_TIMESCALE|VERTICAL|WANDER_PAUSE_AT_WAYPOINTS|" + - "ZERO_ROTATION|ZERO_VECTOR", - "invalid.deprecated" : "llCollisionSprite|llGodLikeRezObject|llMakeExplosion|" + - "llMakeFountain|llMakeSmoke|llMakeFire|llPointAt|llStopPointAt|llRefreshPrimURL|" + - "llSetPrimURL|llReleaseCamera|llTakeCamera|llRemoteDataSetRegion|llRemoteLoadScript|" + - "llSetInventoryPermMask|llSound|llSoundPreload|llXorBase64Strings|AGENT|" + - "DATA_RATING|LAND_LARGE_BRUSH|LAND_MEDIUM_BRUSH|LAND_SMALL_BRUSH|PERMISSION_CHANGE_JOINTS|" + - "PERMISSION_CHANGE_PERMISSIONS|PERMISSION_RELEASE_OWNERSHIP|PERMISSION_REMAP_CONTROLS|" + - "PRIM_CAST_SHADOWS|PRIM_TYPE_LEGACY|PSYS_SRC_INNERANGLE|PSYS_SRC_OUTERANGLE|" + - "VEHICLE_FLAG_NO_FLY_UP", - "invalid.illegal" : "event", - "keyword.control" : "do|else|for|if|jump|return|while", - "keyword.other" : "default|state", - "storage.type" : "float|integer|key|list|quaternion|rotation|string|vector", - "support.function": "llAbs|llAcos|llAddToLandBanList|llAddToLandPassList|" + - "llAdjustSoundVolume|llAllowInventoryDrop|llAngleBetween|llApplyImpulse|" + - "llApplyRotationalImpulse|llAsin|llAtan2|llAttachToAvatar|llAttachToAvatarTemp|" + - "llAvatarOnLinkSitTarget|llAvatarOnSitTarget|llAxes2Rot|llAxisAngle2Rot|" + - "llBase64ToInteger|llBase64ToString|llBreakAllLinks|llBreakLink|llCastRay|" + - "llCeil|llClearCameraParams|llClearLinkMedia|llClearPrimMedia|llCloseRemoteDataChannel|" + - "llCloud|llCollisionFilter|llCollisionSound|llCos|llCreateCharacter|llCreateLink|" + - "llCSV2List|llDeleteCharacter|llDeleteSubList|llDeleteSubString|llDetachFromAvatar|" + - "llDetectedGrab|llDetectedGroup|llDetectedKey|llDetectedLinkNumber|llDetectedName|" + - "llDetectedOwner|llDetectedPos|llDetectedRot|llDetectedTouchBinormal|" + - "llDetectedTouchFace|llDetectedTouchNormal|llDetectedTouchPos|llDetectedTouchST|" + - "llDetectedTouchUV|llDetectedType|llDetectedVel|llDialog|llDie|llDumpList2String|" + - "llEdgeOfWorld|llEjectFromLand|llEmail|llEscapeURL|llEuler2Rot|llExecCharacterCmd|" + - "llEvade|llFabs|llFleeFrom|llFloor|llForceMouselook|llFrand|llGenerateKey|" + - "llGetAccel|llGetAgentInfo|llGetAgentLanguage|llGetAgentList|llGetAgentSize|" + - "llGetAlpha|llGetAndResetTime|llGetAnimation|llGetAnimationList|llGetAnimationOverride|llGetAttached|" + - "llGetBoundingBox|llGetCameraPos|llGetCameraRot|llGetCenterOfMass|llGetClosestNavPoint|" + - "llGetColor|llGetCreator|llGetDate|llGetDisplayName|llGetEnergy|llGetEnv|" + - "llGetForce|llGetFreeMemory|llGetFreeURLs|llGetGeometricCenter|llGetGMTclock|" + - "llGetHTTPHeader|llGetInventoryCreator|llGetInventoryKey|llGetInventoryName|" + - "llGetInventoryNumber|llGetInventoryPermMask|llGetInventoryType|llGetKey|" + - "llGetLandOwnerAt|llGetLinkKey|llGetLinkMedia|llGetLinkName|llGetLinkNumber|" + - "llGetLinkNumberOfSides|llGetLinkPrimitiveParams|llGetListEntryType|llGetListLength|" + - "llGetLocalPos|llGetLocalRot|llGetMass|llGetMassMKS|llGetMemoryLimit|" + - "llGetNextEmail|llGetNotecardLine|llGetNumberOfNotecardLines|llGetNumberOfPrims|" + - "llGetNumberOfSides|llGetObjectDesc|llGetObjectDetails|llGetObjectMass|" + - "llGetObjectName|llGetObjectPermMask|llGetObjectPrimCount|llGetOmega|" + - "llGetOwner|llGetOwnerKey|llGetParcelDetails|llGetParcelFlags|llGetParcelMaxPrims|" + - "llGetParcelMusicURL|llGetParcelPrimCount|llGetParcelPrimOwners|llGetPermissions|" + - "llGetPermissionsKey|llGetPhysicsMaterial|llGetPos|llGetPrimitiveParams|" + - "llGetPrimMediaParams|llGetRegionAgentCount|llGetRegionCorner|llGetRegionFlags|" + - "llGetRegionFPS|llGetRegionName|llGetRegionTimeDilation|llGetRootPosition|" + - "llGetRootRotation|llGetRot|llGetScale|llGetScriptName|llGetScriptState|" + - "llGetSimStats|llGetSimulatorHostname|llGetSPMaxMemory|llGetStartParameter|" + - "llGetStaticPath|llGetStatus|llGetSubString|llGetSunDirection|llGetTexture|" + - "llGetTextureOffset|llGetTextureRot|llGetTextureScale|llGetTime|llGetTimeOfDay|" + - "llGetTimestamp|llGetTorque|llGetUnixTime|llGetUsedMemory|llGetUsername|" + - "llGetVel|llGetWallclock|llGiveInventory|llGiveInventoryList|llGiveMoney|" + - "llGround|llGroundContour|llGroundNormal|llGroundRepel|llGroundSlope|" + - "llHTTPRequest|llHTTPResponse|llInsertString|llInstantMessage|llIntegerToBase64|" + - "llKey2Name|llLinkParticleSystem|llLinkSitTarget|llList2CSV|llList2Float|" + - "llList2Integer|llList2Key|llList2List|llList2ListStrided|llList2Rot|" + - "llList2String|llList2Vector|llListen|llListenControl|llListenRemove|" + - "llListFindList|llListInsertList|llListRandomize|llListReplaceList|llListSort|" + - "llListStatistics|llLoadURL|llLog|llLog10|llLookAt|llLoopSound|llLoopSoundMaster|" + - "llLoopSoundSlave|llManageEstateAccess|llMapDestination|llMD5String|llMessageLinked|" + - "llMinEventDelay|llModifyLand|llModPow|llMoveToTarget|llNavigateTo|llOffsetTexture|" + - "llOpenRemoteDataChannel|llOverMyLand|llOwnerSay|llParcelMediaCommandList|" + - "llParcelMediaQuery|llParseString2List|llParseStringKeepNulls|llParticleSystem|" + - "llPassCollisions|llPassTouches|llPatrolPoints|llPlaySound|llPlaySoundSlave|" + - "llPow|llPreloadSound|llPursue|llPushObject|llRegionSay|llRegionSayTo|" + - "llReleaseControls|llReleaseURL|llRemoteDataReply|llRemoteLoadScriptPin|" + - "llRemoveFromLandBanList|llRemoveFromLandPassList|llRemoveInventory|llRemoveVehicleFlags|" + - "llRequestAgentData|llRequestDisplayName|llRequestInventoryData|llRequestPermissions|" + - "llRequestSecureURL|llRequestSimulatorData|llRequestURL|llRequestUsername|llResetAnimationOverride|" + - "llResetLandBanList|llResetLandPassList|llResetOtherScript|llResetScript|" + - "llResetTime|llRezAtRoot|llRezObject|llRot2Angle|llRot2Axis|llRot2Euler|" + - "llRot2Fwd|llRot2Left|llRot2Up|llRotateTexture|llRotBetween|llRotLookAt|" + - "llRotTarget|llRotTargetRemove|llRound|llSameGroup|llSay|llScaleTexture|" + - "llScriptDanger|llScriptProfiler|llSendRemoteData|llSensor|llSensorRemove|" + - "llSensorRepeat|llSetAlpha|llSetAngularVelocity|llSetAnimationOverride|llSetBuoyancy|llSetCameraAtOffset|" + - "llSetCameraEyeOffset|llSetCameraParams|llSetClickAction|llSetColor|llSetContentType|" + - "llSetDamage|llSetForce|llSetForceAndTorque|llSetHoverHeight|llSetKeyframedMotion|" + - "llSetLinkAlpha|llSetLinkCamera|llSetLinkColor|llSetLinkMedia|llSetLinkPrimitiveParams|" + - "llSetLinkPrimitiveParamsFast|llSetLinkTexture|llSetLinkTextureAnim|llSetLocalRot|" + - "llSetMemoryLimit|llSetObjectDesc|llSetObjectName|llSetParcelMusicURL|" + - "llSetPayPrice|llSetPhysicsMaterial|llSetPos|llSetPrimitiveParams|llSetPrimMediaParams|" + - "llSetRegionPos|llSetRemoteScriptAccessPin|llSetRot|llSetScale|llSetScriptState|" + - "llSetSitText|llSetSoundQueueing|llSetSoundRadius|llSetStatus|llSetText|" + - "llSetTexture|llSetTextureAnim|llSetTimerEvent|llSetTorque|llSetTouchText|" + - "llSetVehicleFlags|llSetVehicleFloatParam|llSetVehicleRotationParam|llSetVehicleType|" + - "llSetVehicleVectorParam|llSetVelocity|llSHA1String|llShout|llSin|llSitTarget|" + - "llSleep|llSqrt|llStartAnimation|llStopAnimation|llStopHover|llStopLookAt|" + - "llStopMoveToTarget|llStopSound|llStringLength|llStringToBase64|llStringTrim|" + - "llSubStringIndex|llTakeControls|llTan|llTarget|llTargetOmega|llTargetRemove|" + - "llTeleportAgent|llTeleportAgentGlobalCoords|llTeleportAgentHome|llTextBox|" + - "llToLower|llToUpper|llTransferLindenDollars|llTriggerSound|llTriggerSoundLimited|" + - "llUnescapeURL|llUnSit|llUpdateCharacter|llVecDist|llVecMag|llVecNorm|" + - "llVolumeDetect|llWanderWithin|llWater|llWhisper|llWind|llXorBase64StringsCorrect", - "support.function.event" : "at_rot_target|at_target|attach|changed|collision|" + - "collision_end|collision_start|control|dataserver|email|http_request|" + - "http_response|land_collision|land_collision_end|land_collision_start|" + - "link_message|listen|money|moving_end|moving_start|no_sensor|not_at_rot_target|" + - "not_at_target|object_rez|on_rez|path_update|remote_data|run_time_permissions|" + - "sensor|state_entry|state_exit|timer|touch|touch_end|touch_start|transaction_result" - }, "identifier"); + function LSLHighlightRules() { + var keywordMapper = this.createKeywordMapper({ + "constant.language.float.lsl" : "DEG_TO_RAD|PI|PI_BY_TWO|RAD_TO_DEG|SQRT2|TWO_PI", + "constant.language.integer.lsl": "ACTIVE ALWAYS_RUN|AGENT_ATTACHMENTS|AGENT_AUTOPILOT|" + + "AGENT_AWAY|AGENT_BUSY|AGENT_BY_LEGACY_NAME|AGENT_BY_USERNAME|AGENT_CROUCHING|" + + "AGENT_FLYING|AGENT_IN_AIR|AGENT_LIST_PARCEL|AGENT_LIST_PARCEL_OWNER|" + + "AGENT_LIST_REGION|AGENT_MOUSELOOK|AGENT_ON_OBJECT|AGENT_SCRIPTED|AGENT_SITTING|" + + "AGENT_TYPING|AGENT_WALKING|ALL_SIDES|ANIM_ON|ATTACH_BACK|ATTACH_BELLY|" + + "ATTACH_CHEST|ATTACH_CHIN|ATTACH_HEAD|ATTACH_HUD_BOTTOM|ATTACH_HUD_BOTTOM_LEFT|" + + "ATTACH_HUD_BOTTOM_RIGHT|ATTACH_HUD_CENTER_1|ATTACH_HUD_CENTER_2|ATTACH_HUD_TOP_CENTER|" + + "ATTACH_HUD_TOP_LEFT|ATTACH_HUD_TOP_RIGHT|ATTACH_LEAR|ATTACH_LEFT_PEC|" + + "ATTACH_LEYE|ATTACH_LFOOT|ATTACH_LHAND|ATTACH_LHIP|ATTACH_LLARM|ATTACH_LLLEG|" + + "ATTACH_LSHOULDER|ATTACH_LUARM|ATTACH_LULEG|ATTACH_MOUTH|ATTACH_NOSE|" + + "ATTACH_PELVIS|ATTACH_REAR|ATTACH_REYE|ATTACH_RFOOT|ATTACH_RHAND|ATTACH_RHIP|" + + "ATTACH_RIGHT_PEC|ATTACH_RLARM|ATTACH_RLLEG|ATTACH_RSHOULDER|ATTACH_RUARM|" + + "ATTACH_RULEG|AVOID_CHARACTERS|AVOID_DYNAMIC_OBSTACLES|AVOID_NONE|CAMERA_ACTIVE|" + + "CAMERA_BEHINDNESS_ANGLE|CAMERA_BEHINDNESS_LAG|CAMERA_DISTANCE|CAMERA_FOCUS|" + + "CAMERA_FOCUS_LAG|CAMERA_FOCUS_LOCKED|CAMERA_FOCUS_OFFSET|CAMERA_FOCUS_THRESHOLD|" + + "CAMERA_PITCH|CAMERA_POSITION|CAMERA_POSITION_LAG|CAMERA_POSITION_LOCKED|" + + "CAMERA_POSITION_THRESHOLD|CHANGED_ALLOWED_DROP|CHANGED_COLOR|CHANGED_INVENTORY|" + + "CHANGED_LINK|CHANGED_MEDIA|CHANGED_OWNER|CHANGED_REGION|CHANGED_REGION_START|" + + "CHANGED_SCALE|CHANGED_SHAPE|CHANGED_TELEPORT|CHANGED_TEXTURE|CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES|" + + "CHARACTER_AVOIDANCE_MODE|CHARACTER_CMD_JUMP|CHARACTER_CMD_SMOOTH_STOP|" + + "CHARACTER_CMD_STOP|CHARACTER_DESIRED_SPEED|CHARACTER_DESIRED_TURN_SPEED|" + + "CHARACTER_LENGTH|CHARACTER_MAX_ACCEL|CHARACTER_MAX_ANGULAR_ACCEL|CHARACTER_MAX_ANGULAR_SPEED|" + + "CHARACTER_MAX_DECEL|CHARACTER_MAX_SPEED|CHARACTER_MAX_TURN_RADIUS|CHARACTER_ORIENTATION|" + + "CHARACTER_RADIUS|CHARACTER_TYPE|CHARACTER_TYPE_A|CHARACTER_TYPE_B|CHARACTER_TYPE_C|" + + "CHARACTER_TYPE_D|CHARACTER_TYPE_NONE|CLICK_ACTION_BUY|CLICK_ACTION_NONE|" + + "CLICK_ACTION_OPEN|CLICK_ACTION_OPEN_MEDIA|CLICK_ACTION_PAY|CLICK_ACTION_PLAY|" + + "CLICK_ACTION_SIT|CLICK_ACTION_TOUCH|CONTENT_TYPE_HTML|CONTENT_TYPE_TEXT|" + + "CONTROL_BACK|CONTROL_DOWN|CONTROL_FWD|CONTROL_LBUTTON|CONTROL_LEFT|CONTROL_ML_LBUTTON|" + + "CONTROL_RIGHT|CONTROL_ROT_LEFT|CONTROL_ROT_RIGHT|CONTROL_UP|DATA_BORN|" + + "DATA_NAME|DATA_ONLINE|DATA_PAYINFO|DATA_SIM_POS|DATA_SIM_RATING|DATA_SIM_STATUS|" + + "DENSITY|DEBUG_CHANNEL|ESTATE_ACCESS_ALLOWED_AGENT_ADD|ESTATE_ACCESS_ALLOWED_AGENT_REMOVE|" + + "ESTATE_ACCESS_ALLOWED_GROUP_ADD|ESTATE_ACCESS_ALLOWED_GROUP_REMOVE|" + + "ESTATE_ACCESS_BANNED_AGENT_ADD|ESTATE_ACCESS_BANNED_AGENT_REMOVE|" + + "FORCE_DIRECT_PATH|FRICTION|GCNP_RADIUS|GCNP_STATIC|GRAVITY_MULTIPLIER|" + + "HORIZONTAL|HTTP_BODY_MAXLENGTH|HTTP_BODY_TRUNCATED|HTTP_CUSTOM_HEADER|" + + "HTTP_METHOD|HTTP_MIMETYPE|HTTP_PRAGMA_NO_CACHE|HTTP_VERBOSE_THROTTLE|" + + "HTTP_VERIFY_CERT|INVENTORY_ALL|INVENTORY_ANIMATION|INVENTORY_BODYPART|" + + "INVENTORY_CLOTHING|INVENTORY_GESTURE|INVENTORY_LANDMARK|INVENTORY_NONE|" + + "INVENTORY_NOTECARD|INVENTORY_OBJECT|INVENTORY_SCRIPT|INVENTORY_SOUND|" + + "INVENTORY_TEXTURE|KFM_CMD_PAUSE|KFM_CMD_PLAY|KFM_CMD_STOP|KFM_COMMAND|" + + "KFM_DATA|KFM_FORWARD|KFM_LOOP|KFM_MODE|KFM_PING_PONG|KFM_REVERSE|KFM_ROTATION|" + + "KFM_TRANSLATION|LAND_LEVEL|LAND_LOWER|LAND_NOISE|LAND_RAISE|LAND_REVERT|" + + "LAND_SMOOTH|LINK_ALL_CHILDREN|LINK_ALL_OTHERS|LINK_ROOT|LINK_SET|LINK_THIS|" + + "LIST_STAT_GEOMETRIC_MEAN|LIST_STAT_MAX|LIST_STAT_MEAN|LIST_STAT_MEDIAN|" + + "LIST_STAT_MIN|LIST_STAT_NUM_COUNT|LIST_STAT_RANGE|LIST_STAT_STD_DEV|LIST_STAT_SUM|" + + "LIST_STAT_SUM_SQUARES|LOOP|MASK_BASE|MASK_EVERYONE|MASK_GROUP|MASK_NEXT|" + + "MASK_OWNER|OBJECT_ATTACHED_POINT|OBJECT_CREATOR|OBJECT_DESC|" + + "OBJECT_GROUP|OBJECT_NAME|OBJECT_OWNER|OBJECT_PATHFINDING_TYPE|OBJECT_PHYSICS_COST|" + + "OBJECT_POS|OBJECT_PRIM_EQUIVALENCE|OBJECT_ROOT|OBJECT_ROT|OBJECT_RUNNING_SCRIPT_COUNT|" + + "OBJECT_SCRIPT_MEMORY|OBJECT_SCRIPT_TIME|OBJECT_SERVER_COST|OBJECT_STREAMING_COST|" + + "OBJECT_TOTAL_SCRIPT_COUNT|OBJECT_UNKNOWN_DETAIL|OBJECT_VELOCITY|OPT_AVATAR|" + + "OPT_CHARACTER|OPT_EXCLUSION_VOLUME|OPT_LEGACY_LINKSET|OPT_MATERIAL_VOLUME|" + + "OPT_OTHER|OPT_STATIC_OBSTACLE|OPT_WALKABLE|PARCEL_COUNT_GROUP|PARCEL_COUNT_OTHER|" + + "PARCEL_COUNT_OWNER|PARCEL_COUNT_SELECTED|PARCEL_COUNT_TEMP|PARCEL_COUNT_TOTAL|" + + "PARCEL_DETAILS_AREA|PARCEL_DETAILS_DESC|PARCEL_DETAILS_GROUP|PARCEL_DETAILS_ID|" + + "PARCEL_DETAILS_NAME|PARCEL_DETAILS_OWNER|PARCEL_DETAILS_SEE_AVATARS|" + + "PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS|" + + "PARCEL_FLAG_ALLOW_CREATE_OBJECTS|PARCEL_FLAG_ALLOW_DAMAGE|PARCEL_FLAG_ALLOW_FLY|" + + "PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_GROUP_SCRIPTS|" + + "PARCEL_FLAG_ALLOW_LANDMARK|PARCEL_FLAG_ALLOW_SCRIPTS|PARCEL_FLAG_ALLOW_TERRAFORM|" + + "PARCEL_FLAG_LOCAL_SOUND_ONLY|PARCEL_FLAG_RESTRICT_PUSHOBJECT|PARCEL_FLAG_USE_ACCESS_GROUP|" + + "PARCEL_FLAG_USE_ACCESS_LIST|PARCEL_FLAG_USE_BAN_LIST|PARCEL_FLAG_USE_LAND_PASS_LIST|" + + "PARCEL_MEDIA_COMMAND_AGENT|PARCEL_MEDIA_COMMAND_AUTO_ALIGN|PARCEL_MEDIA_COMMAND_DESC|" + + "PARCEL_MEDIA_COMMAND_LOOP|PARCEL_MEDIA_COMMAND_LOOP_SET|PARCEL_MEDIA_COMMAND_PAUSE|" + + "PARCEL_MEDIA_COMMAND_PLAY|PARCEL_MEDIA_COMMAND_SIZE|PARCEL_MEDIA_COMMAND_STOP|" + + "PARCEL_MEDIA_COMMAND_TEXTURE|PARCEL_MEDIA_COMMAND_TIME|PARCEL_MEDIA_COMMAND_TYPE|" + + "PARCEL_MEDIA_COMMAND_UNLOAD|PARCEL_MEDIA_COMMAND_URL|PASSIVE|PATROL_PAUSE_AT_WAYPOINTS|" + + "PAYMENT_INFO_ON_FILE|PAYMENT_INFO_USED|PAY_DEFAULT|PAY_HIDE|PERMISSION_ATTACH|" + + "PERMISSION_CHANGE_LINKS|PERMISSION_CONTROL_CAMERA|PERMISSION_DEBIT|PERMISSION_OVERRIDE_ANIMATIONS|" + + "PERMISSION_SILENT_ESTATE_MANAGEMENT|PERMISSION_TAKE_CONTROLS|PERMISSION_TELEPORT|" + + "PERMISSION_TRACK_CAMERA|PERMISSION_TRIGGER_ANIMATION|PERM_ALL|PERM_COPY|PERM_MODIFY|" + + "PERM_MOVE|PERM_TRANSFER|PING_PONG|PRIM_BUMP_BARK|PRIM_BUMP_BLOBS|PRIM_BUMP_BRICKS|" + + "PRIM_BUMP_BRIGHT|PRIM_BUMP_CHECKER|PRIM_BUMP_CONCRETE|PRIM_BUMP_DARK|PRIM_BUMP_DISKS|" + + "PRIM_BUMP_GRAVEL|PRIM_BUMP_LARGETILE|PRIM_BUMP_NONE|PRIM_BUMP_SHINY|PRIM_BUMP_SIDING|" + + "PRIM_BUMP_STONE|PRIM_BUMP_STUCCO|PRIM_BUMP_SUCTION|PRIM_BUMP_TILE|PRIM_BUMP_WEAVE|" + + "PRIM_BUMP_WOOD|PRIM_COLOR|PRIM_DESC|PRIM_FLEXIBLE|PRIM_FULLBRIGHT|PRIM_GLOW|" + + "PRIM_HOLE_CIRCLE|PRIM_HOLE_DEFAULT|PRIM_HOLE_SQUARE|PRIM_HOLE_TRIANGLE|PRIM_LINK_TARGET|" + + "PRIM_MATERIAL|PRIM_MATERIAL_FLESH|PRIM_MATERIAL_GLASS|PRIM_MATERIAL_LIGHT|" + + "PRIM_MATERIAL_METAL|PRIM_MATERIAL_PLASTIC|PRIM_MATERIAL_RUBBER|PRIM_MATERIAL_STONE|" + + "PRIM_MATERIAL_WOOD|PRIM_MEDIA_ALT_IMAGE_ENABLE|PRIM_MEDIA_AUTO_LOOP|PRIM_MEDIA_AUTO_PLAY|" + + "PRIM_MEDIA_AUTO_SCALE|PRIM_MEDIA_AUTO_ZOOM|PRIM_MEDIA_CONTROLS|PRIM_MEDIA_CONTROLS_STANDARD|" + + "PRIM_MEDIA_CONTROLS_MINI|PRIM_MEDIA_CURRENT_URL|PRIM_MEDIA_FIRST_CLICK_INTERACT|" + + "PRIM_MEDIA_HEIGHT_PIXELS|PRIM_MEDIA_HOME_URL|PRIM_MEDIA_PERM_ANYONE|PRIM_MEDIA_PERM_GROUP|" + + "PRIM_MEDIA_PERM_NONE|PRIM_MEDIA_PERM_OWNER|PRIM_MEDIA_PERMS_CONTROL|PRIM_MEDIA_PERMS_INTERACT|" + + "PRIM_MEDIA_WIDTH_PIXELS|PRIM_MEDIA_WHITELIST|PRIM_MEDIA_WHITELIST_ENABLE|" + + "PRIM_NAME|PRIM_OMEGA|PRIM_PHANTOM|PRIM_PHYSICS|PRIM_PHYSICS_MATERIAL|PRIM_PHYSICS_SHAPE_CONVEX|" + + "PRIM_PHYSICS_SHAPE_NONE|PRIM_PHYSICS_SHAPE_PRIM|PRIM_PHYSICS_SHAPE_TYPE|" + + "PRIM_POINT_LIGHT|PRIM_POSITION|PRIM_POS_LOCAL|PRIM_ROTATION|PRIM_ROT_LOCAL|" + + "PRIM_SCULPT_FLAG_INVERT|PRIM_SCULPT_FLAG_MIRROR|PRIM_SCULPT_TYPE_CYLINDER|" + + "PRIM_SCULPT_TYPE_MASK|PRIM_SCULPT_TYPE_PLANE|PRIM_SCULPT_TYPE_SPHERE|PRIM_SCULPT_TYPE_TORUS|" + + "PRIM_SHINY_HIGH|PRIM_SHINY_LOW|PRIM_SHINY_MEDIUM|PRIM_SHINY_NONE|PRIM_SIZE|" + + "PRIM_SLICE|PRIM_TEMP_ON_REZ|PRIM_TEXGEN|PRIM_TEXGEN_DEFAULT|PRIM_TEXGEN_PLANAR|" + + "PRIM_TEXT|PRIM_TEXTURE|PRIM_TYPE|PRIM_TYPE_BOX|PRIM_TYPE_CYLINDER|PRIM_TYPE_PRISM|PRIM_TYPE_RING|" + + "PRIM_TYPE_SCULPT|PRIM_TYPE_SPHERE|PRIM_TYPE_TORUS|PRIM_TYPE_TUBE|PROFILE_NONE|" + + "PROFILE_SCRIPT_MEMORY|PSYS_PART_BOUNCE_MASK|PSYS_PART_EMISSIVE_MASK|PSYS_PART_END_ALPHA|" + + "PSYS_PART_END_COLOR|PSYS_PART_END_SCALE|PSYS_PART_FLAGS|PSYS_PART_FOLLOW_SRC_MASK|" + + "PSYS_PART_FOLLOW_VELOCITY_MASK|PSYS_PART_INTERP_COLOR_MASK|PSYS_PART_INTERP_SCALE_MASK|" + + "PSYS_PART_MAX_AGE|PSYS_PART_START_ALPHA|PSYS_PART_START_COLOR|PSYS_PART_START_SCALE|" + + "PSYS_PART_TARGET_LINEAR_MASK|PSYS_PART_TARGET_POS_MASK|PSYS_PART_WIND_MASK|" + + "PSYS_SRC_ACCEL|PSYS_SRC_ANGLE_BEGIN|PSYS_SRC_ANGLE_END|PSYS_SRC_BURST_PART_COUNT|" + + "PSYS_SRC_BURST_RADIUS|PSYS_SRC_BURST_RATE|PSYS_SRC_BURST_SPEED_MAX|PSYS_SRC_BURST_SPEED_MIN|" + + "PSYS_SRC_MAX_AGE|PSYS_SRC_OMEGA|PSYS_SRC_PATTERN|PSYS_SRC_PATTERN_ANGLE|" + + "PSYS_SRC_PATTERN_ANGLE_CONE|PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY|PSYS_SRC_PATTERN_DROP|" + + "PSYS_SRC_PATTERN_EXPLODE|PSYS_SRC_TARGET_KEY|PSYS_SRC_TEXTURE|PUBLIC_CHANNEL|" + + "PURSUIT_FUZZ_FACTOR|PURSUIT_GOAL_TOLERANCE|PURSUIT_INTERCEPT|PURSUIT_OFFSET|" + + "PU_EVADE_HIDDEN|PU_EVADE_SPOTTED|PU_FAILURE_DYNAMIC_PATHFINDING_DISABLED|" + + "PU_FAILURE_INVALID_GOAL|PU_FAILURE_INVALID_START|PU_FAILURE_NO_NAVMESH|" + + "PU_FAILURE_NO_VALID_DESTINATION|PU_FAILURE_OTHER|PU_FAILURE_PARCEL_UNREACHABLE|" + + "PU_FAILURE_TARGET_GONE|PU_FAILURE_UNREACHABLE|PU_GOAL_REACHED|PU_SLOWDOWN_DISTANCE_REACHED|" + + "RC_DATA_FLAGS|RC_DETECT_PHANTOM|RC_GET_LINK_NUM|RC_GET_NORMAL|RC_GET_ROOT_KEY|" + + "RC_MAX_HITS|RC_REJECT_AGENTS|RC_REJECT_LAND|RC_REJECT_NONPHYSICAL|RC_REJECT_PHYSICAL|" + + "RC_REJECT_TYPES|RCERR_CAST_TIME_EXCEEDED|RCERR_SIM_PERF_LOW|RCERR_UNKNOWN|" + + "REGION_FLAG_ALLOW_DAMAGE|REGION_FLAG_ALLOW_DIRECT_TELEPORT|REGION_FLAG_BLOCK_FLY|" + + "REGION_FLAG_BLOCK_TERRAFORM|REGION_FLAG_DISABLE_COLLISIONS|REGION_FLAG_DISABLE_PHYSICS|" + + "REGION_FLAG_FIXED_SUN|REGION_FLAG_RESTRICT_PUSHOBJECT|REGION_FLAG_SANDBOX|" + + "REMOTE_DATA_CHANNEL|REMOTE_DATA_REPLY|REMOTE_DATA_REQUEST|REQUIRE_LINE_OF_SIGHT|" + + "RESTITUTION|REVERSE|ROTATE|SCALE|SCRIPTED|SIM_STAT_PCT_CHARS_STEPPED|SMOOTH|" + + "STATUS_BLOCK_GRAB|STATUS_BLOCK_GRAB_OBJECT|STATUS_BOUNDS_ERROR|STATUS_CAST_SHADOWS|" + + "STATUS_DIE_AT_EDGE|STATUS_INTERNAL_ERROR|STATUS_MALFORMED_PARAMS|STATUS_NOT_FOUND|" + + "STATUS_NOT_SUPPORTED|STATUS_OK|STATUS_PHANTOM|STATUS_PHYSICS|STATUS_RETURN_AT_EDGE|" + + "STATUS_ROTATE_X|STATUS_ROTATE_Y|STATUS_ROTATE_Z|STATUS_SANDBOX|STATUS_TYPE_MISMATCH|" + + "STATUS_WHITELIST_FAILED|STRING_TRIM|STRING_TRIM_HEAD|STRING_TRIM_TAIL|TOUCH_INVALID_FACE|" + + "TRAVERSAL_TYPE|TRAVERSAL_TYPE_FAST|TRAVERSAL_TYPE_NONE|TRAVERSAL_TYPE_SLOW|" + + "TYPE_FLOAT|TYPE_INTEGER|TYPE_INVALID|TYPE_KEY|TYPE_ROTATION|TYPE_STRING|" + + "TYPE_VECTOR|URL_REQUEST_DENIED|URL_REQUEST_GRANTED|VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY|" + + "VEHICLE_ANGULAR_DEFLECTION_TIMESCALE|VEHICLE_ANGULAR_FRICTION_TIMESCALE|" + + "VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE|VEHICLE_ANGULAR_MOTOR_DIRECTION|VEHICLE_ANGULAR_MOTOR_TIMESCALE|" + + "VEHICLE_BANKING_EFFICIENCY|VEHICLE_BANKING_MIX|VEHICLE_BANKING_TIMESCALE|" + + "VEHICLE_BUOYANCY|VEHICLE_FLAG_CAMERA_DECOUPLED|VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT|" + + "VEHICLE_FLAG_HOVER_TERRAIN_ONLY|VEHICLE_FLAG_HOVER_UP_ONLY|VEHICLE_FLAG_HOVER_WATER_ONLY|" + + "VEHICLE_FLAG_LIMIT_MOTOR_UP|VEHICLE_FLAG_LIMIT_ROLL_ONLY|VEHICLE_FLAG_MOUSELOOK_BANK|" + + "VEHICLE_FLAG_MOUSELOOK_STEER|VEHICLE_FLAG_NO_DEFLECTION_UP|VEHICLE_HOVER_EFFICIENCY|" + + "VEHICLE_HOVER_HEIGHT|VEHICLE_HOVER_TIMESCALE|VEHICLE_LINEAR_DEFLECTION_EFFICIENCY|" + + "VEHICLE_LINEAR_DEFLECTION_TIMESCALE|VEHICLE_LINEAR_FRICTION_TIMESCALE|VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE|" + + "VEHICLE_LINEAR_MOTOR_DIRECTION|VEHICLE_LINEAR_MOTOR_OFFSET|VEHICLE_LINEAR_MOTOR_TIMESCALE|" + + "VEHICLE_REFERENCE_FRAME|VEHICLE_TYPE_AIRPLANE|VEHICLE_TYPE_BALLOON|VEHICLE_TYPE_BOAT|" + + "VEHICLE_TYPE_CAR|VEHICLE_TYPE_NONE|VEHICLE_TYPE_SLED|VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY|" + + "VEHICLE_VERTICAL_ATTRACTION_TIMESCALE|VERTICAL|WANDER_PAUSE_AT_WAYPOINTS", + "constant.language.integer.boolean.lsl" : "FALSE|TRUE", + "constant.language.key.lsl" : "NULL_KEY|TEXTURE_BLANK|TEXTURE_DEFAULT|TEXTURE_MEDIA|" + + "TEXTURE_PLYWOOD|TEXTURE_TRANSPARENT", + "constant.language.quaternion.lsl" : "ZERO_ROTATION", + "constant.language.string.lsl" : "EOF", + "constant.language.vector.lsl" : "TOUCH_INVALID_TEXCOORD|TOUCH_INVALID_VECTOR|ZERO_VECTOR", + "invalid.deprecated.lsl" : "llCloud|llCollisionSprite|llGodLikeRezObject|llMakeExplosion|" + + "llMakeFountain|llMakeSmoke|llMakeFire|llPointAt|llStopPointAt|llRefreshPrimURL|" + + "llSetPrimURL|llReleaseCamera|llTakeCamera|llRemoteDataSetRegion|llRemoteLoadScript|" + + "llSetInventoryPermMask|llSound|llSoundPreload|llXorBase64Strings|AGENT|" + + "DATA_RATING|LAND_LARGE_BRUSH|LAND_MEDIUM_BRUSH|LAND_SMALL_BRUSH|PERMISSION_CHANGE_JOINTS|" + + "PERMISSION_CHANGE_PERMISSIONS|PERMISSION_RELEASE_OWNERSHIP|PERMISSION_REMAP_CONTROLS|" + + "PRIM_CAST_SHADOWS|PRIM_TYPE_LEGACY|PSYS_SRC_INNERANGLE|PSYS_SRC_OUTERANGLE|" + + "VEHICLE_FLAG_NO_FLY_UP", + "invalid.illegal.lsl" : "event", + "keyword.control.lsl" : "do|else|for|if|jump|return|while", + "storage.type.lsl" : "float|integer|key|list|quaternion|rotation|string|vector", + "support.function.lsl": "llAbs|llAcos|llAddToLandBanList|llAddToLandPassList|" + + "llAdjustSoundVolume|llAllowInventoryDrop|llAngleBetween|llApplyImpulse|" + + "llApplyRotationalImpulse|llAsin|llAtan2|llAttachToAvatar|llAttachToAvatarTemp|" + + "llAvatarOnLinkSitTarget|llAvatarOnSitTarget|llAxes2Rot|llAxisAngle2Rot|" + + "llBase64ToInteger|llBase64ToString|llBreakAllLinks|llBreakLink|llCastRay|" + + "llCeil|llClearCameraParams|llClearLinkMedia|llClearPrimMedia|llCloseRemoteDataChannel|" + + "llCollisionFilter|llCollisionSound|llCos|llCreateCharacter|llCreateLink|" + + "llCSV2List|llDeleteCharacter|llDeleteSubList|llDeleteSubString|llDetachFromAvatar|" + + "llDetectedGrab|llDetectedGroup|llDetectedKey|llDetectedLinkNumber|llDetectedName|" + + "llDetectedOwner|llDetectedPos|llDetectedRot|llDetectedTouchBinormal|" + + "llDetectedTouchFace|llDetectedTouchNormal|llDetectedTouchPos|llDetectedTouchST|" + + "llDetectedTouchUV|llDetectedType|llDetectedVel|llDialog|llDie|llDumpList2String|" + + "llEdgeOfWorld|llEjectFromLand|llEmail|llEscapeURL|llEuler2Rot|llExecCharacterCmd|" + + "llEvade|llFabs|llFleeFrom|llFloor|llForceMouselook|llFrand|llGenerateKey|" + + "llGetAccel|llGetAgentInfo|llGetAgentLanguage|llGetAgentList|llGetAgentSize|" + + "llGetAlpha|llGetAndResetTime|llGetAnimation|llGetAnimationList|llGetAnimationOverride|" + + "llGetAttached|llGetBoundingBox|llGetCameraPos|llGetCameraRot|llGetCenterOfMass|" + + "llGetClosestNavPoint|llGetColor|llGetCreator|llGetDate|llGetDisplayName|" + + "llGetEnergy|llGetEnv|llGetForce|llGetFreeMemory|llGetFreeURLs|llGetGeometricCenter|" + + "llGetGMTclock|llGetHTTPHeader|llGetInventoryCreator|llGetInventoryKey|llGetInventoryName|" + + "llGetInventoryNumber|llGetInventoryPermMask|llGetInventoryType|llGetKey|" + + "llGetLandOwnerAt|llGetLinkKey|llGetLinkMedia|llGetLinkName|llGetLinkNumber|" + + "llGetLinkNumberOfSides|llGetLinkPrimitiveParams|llGetListEntryType|llGetListLength|" + + "llGetLocalPos|llGetLocalRot|llGetMass|llGetMassMKS|llGetMemoryLimit|" + + "llGetNextEmail|llGetNotecardLine|llGetNumberOfNotecardLines|llGetNumberOfPrims|" + + "llGetNumberOfSides|llGetObjectDesc|llGetObjectDetails|llGetObjectMass|" + + "llGetObjectName|llGetObjectPermMask|llGetObjectPrimCount|llGetOmega|" + + "llGetOwner|llGetOwnerKey|llGetParcelDetails|llGetParcelFlags|llGetParcelMaxPrims|" + + "llGetParcelMusicURL|llGetParcelPrimCount|llGetParcelPrimOwners|llGetPermissions|" + + "llGetPermissionsKey|llGetPhysicsMaterial|llGetPos|llGetPrimitiveParams|" + + "llGetPrimMediaParams|llGetRegionAgentCount|llGetRegionCorner|llGetRegionFlags|" + + "llGetRegionFPS|llGetRegionName|llGetRegionTimeDilation|llGetRootPosition|" + + "llGetRootRotation|llGetRot|llGetScale|llGetScriptName|llGetScriptState|" + + "llGetSimStats|llGetSimulatorHostname|llGetSPMaxMemory|llGetStartParameter|" + + "llGetStaticPath|llGetStatus|llGetSubString|llGetSunDirection|llGetTexture|" + + "llGetTextureOffset|llGetTextureRot|llGetTextureScale|llGetTime|llGetTimeOfDay|" + + "llGetTimestamp|llGetTorque|llGetUnixTime|llGetUsedMemory|llGetUsername|" + + "llGetVel|llGetWallclock|llGiveInventory|llGiveInventoryList|llGiveMoney|" + + "llGround|llGroundContour|llGroundNormal|llGroundRepel|llGroundSlope|" + + "llHTTPRequest|llHTTPResponse|llInsertString|llInstantMessage|llIntegerToBase64|" + + "llKey2Name|llLinkParticleSystem|llLinkSitTarget|llList2CSV|llList2Float|" + + "llList2Integer|llList2Key|llList2List|llList2ListStrided|llList2Rot|" + + "llList2String|llList2Vector|llListen|llListenControl|llListenRemove|" + + "llListFindList|llListInsertList|llListRandomize|llListReplaceList|llListSort|" + + "llListStatistics|llLoadURL|llLog|llLog10|llLookAt|llLoopSound|llLoopSoundMaster|" + + "llLoopSoundSlave|llManageEstateAccess|llMapDestination|llMD5String|llMessageLinked|" + + "llMinEventDelay|llModifyLand|llModPow|llMoveToTarget|llNavigateTo|llOffsetTexture|" + + "llOpenRemoteDataChannel|llOverMyLand|llOwnerSay|llParcelMediaCommandList|" + + "llParcelMediaQuery|llParseString2List|llParseStringKeepNulls|llParticleSystem|" + + "llPassCollisions|llPassTouches|llPatrolPoints|llPlaySound|llPlaySoundSlave|" + + "llPow|llPreloadSound|llPursue|llPushObject|llRegionSay|llRegionSayTo|" + + "llReleaseControls|llReleaseURL|llRemoteDataReply|llRemoteLoadScriptPin|" + + "llRemoveFromLandBanList|llRemoveFromLandPassList|llRemoveInventory|llRemoveVehicleFlags|" + + "llRequestAgentData|llRequestDisplayName|llRequestInventoryData|llRequestPermissions|" + + "llRequestSecureURL|llRequestSimulatorData|llRequestURL|llRequestUsername|" + + "llResetAnimationOverride|llResetLandBanList|llResetLandPassList|llResetOtherScript|" + + "llResetScript|llResetTime|llRezAtRoot|llRezObject|llRot2Angle|llRot2Axis|llRot2Euler|" + + "llRot2Fwd|llRot2Left|llRot2Up|llRotateTexture|llRotBetween|llRotLookAt|" + + "llRotTarget|llRotTargetRemove|llRound|llSameGroup|llSay|llScaleTexture|" + + "llScriptDanger|llScriptProfiler|llSendRemoteData|llSensor|llSensorRemove|" + + "llSensorRepeat|llSetAlpha|llSetAngularVelocity|llSetAnimationOverride|llSetBuoyancy|" + + "llSetCameraAtOffset|llSetCameraEyeOffset|llSetCameraParams|llSetClickAction|" + + "llSetColor|llSetContentType|llSetDamage|llSetForce|llSetForceAndTorque|llSetHoverHeight|" + + "llSetKeyframedMotion|llSetLinkAlpha|llSetLinkCamera|llSetLinkColor|llSetLinkMedia|" + + "llSetLinkPrimitiveParams|llSetLinkPrimitiveParamsFast|llSetLinkTexture|llSetLinkTextureAnim|" + + "llSetLocalRot|llSetMemoryLimit|llSetObjectDesc|llSetObjectName|llSetParcelMusicURL|" + + "llSetPayPrice|llSetPhysicsMaterial|llSetPos|llSetPrimitiveParams|llSetPrimMediaParams|" + + "llSetRegionPos|llSetRemoteScriptAccessPin|llSetRot|llSetScale|llSetScriptState|" + + "llSetSitText|llSetSoundQueueing|llSetSoundRadius|llSetStatus|llSetText|" + + "llSetTexture|llSetTextureAnim|llSetTimerEvent|llSetTorque|llSetTouchText|" + + "llSetVehicleFlags|llSetVehicleFloatParam|llSetVehicleRotationParam|llSetVehicleType|" + + "llSetVehicleVectorParam|llSetVelocity|llSHA1String|llShout|llSin|llSitTarget|" + + "llSleep|llSqrt|llStartAnimation|llStopAnimation|llStopHover|llStopLookAt|" + + "llStopMoveToTarget|llStopSound|llStringLength|llStringToBase64|llStringTrim|" + + "llSubStringIndex|llTakeControls|llTan|llTarget|llTargetOmega|llTargetRemove|" + + "llTeleportAgent|llTeleportAgentGlobalCoords|llTeleportAgentHome|llTextBox|" + + "llToLower|llToUpper|llTransferLindenDollars|llTriggerSound|llTriggerSoundLimited|" + + "llUnescapeURL|llUnSit|llUpdateCharacter|llVecDist|llVecMag|llVecNorm|" + + "llVolumeDetect|llWanderWithin|llWater|llWhisper|llWind|llXorBase64StringsCorrect", + "support.function.event.lsl" : "at_rot_target|at_target|attach|changed|collision|" + + "collision_end|collision_start|control|dataserver|email|http_request|" + + "http_response|land_collision|land_collision_end|land_collision_start|" + + "link_message|listen|money|moving_end|moving_start|no_sensor|not_at_rot_target|" + + "not_at_target|object_rez|on_rez|path_update|remote_data|run_time_permissions|" + + "sensor|state_entry|state_exit|timer|touch|touch_end|touch_start|transaction_result" + }, "identifier"); - this.$rules = { - "start" : [ - { - token : "comment.line", - regex : "\\/\\/.*$" - }, { - token : "comment.block", - regex : "\\/\\*", - next : "comment" - }, { - token : "string.double", - regex : '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' - }, { - token : "string.double", - regex : '["].*$', - next : "qqstring" - }, { - token : "constant.numeric", - regex : "0[xX][0-9a-fA-F]+\\b" - }, { - token : "constant.numeric", - regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b" - }, { - token : keywordMapper, - regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b" - }, { - token : "keyword.operator", - regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" - }, { - token : "punctuation.operator", - regex : "\\?|\\:|\\,|\\;|\\." - }, { - token : "paren.lparen", - regex : "[\\[\\(\\{]" - }, { - token : "paren.rparen", - regex : "[\\]\\)\\}]" - }, { - token : "text", - regex : "\\s+" - } - ], - "comment" : [ - { - token : "comment.block", - regex : ".*?\\*\\/", - next : "start" - }, { - token : "comment.block", - regex : ".+" - } - ], - "qqstring" : [ - { - token : "string.double", - regex : '(?:(?:\\\\.)|(?:[^"\\\\]))*?"', - next : "start" - }, { - token : "string.double", - regex : '.+' - } - ] - }; -}; + this.$rules = { + "start" : [ + { + token : "comment.line.double-slash.lsl", + regex : "\\/\\/.*$" + }, { + token : "comment.block.lsl", + regex : "\\/\\*", + next : "comment" + }, { + token : "string.quoted.double.lsl", + start : '"', + end : '"', + next : [ + { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } + ] + } { + token : "constant.numeric.lsl", + regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b" + }, { + token : "entity.name.state.lsl", + regex : "\\b((state)\\s+\\w+|default)\\b" + }, { + token : keywordMapper, + regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" + }, { + token : "support.function.user-defined.lsl", + regex : "(?:\w+\s+)?(\w+)?\s*(?=\(.*?\))" + }, { + token : "keyword.operator.lsl", + regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" + }, { + token : "punctuation.operator.lsl", + regex : "\\,|\\;" + }, { + token : "paren.lparen.lsl", + regex : "[\\[\\(\\{]" + }, { + token : "paren.rparen.lsl", + regex : "[\\]\\)\\}]" + }, { + token : "text.lsl", + regex : "\\s+" + } + ], + "comment" : [ + { + token : "comment.block.lsl", + regex : ".*?\\*\\/", + next : "start" + }, { + token : "comment.block.lsl", + regex : ".+" + } + ] + }; + this.normalizeRules(); + } -oop.inherits(lslHighlightRules, TextHighlightRules); - -exports.lslHighlightRules = lslHighlightRules; + exports.LSLHighlightRules = LSLHighlightRules; }); From a39212bd0d0645d069b0c9c740233a9516798725 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Mon, 15 Apr 2013 21:08:34 +0200 Subject: [PATCH 03/11] added missing comma and fixed call in lsl.js .....now still have to fix regex line 311 in lsl_highlight_rules.js --- lib/ace/mode/lsl.js | 2 +- lib/ace/mode/lsl_highlight_rules.js | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/ace/mode/lsl.js b/lib/ace/mode/lsl.js index f839ef16..a10acd0e 100644 --- a/lib/ace/mode/lsl.js +++ b/lib/ace/mode/lsl.js @@ -42,7 +42,7 @@ var oop = require("../lib/oop"); var Mode = function() { this.$tokenizer = new Tokenizer(new Rules().getRules()); - this.$outdent = new MatchingBraceOutdent(); + this.$outdent = new Outdent(); this.$behaviour = new CstyleBehaviour(); this.foldingRules = new CStyleFoldMode(); }; diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index ca85351d..3c038fd8 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -39,7 +39,7 @@ define(function(require, exports, module) { function LSLHighlightRules() { var keywordMapper = this.createKeywordMapper({ "constant.language.float.lsl" : "DEG_TO_RAD|PI|PI_BY_TWO|RAD_TO_DEG|SQRT2|TWO_PI", - "constant.language.integer.lsl": "ACTIVE ALWAYS_RUN|AGENT_ATTACHMENTS|AGENT_AUTOPILOT|" + + "constant.language.integer.lsl": "ACTIVE|ALWAYS_RUN|AGENT_ATTACHMENTS|AGENT_AUTOPILOT|" + "AGENT_AWAY|AGENT_BUSY|AGENT_BY_LEGACY_NAME|AGENT_BY_USERNAME|AGENT_CROUCHING|" + "AGENT_FLYING|AGENT_IN_AIR|AGENT_LIST_PARCEL|AGENT_LIST_PARCEL_OWNER|" + "AGENT_LIST_REGION|AGENT_MOUSELOOK|AGENT_ON_OBJECT|AGENT_SCRIPTED|AGENT_SITTING|" + @@ -297,7 +297,7 @@ define(function(require, exports, module) { next : [ { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } ] - } { + }, { token : "constant.numeric.lsl", regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b" }, { @@ -308,7 +308,7 @@ define(function(require, exports, module) { regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" }, { token : "support.function.user-defined.lsl", - regex : "(?:\w+\s+)?(\w+)?\s*(?=\(.*?\))" + regex : "(?:\w+\s+)?(\w+)?\s*(?=\(.*?\))" // apparently some bad esape? }, { token : "keyword.operator.lsl", regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" From 36083cbfe85a427d99ae51a9bf93a5daa165dab1 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Mon, 15 Apr 2013 21:24:06 +0200 Subject: [PATCH 04/11] unindented back as before --- lib/ace/mode/lsl_highlight_rules.js | 612 ++++++++++++++-------------- 1 file changed, 306 insertions(+), 306 deletions(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index 3c038fd8..9bfe4aae 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -31,314 +31,314 @@ define(function(require, exports, module) { "use strict"; - var oop = require("../lib/oop"); - var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; +var oop = require("../lib/oop"); +var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; - oop.inherits(LSLHighlightRules, TextHighlightRules); +oop.inherits(LSLHighlightRules, TextHighlightRules); - function LSLHighlightRules() { - var keywordMapper = this.createKeywordMapper({ - "constant.language.float.lsl" : "DEG_TO_RAD|PI|PI_BY_TWO|RAD_TO_DEG|SQRT2|TWO_PI", - "constant.language.integer.lsl": "ACTIVE|ALWAYS_RUN|AGENT_ATTACHMENTS|AGENT_AUTOPILOT|" + - "AGENT_AWAY|AGENT_BUSY|AGENT_BY_LEGACY_NAME|AGENT_BY_USERNAME|AGENT_CROUCHING|" + - "AGENT_FLYING|AGENT_IN_AIR|AGENT_LIST_PARCEL|AGENT_LIST_PARCEL_OWNER|" + - "AGENT_LIST_REGION|AGENT_MOUSELOOK|AGENT_ON_OBJECT|AGENT_SCRIPTED|AGENT_SITTING|" + - "AGENT_TYPING|AGENT_WALKING|ALL_SIDES|ANIM_ON|ATTACH_BACK|ATTACH_BELLY|" + - "ATTACH_CHEST|ATTACH_CHIN|ATTACH_HEAD|ATTACH_HUD_BOTTOM|ATTACH_HUD_BOTTOM_LEFT|" + - "ATTACH_HUD_BOTTOM_RIGHT|ATTACH_HUD_CENTER_1|ATTACH_HUD_CENTER_2|ATTACH_HUD_TOP_CENTER|" + - "ATTACH_HUD_TOP_LEFT|ATTACH_HUD_TOP_RIGHT|ATTACH_LEAR|ATTACH_LEFT_PEC|" + - "ATTACH_LEYE|ATTACH_LFOOT|ATTACH_LHAND|ATTACH_LHIP|ATTACH_LLARM|ATTACH_LLLEG|" + - "ATTACH_LSHOULDER|ATTACH_LUARM|ATTACH_LULEG|ATTACH_MOUTH|ATTACH_NOSE|" + - "ATTACH_PELVIS|ATTACH_REAR|ATTACH_REYE|ATTACH_RFOOT|ATTACH_RHAND|ATTACH_RHIP|" + - "ATTACH_RIGHT_PEC|ATTACH_RLARM|ATTACH_RLLEG|ATTACH_RSHOULDER|ATTACH_RUARM|" + - "ATTACH_RULEG|AVOID_CHARACTERS|AVOID_DYNAMIC_OBSTACLES|AVOID_NONE|CAMERA_ACTIVE|" + - "CAMERA_BEHINDNESS_ANGLE|CAMERA_BEHINDNESS_LAG|CAMERA_DISTANCE|CAMERA_FOCUS|" + - "CAMERA_FOCUS_LAG|CAMERA_FOCUS_LOCKED|CAMERA_FOCUS_OFFSET|CAMERA_FOCUS_THRESHOLD|" + - "CAMERA_PITCH|CAMERA_POSITION|CAMERA_POSITION_LAG|CAMERA_POSITION_LOCKED|" + - "CAMERA_POSITION_THRESHOLD|CHANGED_ALLOWED_DROP|CHANGED_COLOR|CHANGED_INVENTORY|" + - "CHANGED_LINK|CHANGED_MEDIA|CHANGED_OWNER|CHANGED_REGION|CHANGED_REGION_START|" + - "CHANGED_SCALE|CHANGED_SHAPE|CHANGED_TELEPORT|CHANGED_TEXTURE|CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES|" + - "CHARACTER_AVOIDANCE_MODE|CHARACTER_CMD_JUMP|CHARACTER_CMD_SMOOTH_STOP|" + - "CHARACTER_CMD_STOP|CHARACTER_DESIRED_SPEED|CHARACTER_DESIRED_TURN_SPEED|" + - "CHARACTER_LENGTH|CHARACTER_MAX_ACCEL|CHARACTER_MAX_ANGULAR_ACCEL|CHARACTER_MAX_ANGULAR_SPEED|" + - "CHARACTER_MAX_DECEL|CHARACTER_MAX_SPEED|CHARACTER_MAX_TURN_RADIUS|CHARACTER_ORIENTATION|" + - "CHARACTER_RADIUS|CHARACTER_TYPE|CHARACTER_TYPE_A|CHARACTER_TYPE_B|CHARACTER_TYPE_C|" + - "CHARACTER_TYPE_D|CHARACTER_TYPE_NONE|CLICK_ACTION_BUY|CLICK_ACTION_NONE|" + - "CLICK_ACTION_OPEN|CLICK_ACTION_OPEN_MEDIA|CLICK_ACTION_PAY|CLICK_ACTION_PLAY|" + - "CLICK_ACTION_SIT|CLICK_ACTION_TOUCH|CONTENT_TYPE_HTML|CONTENT_TYPE_TEXT|" + - "CONTROL_BACK|CONTROL_DOWN|CONTROL_FWD|CONTROL_LBUTTON|CONTROL_LEFT|CONTROL_ML_LBUTTON|" + - "CONTROL_RIGHT|CONTROL_ROT_LEFT|CONTROL_ROT_RIGHT|CONTROL_UP|DATA_BORN|" + - "DATA_NAME|DATA_ONLINE|DATA_PAYINFO|DATA_SIM_POS|DATA_SIM_RATING|DATA_SIM_STATUS|" + - "DENSITY|DEBUG_CHANNEL|ESTATE_ACCESS_ALLOWED_AGENT_ADD|ESTATE_ACCESS_ALLOWED_AGENT_REMOVE|" + - "ESTATE_ACCESS_ALLOWED_GROUP_ADD|ESTATE_ACCESS_ALLOWED_GROUP_REMOVE|" + - "ESTATE_ACCESS_BANNED_AGENT_ADD|ESTATE_ACCESS_BANNED_AGENT_REMOVE|" + - "FORCE_DIRECT_PATH|FRICTION|GCNP_RADIUS|GCNP_STATIC|GRAVITY_MULTIPLIER|" + - "HORIZONTAL|HTTP_BODY_MAXLENGTH|HTTP_BODY_TRUNCATED|HTTP_CUSTOM_HEADER|" + - "HTTP_METHOD|HTTP_MIMETYPE|HTTP_PRAGMA_NO_CACHE|HTTP_VERBOSE_THROTTLE|" + - "HTTP_VERIFY_CERT|INVENTORY_ALL|INVENTORY_ANIMATION|INVENTORY_BODYPART|" + - "INVENTORY_CLOTHING|INVENTORY_GESTURE|INVENTORY_LANDMARK|INVENTORY_NONE|" + - "INVENTORY_NOTECARD|INVENTORY_OBJECT|INVENTORY_SCRIPT|INVENTORY_SOUND|" + - "INVENTORY_TEXTURE|KFM_CMD_PAUSE|KFM_CMD_PLAY|KFM_CMD_STOP|KFM_COMMAND|" + - "KFM_DATA|KFM_FORWARD|KFM_LOOP|KFM_MODE|KFM_PING_PONG|KFM_REVERSE|KFM_ROTATION|" + - "KFM_TRANSLATION|LAND_LEVEL|LAND_LOWER|LAND_NOISE|LAND_RAISE|LAND_REVERT|" + - "LAND_SMOOTH|LINK_ALL_CHILDREN|LINK_ALL_OTHERS|LINK_ROOT|LINK_SET|LINK_THIS|" + - "LIST_STAT_GEOMETRIC_MEAN|LIST_STAT_MAX|LIST_STAT_MEAN|LIST_STAT_MEDIAN|" + - "LIST_STAT_MIN|LIST_STAT_NUM_COUNT|LIST_STAT_RANGE|LIST_STAT_STD_DEV|LIST_STAT_SUM|" + - "LIST_STAT_SUM_SQUARES|LOOP|MASK_BASE|MASK_EVERYONE|MASK_GROUP|MASK_NEXT|" + - "MASK_OWNER|OBJECT_ATTACHED_POINT|OBJECT_CREATOR|OBJECT_DESC|" + - "OBJECT_GROUP|OBJECT_NAME|OBJECT_OWNER|OBJECT_PATHFINDING_TYPE|OBJECT_PHYSICS_COST|" + - "OBJECT_POS|OBJECT_PRIM_EQUIVALENCE|OBJECT_ROOT|OBJECT_ROT|OBJECT_RUNNING_SCRIPT_COUNT|" + - "OBJECT_SCRIPT_MEMORY|OBJECT_SCRIPT_TIME|OBJECT_SERVER_COST|OBJECT_STREAMING_COST|" + - "OBJECT_TOTAL_SCRIPT_COUNT|OBJECT_UNKNOWN_DETAIL|OBJECT_VELOCITY|OPT_AVATAR|" + - "OPT_CHARACTER|OPT_EXCLUSION_VOLUME|OPT_LEGACY_LINKSET|OPT_MATERIAL_VOLUME|" + - "OPT_OTHER|OPT_STATIC_OBSTACLE|OPT_WALKABLE|PARCEL_COUNT_GROUP|PARCEL_COUNT_OTHER|" + - "PARCEL_COUNT_OWNER|PARCEL_COUNT_SELECTED|PARCEL_COUNT_TEMP|PARCEL_COUNT_TOTAL|" + - "PARCEL_DETAILS_AREA|PARCEL_DETAILS_DESC|PARCEL_DETAILS_GROUP|PARCEL_DETAILS_ID|" + - "PARCEL_DETAILS_NAME|PARCEL_DETAILS_OWNER|PARCEL_DETAILS_SEE_AVATARS|" + - "PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS|" + - "PARCEL_FLAG_ALLOW_CREATE_OBJECTS|PARCEL_FLAG_ALLOW_DAMAGE|PARCEL_FLAG_ALLOW_FLY|" + - "PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_GROUP_SCRIPTS|" + - "PARCEL_FLAG_ALLOW_LANDMARK|PARCEL_FLAG_ALLOW_SCRIPTS|PARCEL_FLAG_ALLOW_TERRAFORM|" + - "PARCEL_FLAG_LOCAL_SOUND_ONLY|PARCEL_FLAG_RESTRICT_PUSHOBJECT|PARCEL_FLAG_USE_ACCESS_GROUP|" + - "PARCEL_FLAG_USE_ACCESS_LIST|PARCEL_FLAG_USE_BAN_LIST|PARCEL_FLAG_USE_LAND_PASS_LIST|" + - "PARCEL_MEDIA_COMMAND_AGENT|PARCEL_MEDIA_COMMAND_AUTO_ALIGN|PARCEL_MEDIA_COMMAND_DESC|" + - "PARCEL_MEDIA_COMMAND_LOOP|PARCEL_MEDIA_COMMAND_LOOP_SET|PARCEL_MEDIA_COMMAND_PAUSE|" + - "PARCEL_MEDIA_COMMAND_PLAY|PARCEL_MEDIA_COMMAND_SIZE|PARCEL_MEDIA_COMMAND_STOP|" + - "PARCEL_MEDIA_COMMAND_TEXTURE|PARCEL_MEDIA_COMMAND_TIME|PARCEL_MEDIA_COMMAND_TYPE|" + - "PARCEL_MEDIA_COMMAND_UNLOAD|PARCEL_MEDIA_COMMAND_URL|PASSIVE|PATROL_PAUSE_AT_WAYPOINTS|" + - "PAYMENT_INFO_ON_FILE|PAYMENT_INFO_USED|PAY_DEFAULT|PAY_HIDE|PERMISSION_ATTACH|" + - "PERMISSION_CHANGE_LINKS|PERMISSION_CONTROL_CAMERA|PERMISSION_DEBIT|PERMISSION_OVERRIDE_ANIMATIONS|" + - "PERMISSION_SILENT_ESTATE_MANAGEMENT|PERMISSION_TAKE_CONTROLS|PERMISSION_TELEPORT|" + - "PERMISSION_TRACK_CAMERA|PERMISSION_TRIGGER_ANIMATION|PERM_ALL|PERM_COPY|PERM_MODIFY|" + - "PERM_MOVE|PERM_TRANSFER|PING_PONG|PRIM_BUMP_BARK|PRIM_BUMP_BLOBS|PRIM_BUMP_BRICKS|" + - "PRIM_BUMP_BRIGHT|PRIM_BUMP_CHECKER|PRIM_BUMP_CONCRETE|PRIM_BUMP_DARK|PRIM_BUMP_DISKS|" + - "PRIM_BUMP_GRAVEL|PRIM_BUMP_LARGETILE|PRIM_BUMP_NONE|PRIM_BUMP_SHINY|PRIM_BUMP_SIDING|" + - "PRIM_BUMP_STONE|PRIM_BUMP_STUCCO|PRIM_BUMP_SUCTION|PRIM_BUMP_TILE|PRIM_BUMP_WEAVE|" + - "PRIM_BUMP_WOOD|PRIM_COLOR|PRIM_DESC|PRIM_FLEXIBLE|PRIM_FULLBRIGHT|PRIM_GLOW|" + - "PRIM_HOLE_CIRCLE|PRIM_HOLE_DEFAULT|PRIM_HOLE_SQUARE|PRIM_HOLE_TRIANGLE|PRIM_LINK_TARGET|" + - "PRIM_MATERIAL|PRIM_MATERIAL_FLESH|PRIM_MATERIAL_GLASS|PRIM_MATERIAL_LIGHT|" + - "PRIM_MATERIAL_METAL|PRIM_MATERIAL_PLASTIC|PRIM_MATERIAL_RUBBER|PRIM_MATERIAL_STONE|" + - "PRIM_MATERIAL_WOOD|PRIM_MEDIA_ALT_IMAGE_ENABLE|PRIM_MEDIA_AUTO_LOOP|PRIM_MEDIA_AUTO_PLAY|" + - "PRIM_MEDIA_AUTO_SCALE|PRIM_MEDIA_AUTO_ZOOM|PRIM_MEDIA_CONTROLS|PRIM_MEDIA_CONTROLS_STANDARD|" + - "PRIM_MEDIA_CONTROLS_MINI|PRIM_MEDIA_CURRENT_URL|PRIM_MEDIA_FIRST_CLICK_INTERACT|" + - "PRIM_MEDIA_HEIGHT_PIXELS|PRIM_MEDIA_HOME_URL|PRIM_MEDIA_PERM_ANYONE|PRIM_MEDIA_PERM_GROUP|" + - "PRIM_MEDIA_PERM_NONE|PRIM_MEDIA_PERM_OWNER|PRIM_MEDIA_PERMS_CONTROL|PRIM_MEDIA_PERMS_INTERACT|" + - "PRIM_MEDIA_WIDTH_PIXELS|PRIM_MEDIA_WHITELIST|PRIM_MEDIA_WHITELIST_ENABLE|" + - "PRIM_NAME|PRIM_OMEGA|PRIM_PHANTOM|PRIM_PHYSICS|PRIM_PHYSICS_MATERIAL|PRIM_PHYSICS_SHAPE_CONVEX|" + - "PRIM_PHYSICS_SHAPE_NONE|PRIM_PHYSICS_SHAPE_PRIM|PRIM_PHYSICS_SHAPE_TYPE|" + - "PRIM_POINT_LIGHT|PRIM_POSITION|PRIM_POS_LOCAL|PRIM_ROTATION|PRIM_ROT_LOCAL|" + - "PRIM_SCULPT_FLAG_INVERT|PRIM_SCULPT_FLAG_MIRROR|PRIM_SCULPT_TYPE_CYLINDER|" + - "PRIM_SCULPT_TYPE_MASK|PRIM_SCULPT_TYPE_PLANE|PRIM_SCULPT_TYPE_SPHERE|PRIM_SCULPT_TYPE_TORUS|" + - "PRIM_SHINY_HIGH|PRIM_SHINY_LOW|PRIM_SHINY_MEDIUM|PRIM_SHINY_NONE|PRIM_SIZE|" + - "PRIM_SLICE|PRIM_TEMP_ON_REZ|PRIM_TEXGEN|PRIM_TEXGEN_DEFAULT|PRIM_TEXGEN_PLANAR|" + - "PRIM_TEXT|PRIM_TEXTURE|PRIM_TYPE|PRIM_TYPE_BOX|PRIM_TYPE_CYLINDER|PRIM_TYPE_PRISM|PRIM_TYPE_RING|" + - "PRIM_TYPE_SCULPT|PRIM_TYPE_SPHERE|PRIM_TYPE_TORUS|PRIM_TYPE_TUBE|PROFILE_NONE|" + - "PROFILE_SCRIPT_MEMORY|PSYS_PART_BOUNCE_MASK|PSYS_PART_EMISSIVE_MASK|PSYS_PART_END_ALPHA|" + - "PSYS_PART_END_COLOR|PSYS_PART_END_SCALE|PSYS_PART_FLAGS|PSYS_PART_FOLLOW_SRC_MASK|" + - "PSYS_PART_FOLLOW_VELOCITY_MASK|PSYS_PART_INTERP_COLOR_MASK|PSYS_PART_INTERP_SCALE_MASK|" + - "PSYS_PART_MAX_AGE|PSYS_PART_START_ALPHA|PSYS_PART_START_COLOR|PSYS_PART_START_SCALE|" + - "PSYS_PART_TARGET_LINEAR_MASK|PSYS_PART_TARGET_POS_MASK|PSYS_PART_WIND_MASK|" + - "PSYS_SRC_ACCEL|PSYS_SRC_ANGLE_BEGIN|PSYS_SRC_ANGLE_END|PSYS_SRC_BURST_PART_COUNT|" + - "PSYS_SRC_BURST_RADIUS|PSYS_SRC_BURST_RATE|PSYS_SRC_BURST_SPEED_MAX|PSYS_SRC_BURST_SPEED_MIN|" + - "PSYS_SRC_MAX_AGE|PSYS_SRC_OMEGA|PSYS_SRC_PATTERN|PSYS_SRC_PATTERN_ANGLE|" + - "PSYS_SRC_PATTERN_ANGLE_CONE|PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY|PSYS_SRC_PATTERN_DROP|" + - "PSYS_SRC_PATTERN_EXPLODE|PSYS_SRC_TARGET_KEY|PSYS_SRC_TEXTURE|PUBLIC_CHANNEL|" + - "PURSUIT_FUZZ_FACTOR|PURSUIT_GOAL_TOLERANCE|PURSUIT_INTERCEPT|PURSUIT_OFFSET|" + - "PU_EVADE_HIDDEN|PU_EVADE_SPOTTED|PU_FAILURE_DYNAMIC_PATHFINDING_DISABLED|" + - "PU_FAILURE_INVALID_GOAL|PU_FAILURE_INVALID_START|PU_FAILURE_NO_NAVMESH|" + - "PU_FAILURE_NO_VALID_DESTINATION|PU_FAILURE_OTHER|PU_FAILURE_PARCEL_UNREACHABLE|" + - "PU_FAILURE_TARGET_GONE|PU_FAILURE_UNREACHABLE|PU_GOAL_REACHED|PU_SLOWDOWN_DISTANCE_REACHED|" + - "RC_DATA_FLAGS|RC_DETECT_PHANTOM|RC_GET_LINK_NUM|RC_GET_NORMAL|RC_GET_ROOT_KEY|" + - "RC_MAX_HITS|RC_REJECT_AGENTS|RC_REJECT_LAND|RC_REJECT_NONPHYSICAL|RC_REJECT_PHYSICAL|" + - "RC_REJECT_TYPES|RCERR_CAST_TIME_EXCEEDED|RCERR_SIM_PERF_LOW|RCERR_UNKNOWN|" + - "REGION_FLAG_ALLOW_DAMAGE|REGION_FLAG_ALLOW_DIRECT_TELEPORT|REGION_FLAG_BLOCK_FLY|" + - "REGION_FLAG_BLOCK_TERRAFORM|REGION_FLAG_DISABLE_COLLISIONS|REGION_FLAG_DISABLE_PHYSICS|" + - "REGION_FLAG_FIXED_SUN|REGION_FLAG_RESTRICT_PUSHOBJECT|REGION_FLAG_SANDBOX|" + - "REMOTE_DATA_CHANNEL|REMOTE_DATA_REPLY|REMOTE_DATA_REQUEST|REQUIRE_LINE_OF_SIGHT|" + - "RESTITUTION|REVERSE|ROTATE|SCALE|SCRIPTED|SIM_STAT_PCT_CHARS_STEPPED|SMOOTH|" + - "STATUS_BLOCK_GRAB|STATUS_BLOCK_GRAB_OBJECT|STATUS_BOUNDS_ERROR|STATUS_CAST_SHADOWS|" + - "STATUS_DIE_AT_EDGE|STATUS_INTERNAL_ERROR|STATUS_MALFORMED_PARAMS|STATUS_NOT_FOUND|" + - "STATUS_NOT_SUPPORTED|STATUS_OK|STATUS_PHANTOM|STATUS_PHYSICS|STATUS_RETURN_AT_EDGE|" + - "STATUS_ROTATE_X|STATUS_ROTATE_Y|STATUS_ROTATE_Z|STATUS_SANDBOX|STATUS_TYPE_MISMATCH|" + - "STATUS_WHITELIST_FAILED|STRING_TRIM|STRING_TRIM_HEAD|STRING_TRIM_TAIL|TOUCH_INVALID_FACE|" + - "TRAVERSAL_TYPE|TRAVERSAL_TYPE_FAST|TRAVERSAL_TYPE_NONE|TRAVERSAL_TYPE_SLOW|" + - "TYPE_FLOAT|TYPE_INTEGER|TYPE_INVALID|TYPE_KEY|TYPE_ROTATION|TYPE_STRING|" + - "TYPE_VECTOR|URL_REQUEST_DENIED|URL_REQUEST_GRANTED|VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY|" + - "VEHICLE_ANGULAR_DEFLECTION_TIMESCALE|VEHICLE_ANGULAR_FRICTION_TIMESCALE|" + - "VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE|VEHICLE_ANGULAR_MOTOR_DIRECTION|VEHICLE_ANGULAR_MOTOR_TIMESCALE|" + - "VEHICLE_BANKING_EFFICIENCY|VEHICLE_BANKING_MIX|VEHICLE_BANKING_TIMESCALE|" + - "VEHICLE_BUOYANCY|VEHICLE_FLAG_CAMERA_DECOUPLED|VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT|" + - "VEHICLE_FLAG_HOVER_TERRAIN_ONLY|VEHICLE_FLAG_HOVER_UP_ONLY|VEHICLE_FLAG_HOVER_WATER_ONLY|" + - "VEHICLE_FLAG_LIMIT_MOTOR_UP|VEHICLE_FLAG_LIMIT_ROLL_ONLY|VEHICLE_FLAG_MOUSELOOK_BANK|" + - "VEHICLE_FLAG_MOUSELOOK_STEER|VEHICLE_FLAG_NO_DEFLECTION_UP|VEHICLE_HOVER_EFFICIENCY|" + - "VEHICLE_HOVER_HEIGHT|VEHICLE_HOVER_TIMESCALE|VEHICLE_LINEAR_DEFLECTION_EFFICIENCY|" + - "VEHICLE_LINEAR_DEFLECTION_TIMESCALE|VEHICLE_LINEAR_FRICTION_TIMESCALE|VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE|" + - "VEHICLE_LINEAR_MOTOR_DIRECTION|VEHICLE_LINEAR_MOTOR_OFFSET|VEHICLE_LINEAR_MOTOR_TIMESCALE|" + - "VEHICLE_REFERENCE_FRAME|VEHICLE_TYPE_AIRPLANE|VEHICLE_TYPE_BALLOON|VEHICLE_TYPE_BOAT|" + - "VEHICLE_TYPE_CAR|VEHICLE_TYPE_NONE|VEHICLE_TYPE_SLED|VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY|" + - "VEHICLE_VERTICAL_ATTRACTION_TIMESCALE|VERTICAL|WANDER_PAUSE_AT_WAYPOINTS", - "constant.language.integer.boolean.lsl" : "FALSE|TRUE", - "constant.language.key.lsl" : "NULL_KEY|TEXTURE_BLANK|TEXTURE_DEFAULT|TEXTURE_MEDIA|" + - "TEXTURE_PLYWOOD|TEXTURE_TRANSPARENT", - "constant.language.quaternion.lsl" : "ZERO_ROTATION", - "constant.language.string.lsl" : "EOF", - "constant.language.vector.lsl" : "TOUCH_INVALID_TEXCOORD|TOUCH_INVALID_VECTOR|ZERO_VECTOR", - "invalid.deprecated.lsl" : "llCloud|llCollisionSprite|llGodLikeRezObject|llMakeExplosion|" + - "llMakeFountain|llMakeSmoke|llMakeFire|llPointAt|llStopPointAt|llRefreshPrimURL|" + - "llSetPrimURL|llReleaseCamera|llTakeCamera|llRemoteDataSetRegion|llRemoteLoadScript|" + - "llSetInventoryPermMask|llSound|llSoundPreload|llXorBase64Strings|AGENT|" + - "DATA_RATING|LAND_LARGE_BRUSH|LAND_MEDIUM_BRUSH|LAND_SMALL_BRUSH|PERMISSION_CHANGE_JOINTS|" + - "PERMISSION_CHANGE_PERMISSIONS|PERMISSION_RELEASE_OWNERSHIP|PERMISSION_REMAP_CONTROLS|" + - "PRIM_CAST_SHADOWS|PRIM_TYPE_LEGACY|PSYS_SRC_INNERANGLE|PSYS_SRC_OUTERANGLE|" + - "VEHICLE_FLAG_NO_FLY_UP", - "invalid.illegal.lsl" : "event", - "keyword.control.lsl" : "do|else|for|if|jump|return|while", - "storage.type.lsl" : "float|integer|key|list|quaternion|rotation|string|vector", - "support.function.lsl": "llAbs|llAcos|llAddToLandBanList|llAddToLandPassList|" + - "llAdjustSoundVolume|llAllowInventoryDrop|llAngleBetween|llApplyImpulse|" + - "llApplyRotationalImpulse|llAsin|llAtan2|llAttachToAvatar|llAttachToAvatarTemp|" + - "llAvatarOnLinkSitTarget|llAvatarOnSitTarget|llAxes2Rot|llAxisAngle2Rot|" + - "llBase64ToInteger|llBase64ToString|llBreakAllLinks|llBreakLink|llCastRay|" + - "llCeil|llClearCameraParams|llClearLinkMedia|llClearPrimMedia|llCloseRemoteDataChannel|" + - "llCollisionFilter|llCollisionSound|llCos|llCreateCharacter|llCreateLink|" + - "llCSV2List|llDeleteCharacter|llDeleteSubList|llDeleteSubString|llDetachFromAvatar|" + - "llDetectedGrab|llDetectedGroup|llDetectedKey|llDetectedLinkNumber|llDetectedName|" + - "llDetectedOwner|llDetectedPos|llDetectedRot|llDetectedTouchBinormal|" + - "llDetectedTouchFace|llDetectedTouchNormal|llDetectedTouchPos|llDetectedTouchST|" + - "llDetectedTouchUV|llDetectedType|llDetectedVel|llDialog|llDie|llDumpList2String|" + - "llEdgeOfWorld|llEjectFromLand|llEmail|llEscapeURL|llEuler2Rot|llExecCharacterCmd|" + - "llEvade|llFabs|llFleeFrom|llFloor|llForceMouselook|llFrand|llGenerateKey|" + - "llGetAccel|llGetAgentInfo|llGetAgentLanguage|llGetAgentList|llGetAgentSize|" + - "llGetAlpha|llGetAndResetTime|llGetAnimation|llGetAnimationList|llGetAnimationOverride|" + - "llGetAttached|llGetBoundingBox|llGetCameraPos|llGetCameraRot|llGetCenterOfMass|" + - "llGetClosestNavPoint|llGetColor|llGetCreator|llGetDate|llGetDisplayName|" + - "llGetEnergy|llGetEnv|llGetForce|llGetFreeMemory|llGetFreeURLs|llGetGeometricCenter|" + - "llGetGMTclock|llGetHTTPHeader|llGetInventoryCreator|llGetInventoryKey|llGetInventoryName|" + - "llGetInventoryNumber|llGetInventoryPermMask|llGetInventoryType|llGetKey|" + - "llGetLandOwnerAt|llGetLinkKey|llGetLinkMedia|llGetLinkName|llGetLinkNumber|" + - "llGetLinkNumberOfSides|llGetLinkPrimitiveParams|llGetListEntryType|llGetListLength|" + - "llGetLocalPos|llGetLocalRot|llGetMass|llGetMassMKS|llGetMemoryLimit|" + - "llGetNextEmail|llGetNotecardLine|llGetNumberOfNotecardLines|llGetNumberOfPrims|" + - "llGetNumberOfSides|llGetObjectDesc|llGetObjectDetails|llGetObjectMass|" + - "llGetObjectName|llGetObjectPermMask|llGetObjectPrimCount|llGetOmega|" + - "llGetOwner|llGetOwnerKey|llGetParcelDetails|llGetParcelFlags|llGetParcelMaxPrims|" + - "llGetParcelMusicURL|llGetParcelPrimCount|llGetParcelPrimOwners|llGetPermissions|" + - "llGetPermissionsKey|llGetPhysicsMaterial|llGetPos|llGetPrimitiveParams|" + - "llGetPrimMediaParams|llGetRegionAgentCount|llGetRegionCorner|llGetRegionFlags|" + - "llGetRegionFPS|llGetRegionName|llGetRegionTimeDilation|llGetRootPosition|" + - "llGetRootRotation|llGetRot|llGetScale|llGetScriptName|llGetScriptState|" + - "llGetSimStats|llGetSimulatorHostname|llGetSPMaxMemory|llGetStartParameter|" + - "llGetStaticPath|llGetStatus|llGetSubString|llGetSunDirection|llGetTexture|" + - "llGetTextureOffset|llGetTextureRot|llGetTextureScale|llGetTime|llGetTimeOfDay|" + - "llGetTimestamp|llGetTorque|llGetUnixTime|llGetUsedMemory|llGetUsername|" + - "llGetVel|llGetWallclock|llGiveInventory|llGiveInventoryList|llGiveMoney|" + - "llGround|llGroundContour|llGroundNormal|llGroundRepel|llGroundSlope|" + - "llHTTPRequest|llHTTPResponse|llInsertString|llInstantMessage|llIntegerToBase64|" + - "llKey2Name|llLinkParticleSystem|llLinkSitTarget|llList2CSV|llList2Float|" + - "llList2Integer|llList2Key|llList2List|llList2ListStrided|llList2Rot|" + - "llList2String|llList2Vector|llListen|llListenControl|llListenRemove|" + - "llListFindList|llListInsertList|llListRandomize|llListReplaceList|llListSort|" + - "llListStatistics|llLoadURL|llLog|llLog10|llLookAt|llLoopSound|llLoopSoundMaster|" + - "llLoopSoundSlave|llManageEstateAccess|llMapDestination|llMD5String|llMessageLinked|" + - "llMinEventDelay|llModifyLand|llModPow|llMoveToTarget|llNavigateTo|llOffsetTexture|" + - "llOpenRemoteDataChannel|llOverMyLand|llOwnerSay|llParcelMediaCommandList|" + - "llParcelMediaQuery|llParseString2List|llParseStringKeepNulls|llParticleSystem|" + - "llPassCollisions|llPassTouches|llPatrolPoints|llPlaySound|llPlaySoundSlave|" + - "llPow|llPreloadSound|llPursue|llPushObject|llRegionSay|llRegionSayTo|" + - "llReleaseControls|llReleaseURL|llRemoteDataReply|llRemoteLoadScriptPin|" + - "llRemoveFromLandBanList|llRemoveFromLandPassList|llRemoveInventory|llRemoveVehicleFlags|" + - "llRequestAgentData|llRequestDisplayName|llRequestInventoryData|llRequestPermissions|" + - "llRequestSecureURL|llRequestSimulatorData|llRequestURL|llRequestUsername|" + - "llResetAnimationOverride|llResetLandBanList|llResetLandPassList|llResetOtherScript|" + - "llResetScript|llResetTime|llRezAtRoot|llRezObject|llRot2Angle|llRot2Axis|llRot2Euler|" + - "llRot2Fwd|llRot2Left|llRot2Up|llRotateTexture|llRotBetween|llRotLookAt|" + - "llRotTarget|llRotTargetRemove|llRound|llSameGroup|llSay|llScaleTexture|" + - "llScriptDanger|llScriptProfiler|llSendRemoteData|llSensor|llSensorRemove|" + - "llSensorRepeat|llSetAlpha|llSetAngularVelocity|llSetAnimationOverride|llSetBuoyancy|" + - "llSetCameraAtOffset|llSetCameraEyeOffset|llSetCameraParams|llSetClickAction|" + - "llSetColor|llSetContentType|llSetDamage|llSetForce|llSetForceAndTorque|llSetHoverHeight|" + - "llSetKeyframedMotion|llSetLinkAlpha|llSetLinkCamera|llSetLinkColor|llSetLinkMedia|" + - "llSetLinkPrimitiveParams|llSetLinkPrimitiveParamsFast|llSetLinkTexture|llSetLinkTextureAnim|" + - "llSetLocalRot|llSetMemoryLimit|llSetObjectDesc|llSetObjectName|llSetParcelMusicURL|" + - "llSetPayPrice|llSetPhysicsMaterial|llSetPos|llSetPrimitiveParams|llSetPrimMediaParams|" + - "llSetRegionPos|llSetRemoteScriptAccessPin|llSetRot|llSetScale|llSetScriptState|" + - "llSetSitText|llSetSoundQueueing|llSetSoundRadius|llSetStatus|llSetText|" + - "llSetTexture|llSetTextureAnim|llSetTimerEvent|llSetTorque|llSetTouchText|" + - "llSetVehicleFlags|llSetVehicleFloatParam|llSetVehicleRotationParam|llSetVehicleType|" + - "llSetVehicleVectorParam|llSetVelocity|llSHA1String|llShout|llSin|llSitTarget|" + - "llSleep|llSqrt|llStartAnimation|llStopAnimation|llStopHover|llStopLookAt|" + - "llStopMoveToTarget|llStopSound|llStringLength|llStringToBase64|llStringTrim|" + - "llSubStringIndex|llTakeControls|llTan|llTarget|llTargetOmega|llTargetRemove|" + - "llTeleportAgent|llTeleportAgentGlobalCoords|llTeleportAgentHome|llTextBox|" + - "llToLower|llToUpper|llTransferLindenDollars|llTriggerSound|llTriggerSoundLimited|" + - "llUnescapeURL|llUnSit|llUpdateCharacter|llVecDist|llVecMag|llVecNorm|" + - "llVolumeDetect|llWanderWithin|llWater|llWhisper|llWind|llXorBase64StringsCorrect", - "support.function.event.lsl" : "at_rot_target|at_target|attach|changed|collision|" + - "collision_end|collision_start|control|dataserver|email|http_request|" + - "http_response|land_collision|land_collision_end|land_collision_start|" + - "link_message|listen|money|moving_end|moving_start|no_sensor|not_at_rot_target|" + - "not_at_target|object_rez|on_rez|path_update|remote_data|run_time_permissions|" + - "sensor|state_entry|state_exit|timer|touch|touch_end|touch_start|transaction_result" - }, "identifier"); +function LSLHighlightRules() { + var keywordMapper = this.createKeywordMapper({ + "constant.language.float.lsl" : "DEG_TO_RAD|PI|PI_BY_TWO|RAD_TO_DEG|SQRT2|TWO_PI", + "constant.language.integer.lsl": "ACTIVE|ALWAYS_RUN|AGENT_ATTACHMENTS|AGENT_AUTOPILOT|" + + "AGENT_AWAY|AGENT_BUSY|AGENT_BY_LEGACY_NAME|AGENT_BY_USERNAME|AGENT_CROUCHING|" + + "AGENT_FLYING|AGENT_IN_AIR|AGENT_LIST_PARCEL|AGENT_LIST_PARCEL_OWNER|" + + "AGENT_LIST_REGION|AGENT_MOUSELOOK|AGENT_ON_OBJECT|AGENT_SCRIPTED|AGENT_SITTING|" + + "AGENT_TYPING|AGENT_WALKING|ALL_SIDES|ANIM_ON|ATTACH_BACK|ATTACH_BELLY|" + + "ATTACH_CHEST|ATTACH_CHIN|ATTACH_HEAD|ATTACH_HUD_BOTTOM|ATTACH_HUD_BOTTOM_LEFT|" + + "ATTACH_HUD_BOTTOM_RIGHT|ATTACH_HUD_CENTER_1|ATTACH_HUD_CENTER_2|ATTACH_HUD_TOP_CENTER|" + + "ATTACH_HUD_TOP_LEFT|ATTACH_HUD_TOP_RIGHT|ATTACH_LEAR|ATTACH_LEFT_PEC|" + + "ATTACH_LEYE|ATTACH_LFOOT|ATTACH_LHAND|ATTACH_LHIP|ATTACH_LLARM|ATTACH_LLLEG|" + + "ATTACH_LSHOULDER|ATTACH_LUARM|ATTACH_LULEG|ATTACH_MOUTH|ATTACH_NOSE|" + + "ATTACH_PELVIS|ATTACH_REAR|ATTACH_REYE|ATTACH_RFOOT|ATTACH_RHAND|ATTACH_RHIP|" + + "ATTACH_RIGHT_PEC|ATTACH_RLARM|ATTACH_RLLEG|ATTACH_RSHOULDER|ATTACH_RUARM|" + + "ATTACH_RULEG|AVOID_CHARACTERS|AVOID_DYNAMIC_OBSTACLES|AVOID_NONE|CAMERA_ACTIVE|" + + "CAMERA_BEHINDNESS_ANGLE|CAMERA_BEHINDNESS_LAG|CAMERA_DISTANCE|CAMERA_FOCUS|" + + "CAMERA_FOCUS_LAG|CAMERA_FOCUS_LOCKED|CAMERA_FOCUS_OFFSET|CAMERA_FOCUS_THRESHOLD|" + + "CAMERA_PITCH|CAMERA_POSITION|CAMERA_POSITION_LAG|CAMERA_POSITION_LOCKED|" + + "CAMERA_POSITION_THRESHOLD|CHANGED_ALLOWED_DROP|CHANGED_COLOR|CHANGED_INVENTORY|" + + "CHANGED_LINK|CHANGED_MEDIA|CHANGED_OWNER|CHANGED_REGION|CHANGED_REGION_START|" + + "CHANGED_SCALE|CHANGED_SHAPE|CHANGED_TELEPORT|CHANGED_TEXTURE|CHARACTER_ACCOUNT_FOR_SKIPPED_FRAMES|" + + "CHARACTER_AVOIDANCE_MODE|CHARACTER_CMD_JUMP|CHARACTER_CMD_SMOOTH_STOP|" + + "CHARACTER_CMD_STOP|CHARACTER_DESIRED_SPEED|CHARACTER_DESIRED_TURN_SPEED|" + + "CHARACTER_LENGTH|CHARACTER_MAX_ACCEL|CHARACTER_MAX_ANGULAR_ACCEL|CHARACTER_MAX_ANGULAR_SPEED|" + + "CHARACTER_MAX_DECEL|CHARACTER_MAX_SPEED|CHARACTER_MAX_TURN_RADIUS|CHARACTER_ORIENTATION|" + + "CHARACTER_RADIUS|CHARACTER_TYPE|CHARACTER_TYPE_A|CHARACTER_TYPE_B|CHARACTER_TYPE_C|" + + "CHARACTER_TYPE_D|CHARACTER_TYPE_NONE|CLICK_ACTION_BUY|CLICK_ACTION_NONE|" + + "CLICK_ACTION_OPEN|CLICK_ACTION_OPEN_MEDIA|CLICK_ACTION_PAY|CLICK_ACTION_PLAY|" + + "CLICK_ACTION_SIT|CLICK_ACTION_TOUCH|CONTENT_TYPE_HTML|CONTENT_TYPE_TEXT|" + + "CONTROL_BACK|CONTROL_DOWN|CONTROL_FWD|CONTROL_LBUTTON|CONTROL_LEFT|CONTROL_ML_LBUTTON|" + + "CONTROL_RIGHT|CONTROL_ROT_LEFT|CONTROL_ROT_RIGHT|CONTROL_UP|DATA_BORN|" + + "DATA_NAME|DATA_ONLINE|DATA_PAYINFO|DATA_SIM_POS|DATA_SIM_RATING|DATA_SIM_STATUS|" + + "DENSITY|DEBUG_CHANNEL|ESTATE_ACCESS_ALLOWED_AGENT_ADD|ESTATE_ACCESS_ALLOWED_AGENT_REMOVE|" + + "ESTATE_ACCESS_ALLOWED_GROUP_ADD|ESTATE_ACCESS_ALLOWED_GROUP_REMOVE|" + + "ESTATE_ACCESS_BANNED_AGENT_ADD|ESTATE_ACCESS_BANNED_AGENT_REMOVE|" + + "FORCE_DIRECT_PATH|FRICTION|GCNP_RADIUS|GCNP_STATIC|GRAVITY_MULTIPLIER|" + + "HORIZONTAL|HTTP_BODY_MAXLENGTH|HTTP_BODY_TRUNCATED|HTTP_CUSTOM_HEADER|" + + "HTTP_METHOD|HTTP_MIMETYPE|HTTP_PRAGMA_NO_CACHE|HTTP_VERBOSE_THROTTLE|" + + "HTTP_VERIFY_CERT|INVENTORY_ALL|INVENTORY_ANIMATION|INVENTORY_BODYPART|" + + "INVENTORY_CLOTHING|INVENTORY_GESTURE|INVENTORY_LANDMARK|INVENTORY_NONE|" + + "INVENTORY_NOTECARD|INVENTORY_OBJECT|INVENTORY_SCRIPT|INVENTORY_SOUND|" + + "INVENTORY_TEXTURE|KFM_CMD_PAUSE|KFM_CMD_PLAY|KFM_CMD_STOP|KFM_COMMAND|" + + "KFM_DATA|KFM_FORWARD|KFM_LOOP|KFM_MODE|KFM_PING_PONG|KFM_REVERSE|KFM_ROTATION|" + + "KFM_TRANSLATION|LAND_LEVEL|LAND_LOWER|LAND_NOISE|LAND_RAISE|LAND_REVERT|" + + "LAND_SMOOTH|LINK_ALL_CHILDREN|LINK_ALL_OTHERS|LINK_ROOT|LINK_SET|LINK_THIS|" + + "LIST_STAT_GEOMETRIC_MEAN|LIST_STAT_MAX|LIST_STAT_MEAN|LIST_STAT_MEDIAN|" + + "LIST_STAT_MIN|LIST_STAT_NUM_COUNT|LIST_STAT_RANGE|LIST_STAT_STD_DEV|LIST_STAT_SUM|" + + "LIST_STAT_SUM_SQUARES|LOOP|MASK_BASE|MASK_EVERYONE|MASK_GROUP|MASK_NEXT|" + + "MASK_OWNER|OBJECT_ATTACHED_POINT|OBJECT_CREATOR|OBJECT_DESC|" + + "OBJECT_GROUP|OBJECT_NAME|OBJECT_OWNER|OBJECT_PATHFINDING_TYPE|OBJECT_PHYSICS_COST|" + + "OBJECT_POS|OBJECT_PRIM_EQUIVALENCE|OBJECT_ROOT|OBJECT_ROT|OBJECT_RUNNING_SCRIPT_COUNT|" + + "OBJECT_SCRIPT_MEMORY|OBJECT_SCRIPT_TIME|OBJECT_SERVER_COST|OBJECT_STREAMING_COST|" + + "OBJECT_TOTAL_SCRIPT_COUNT|OBJECT_UNKNOWN_DETAIL|OBJECT_VELOCITY|OPT_AVATAR|" + + "OPT_CHARACTER|OPT_EXCLUSION_VOLUME|OPT_LEGACY_LINKSET|OPT_MATERIAL_VOLUME|" + + "OPT_OTHER|OPT_STATIC_OBSTACLE|OPT_WALKABLE|PARCEL_COUNT_GROUP|PARCEL_COUNT_OTHER|" + + "PARCEL_COUNT_OWNER|PARCEL_COUNT_SELECTED|PARCEL_COUNT_TEMP|PARCEL_COUNT_TOTAL|" + + "PARCEL_DETAILS_AREA|PARCEL_DETAILS_DESC|PARCEL_DETAILS_GROUP|PARCEL_DETAILS_ID|" + + "PARCEL_DETAILS_NAME|PARCEL_DETAILS_OWNER|PARCEL_DETAILS_SEE_AVATARS|" + + "PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS|" + + "PARCEL_FLAG_ALLOW_CREATE_OBJECTS|PARCEL_FLAG_ALLOW_DAMAGE|PARCEL_FLAG_ALLOW_FLY|" + + "PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY|PARCEL_FLAG_ALLOW_GROUP_SCRIPTS|" + + "PARCEL_FLAG_ALLOW_LANDMARK|PARCEL_FLAG_ALLOW_SCRIPTS|PARCEL_FLAG_ALLOW_TERRAFORM|" + + "PARCEL_FLAG_LOCAL_SOUND_ONLY|PARCEL_FLAG_RESTRICT_PUSHOBJECT|PARCEL_FLAG_USE_ACCESS_GROUP|" + + "PARCEL_FLAG_USE_ACCESS_LIST|PARCEL_FLAG_USE_BAN_LIST|PARCEL_FLAG_USE_LAND_PASS_LIST|" + + "PARCEL_MEDIA_COMMAND_AGENT|PARCEL_MEDIA_COMMAND_AUTO_ALIGN|PARCEL_MEDIA_COMMAND_DESC|" + + "PARCEL_MEDIA_COMMAND_LOOP|PARCEL_MEDIA_COMMAND_LOOP_SET|PARCEL_MEDIA_COMMAND_PAUSE|" + + "PARCEL_MEDIA_COMMAND_PLAY|PARCEL_MEDIA_COMMAND_SIZE|PARCEL_MEDIA_COMMAND_STOP|" + + "PARCEL_MEDIA_COMMAND_TEXTURE|PARCEL_MEDIA_COMMAND_TIME|PARCEL_MEDIA_COMMAND_TYPE|" + + "PARCEL_MEDIA_COMMAND_UNLOAD|PARCEL_MEDIA_COMMAND_URL|PASSIVE|PATROL_PAUSE_AT_WAYPOINTS|" + + "PAYMENT_INFO_ON_FILE|PAYMENT_INFO_USED|PAY_DEFAULT|PAY_HIDE|PERMISSION_ATTACH|" + + "PERMISSION_CHANGE_LINKS|PERMISSION_CONTROL_CAMERA|PERMISSION_DEBIT|PERMISSION_OVERRIDE_ANIMATIONS|" + + "PERMISSION_SILENT_ESTATE_MANAGEMENT|PERMISSION_TAKE_CONTROLS|PERMISSION_TELEPORT|" + + "PERMISSION_TRACK_CAMERA|PERMISSION_TRIGGER_ANIMATION|PERM_ALL|PERM_COPY|PERM_MODIFY|" + + "PERM_MOVE|PERM_TRANSFER|PING_PONG|PRIM_BUMP_BARK|PRIM_BUMP_BLOBS|PRIM_BUMP_BRICKS|" + + "PRIM_BUMP_BRIGHT|PRIM_BUMP_CHECKER|PRIM_BUMP_CONCRETE|PRIM_BUMP_DARK|PRIM_BUMP_DISKS|" + + "PRIM_BUMP_GRAVEL|PRIM_BUMP_LARGETILE|PRIM_BUMP_NONE|PRIM_BUMP_SHINY|PRIM_BUMP_SIDING|" + + "PRIM_BUMP_STONE|PRIM_BUMP_STUCCO|PRIM_BUMP_SUCTION|PRIM_BUMP_TILE|PRIM_BUMP_WEAVE|" + + "PRIM_BUMP_WOOD|PRIM_COLOR|PRIM_DESC|PRIM_FLEXIBLE|PRIM_FULLBRIGHT|PRIM_GLOW|" + + "PRIM_HOLE_CIRCLE|PRIM_HOLE_DEFAULT|PRIM_HOLE_SQUARE|PRIM_HOLE_TRIANGLE|PRIM_LINK_TARGET|" + + "PRIM_MATERIAL|PRIM_MATERIAL_FLESH|PRIM_MATERIAL_GLASS|PRIM_MATERIAL_LIGHT|" + + "PRIM_MATERIAL_METAL|PRIM_MATERIAL_PLASTIC|PRIM_MATERIAL_RUBBER|PRIM_MATERIAL_STONE|" + + "PRIM_MATERIAL_WOOD|PRIM_MEDIA_ALT_IMAGE_ENABLE|PRIM_MEDIA_AUTO_LOOP|PRIM_MEDIA_AUTO_PLAY|" + + "PRIM_MEDIA_AUTO_SCALE|PRIM_MEDIA_AUTO_ZOOM|PRIM_MEDIA_CONTROLS|PRIM_MEDIA_CONTROLS_STANDARD|" + + "PRIM_MEDIA_CONTROLS_MINI|PRIM_MEDIA_CURRENT_URL|PRIM_MEDIA_FIRST_CLICK_INTERACT|" + + "PRIM_MEDIA_HEIGHT_PIXELS|PRIM_MEDIA_HOME_URL|PRIM_MEDIA_PERM_ANYONE|PRIM_MEDIA_PERM_GROUP|" + + "PRIM_MEDIA_PERM_NONE|PRIM_MEDIA_PERM_OWNER|PRIM_MEDIA_PERMS_CONTROL|PRIM_MEDIA_PERMS_INTERACT|" + + "PRIM_MEDIA_WIDTH_PIXELS|PRIM_MEDIA_WHITELIST|PRIM_MEDIA_WHITELIST_ENABLE|" + + "PRIM_NAME|PRIM_OMEGA|PRIM_PHANTOM|PRIM_PHYSICS|PRIM_PHYSICS_MATERIAL|PRIM_PHYSICS_SHAPE_CONVEX|" + + "PRIM_PHYSICS_SHAPE_NONE|PRIM_PHYSICS_SHAPE_PRIM|PRIM_PHYSICS_SHAPE_TYPE|" + + "PRIM_POINT_LIGHT|PRIM_POSITION|PRIM_POS_LOCAL|PRIM_ROTATION|PRIM_ROT_LOCAL|" + + "PRIM_SCULPT_FLAG_INVERT|PRIM_SCULPT_FLAG_MIRROR|PRIM_SCULPT_TYPE_CYLINDER|" + + "PRIM_SCULPT_TYPE_MASK|PRIM_SCULPT_TYPE_PLANE|PRIM_SCULPT_TYPE_SPHERE|PRIM_SCULPT_TYPE_TORUS|" + + "PRIM_SHINY_HIGH|PRIM_SHINY_LOW|PRIM_SHINY_MEDIUM|PRIM_SHINY_NONE|PRIM_SIZE|" + + "PRIM_SLICE|PRIM_TEMP_ON_REZ|PRIM_TEXGEN|PRIM_TEXGEN_DEFAULT|PRIM_TEXGEN_PLANAR|" + + "PRIM_TEXT|PRIM_TEXTURE|PRIM_TYPE|PRIM_TYPE_BOX|PRIM_TYPE_CYLINDER|PRIM_TYPE_PRISM|PRIM_TYPE_RING|" + + "PRIM_TYPE_SCULPT|PRIM_TYPE_SPHERE|PRIM_TYPE_TORUS|PRIM_TYPE_TUBE|PROFILE_NONE|" + + "PROFILE_SCRIPT_MEMORY|PSYS_PART_BOUNCE_MASK|PSYS_PART_EMISSIVE_MASK|PSYS_PART_END_ALPHA|" + + "PSYS_PART_END_COLOR|PSYS_PART_END_SCALE|PSYS_PART_FLAGS|PSYS_PART_FOLLOW_SRC_MASK|" + + "PSYS_PART_FOLLOW_VELOCITY_MASK|PSYS_PART_INTERP_COLOR_MASK|PSYS_PART_INTERP_SCALE_MASK|" + + "PSYS_PART_MAX_AGE|PSYS_PART_START_ALPHA|PSYS_PART_START_COLOR|PSYS_PART_START_SCALE|" + + "PSYS_PART_TARGET_LINEAR_MASK|PSYS_PART_TARGET_POS_MASK|PSYS_PART_WIND_MASK|" + + "PSYS_SRC_ACCEL|PSYS_SRC_ANGLE_BEGIN|PSYS_SRC_ANGLE_END|PSYS_SRC_BURST_PART_COUNT|" + + "PSYS_SRC_BURST_RADIUS|PSYS_SRC_BURST_RATE|PSYS_SRC_BURST_SPEED_MAX|PSYS_SRC_BURST_SPEED_MIN|" + + "PSYS_SRC_MAX_AGE|PSYS_SRC_OMEGA|PSYS_SRC_PATTERN|PSYS_SRC_PATTERN_ANGLE|" + + "PSYS_SRC_PATTERN_ANGLE_CONE|PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY|PSYS_SRC_PATTERN_DROP|" + + "PSYS_SRC_PATTERN_EXPLODE|PSYS_SRC_TARGET_KEY|PSYS_SRC_TEXTURE|PUBLIC_CHANNEL|" + + "PURSUIT_FUZZ_FACTOR|PURSUIT_GOAL_TOLERANCE|PURSUIT_INTERCEPT|PURSUIT_OFFSET|" + + "PU_EVADE_HIDDEN|PU_EVADE_SPOTTED|PU_FAILURE_DYNAMIC_PATHFINDING_DISABLED|" + + "PU_FAILURE_INVALID_GOAL|PU_FAILURE_INVALID_START|PU_FAILURE_NO_NAVMESH|" + + "PU_FAILURE_NO_VALID_DESTINATION|PU_FAILURE_OTHER|PU_FAILURE_PARCEL_UNREACHABLE|" + + "PU_FAILURE_TARGET_GONE|PU_FAILURE_UNREACHABLE|PU_GOAL_REACHED|PU_SLOWDOWN_DISTANCE_REACHED|" + + "RC_DATA_FLAGS|RC_DETECT_PHANTOM|RC_GET_LINK_NUM|RC_GET_NORMAL|RC_GET_ROOT_KEY|" + + "RC_MAX_HITS|RC_REJECT_AGENTS|RC_REJECT_LAND|RC_REJECT_NONPHYSICAL|RC_REJECT_PHYSICAL|" + + "RC_REJECT_TYPES|RCERR_CAST_TIME_EXCEEDED|RCERR_SIM_PERF_LOW|RCERR_UNKNOWN|" + + "REGION_FLAG_ALLOW_DAMAGE|REGION_FLAG_ALLOW_DIRECT_TELEPORT|REGION_FLAG_BLOCK_FLY|" + + "REGION_FLAG_BLOCK_TERRAFORM|REGION_FLAG_DISABLE_COLLISIONS|REGION_FLAG_DISABLE_PHYSICS|" + + "REGION_FLAG_FIXED_SUN|REGION_FLAG_RESTRICT_PUSHOBJECT|REGION_FLAG_SANDBOX|" + + "REMOTE_DATA_CHANNEL|REMOTE_DATA_REPLY|REMOTE_DATA_REQUEST|REQUIRE_LINE_OF_SIGHT|" + + "RESTITUTION|REVERSE|ROTATE|SCALE|SCRIPTED|SIM_STAT_PCT_CHARS_STEPPED|SMOOTH|" + + "STATUS_BLOCK_GRAB|STATUS_BLOCK_GRAB_OBJECT|STATUS_BOUNDS_ERROR|STATUS_CAST_SHADOWS|" + + "STATUS_DIE_AT_EDGE|STATUS_INTERNAL_ERROR|STATUS_MALFORMED_PARAMS|STATUS_NOT_FOUND|" + + "STATUS_NOT_SUPPORTED|STATUS_OK|STATUS_PHANTOM|STATUS_PHYSICS|STATUS_RETURN_AT_EDGE|" + + "STATUS_ROTATE_X|STATUS_ROTATE_Y|STATUS_ROTATE_Z|STATUS_SANDBOX|STATUS_TYPE_MISMATCH|" + + "STATUS_WHITELIST_FAILED|STRING_TRIM|STRING_TRIM_HEAD|STRING_TRIM_TAIL|TOUCH_INVALID_FACE|" + + "TRAVERSAL_TYPE|TRAVERSAL_TYPE_FAST|TRAVERSAL_TYPE_NONE|TRAVERSAL_TYPE_SLOW|" + + "TYPE_FLOAT|TYPE_INTEGER|TYPE_INVALID|TYPE_KEY|TYPE_ROTATION|TYPE_STRING|" + + "TYPE_VECTOR|URL_REQUEST_DENIED|URL_REQUEST_GRANTED|VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY|" + + "VEHICLE_ANGULAR_DEFLECTION_TIMESCALE|VEHICLE_ANGULAR_FRICTION_TIMESCALE|" + + "VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE|VEHICLE_ANGULAR_MOTOR_DIRECTION|VEHICLE_ANGULAR_MOTOR_TIMESCALE|" + + "VEHICLE_BANKING_EFFICIENCY|VEHICLE_BANKING_MIX|VEHICLE_BANKING_TIMESCALE|" + + "VEHICLE_BUOYANCY|VEHICLE_FLAG_CAMERA_DECOUPLED|VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT|" + + "VEHICLE_FLAG_HOVER_TERRAIN_ONLY|VEHICLE_FLAG_HOVER_UP_ONLY|VEHICLE_FLAG_HOVER_WATER_ONLY|" + + "VEHICLE_FLAG_LIMIT_MOTOR_UP|VEHICLE_FLAG_LIMIT_ROLL_ONLY|VEHICLE_FLAG_MOUSELOOK_BANK|" + + "VEHICLE_FLAG_MOUSELOOK_STEER|VEHICLE_FLAG_NO_DEFLECTION_UP|VEHICLE_HOVER_EFFICIENCY|" + + "VEHICLE_HOVER_HEIGHT|VEHICLE_HOVER_TIMESCALE|VEHICLE_LINEAR_DEFLECTION_EFFICIENCY|" + + "VEHICLE_LINEAR_DEFLECTION_TIMESCALE|VEHICLE_LINEAR_FRICTION_TIMESCALE|VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE|" + + "VEHICLE_LINEAR_MOTOR_DIRECTION|VEHICLE_LINEAR_MOTOR_OFFSET|VEHICLE_LINEAR_MOTOR_TIMESCALE|" + + "VEHICLE_REFERENCE_FRAME|VEHICLE_TYPE_AIRPLANE|VEHICLE_TYPE_BALLOON|VEHICLE_TYPE_BOAT|" + + "VEHICLE_TYPE_CAR|VEHICLE_TYPE_NONE|VEHICLE_TYPE_SLED|VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY|" + + "VEHICLE_VERTICAL_ATTRACTION_TIMESCALE|VERTICAL|WANDER_PAUSE_AT_WAYPOINTS", + "constant.language.integer.boolean.lsl" : "FALSE|TRUE", + "constant.language.key.lsl" : "NULL_KEY|TEXTURE_BLANK|TEXTURE_DEFAULT|TEXTURE_MEDIA|" + + "TEXTURE_PLYWOOD|TEXTURE_TRANSPARENT", + "constant.language.quaternion.lsl" : "ZERO_ROTATION", + "constant.language.string.lsl" : "EOF", + "constant.language.vector.lsl" : "TOUCH_INVALID_TEXCOORD|TOUCH_INVALID_VECTOR|ZERO_VECTOR", + "invalid.deprecated.lsl" : "llCloud|llCollisionSprite|llGodLikeRezObject|llMakeExplosion|" + + "llMakeFountain|llMakeSmoke|llMakeFire|llPointAt|llStopPointAt|llRefreshPrimURL|" + + "llSetPrimURL|llReleaseCamera|llTakeCamera|llRemoteDataSetRegion|llRemoteLoadScript|" + + "llSetInventoryPermMask|llSound|llSoundPreload|llXorBase64Strings|AGENT|" + + "DATA_RATING|LAND_LARGE_BRUSH|LAND_MEDIUM_BRUSH|LAND_SMALL_BRUSH|PERMISSION_CHANGE_JOINTS|" + + "PERMISSION_CHANGE_PERMISSIONS|PERMISSION_RELEASE_OWNERSHIP|PERMISSION_REMAP_CONTROLS|" + + "PRIM_CAST_SHADOWS|PRIM_TYPE_LEGACY|PSYS_SRC_INNERANGLE|PSYS_SRC_OUTERANGLE|" + + "VEHICLE_FLAG_NO_FLY_UP", + "invalid.illegal.lsl" : "event", + "keyword.control.lsl" : "do|else|for|if|jump|return|while", + "storage.type.lsl" : "float|integer|key|list|quaternion|rotation|string|vector", + "support.function.lsl": "llAbs|llAcos|llAddToLandBanList|llAddToLandPassList|" + + "llAdjustSoundVolume|llAllowInventoryDrop|llAngleBetween|llApplyImpulse|" + + "llApplyRotationalImpulse|llAsin|llAtan2|llAttachToAvatar|llAttachToAvatarTemp|" + + "llAvatarOnLinkSitTarget|llAvatarOnSitTarget|llAxes2Rot|llAxisAngle2Rot|" + + "llBase64ToInteger|llBase64ToString|llBreakAllLinks|llBreakLink|llCastRay|" + + "llCeil|llClearCameraParams|llClearLinkMedia|llClearPrimMedia|llCloseRemoteDataChannel|" + + "llCollisionFilter|llCollisionSound|llCos|llCreateCharacter|llCreateLink|" + + "llCSV2List|llDeleteCharacter|llDeleteSubList|llDeleteSubString|llDetachFromAvatar|" + + "llDetectedGrab|llDetectedGroup|llDetectedKey|llDetectedLinkNumber|llDetectedName|" + + "llDetectedOwner|llDetectedPos|llDetectedRot|llDetectedTouchBinormal|" + + "llDetectedTouchFace|llDetectedTouchNormal|llDetectedTouchPos|llDetectedTouchST|" + + "llDetectedTouchUV|llDetectedType|llDetectedVel|llDialog|llDie|llDumpList2String|" + + "llEdgeOfWorld|llEjectFromLand|llEmail|llEscapeURL|llEuler2Rot|llExecCharacterCmd|" + + "llEvade|llFabs|llFleeFrom|llFloor|llForceMouselook|llFrand|llGenerateKey|" + + "llGetAccel|llGetAgentInfo|llGetAgentLanguage|llGetAgentList|llGetAgentSize|" + + "llGetAlpha|llGetAndResetTime|llGetAnimation|llGetAnimationList|llGetAnimationOverride|" + + "llGetAttached|llGetBoundingBox|llGetCameraPos|llGetCameraRot|llGetCenterOfMass|" + + "llGetClosestNavPoint|llGetColor|llGetCreator|llGetDate|llGetDisplayName|" + + "llGetEnergy|llGetEnv|llGetForce|llGetFreeMemory|llGetFreeURLs|llGetGeometricCenter|" + + "llGetGMTclock|llGetHTTPHeader|llGetInventoryCreator|llGetInventoryKey|llGetInventoryName|" + + "llGetInventoryNumber|llGetInventoryPermMask|llGetInventoryType|llGetKey|" + + "llGetLandOwnerAt|llGetLinkKey|llGetLinkMedia|llGetLinkName|llGetLinkNumber|" + + "llGetLinkNumberOfSides|llGetLinkPrimitiveParams|llGetListEntryType|llGetListLength|" + + "llGetLocalPos|llGetLocalRot|llGetMass|llGetMassMKS|llGetMemoryLimit|" + + "llGetNextEmail|llGetNotecardLine|llGetNumberOfNotecardLines|llGetNumberOfPrims|" + + "llGetNumberOfSides|llGetObjectDesc|llGetObjectDetails|llGetObjectMass|" + + "llGetObjectName|llGetObjectPermMask|llGetObjectPrimCount|llGetOmega|" + + "llGetOwner|llGetOwnerKey|llGetParcelDetails|llGetParcelFlags|llGetParcelMaxPrims|" + + "llGetParcelMusicURL|llGetParcelPrimCount|llGetParcelPrimOwners|llGetPermissions|" + + "llGetPermissionsKey|llGetPhysicsMaterial|llGetPos|llGetPrimitiveParams|" + + "llGetPrimMediaParams|llGetRegionAgentCount|llGetRegionCorner|llGetRegionFlags|" + + "llGetRegionFPS|llGetRegionName|llGetRegionTimeDilation|llGetRootPosition|" + + "llGetRootRotation|llGetRot|llGetScale|llGetScriptName|llGetScriptState|" + + "llGetSimStats|llGetSimulatorHostname|llGetSPMaxMemory|llGetStartParameter|" + + "llGetStaticPath|llGetStatus|llGetSubString|llGetSunDirection|llGetTexture|" + + "llGetTextureOffset|llGetTextureRot|llGetTextureScale|llGetTime|llGetTimeOfDay|" + + "llGetTimestamp|llGetTorque|llGetUnixTime|llGetUsedMemory|llGetUsername|" + + "llGetVel|llGetWallclock|llGiveInventory|llGiveInventoryList|llGiveMoney|" + + "llGround|llGroundContour|llGroundNormal|llGroundRepel|llGroundSlope|" + + "llHTTPRequest|llHTTPResponse|llInsertString|llInstantMessage|llIntegerToBase64|" + + "llKey2Name|llLinkParticleSystem|llLinkSitTarget|llList2CSV|llList2Float|" + + "llList2Integer|llList2Key|llList2List|llList2ListStrided|llList2Rot|" + + "llList2String|llList2Vector|llListen|llListenControl|llListenRemove|" + + "llListFindList|llListInsertList|llListRandomize|llListReplaceList|llListSort|" + + "llListStatistics|llLoadURL|llLog|llLog10|llLookAt|llLoopSound|llLoopSoundMaster|" + + "llLoopSoundSlave|llManageEstateAccess|llMapDestination|llMD5String|llMessageLinked|" + + "llMinEventDelay|llModifyLand|llModPow|llMoveToTarget|llNavigateTo|llOffsetTexture|" + + "llOpenRemoteDataChannel|llOverMyLand|llOwnerSay|llParcelMediaCommandList|" + + "llParcelMediaQuery|llParseString2List|llParseStringKeepNulls|llParticleSystem|" + + "llPassCollisions|llPassTouches|llPatrolPoints|llPlaySound|llPlaySoundSlave|" + + "llPow|llPreloadSound|llPursue|llPushObject|llRegionSay|llRegionSayTo|" + + "llReleaseControls|llReleaseURL|llRemoteDataReply|llRemoteLoadScriptPin|" + + "llRemoveFromLandBanList|llRemoveFromLandPassList|llRemoveInventory|llRemoveVehicleFlags|" + + "llRequestAgentData|llRequestDisplayName|llRequestInventoryData|llRequestPermissions|" + + "llRequestSecureURL|llRequestSimulatorData|llRequestURL|llRequestUsername|" + + "llResetAnimationOverride|llResetLandBanList|llResetLandPassList|llResetOtherScript|" + + "llResetScript|llResetTime|llRezAtRoot|llRezObject|llRot2Angle|llRot2Axis|llRot2Euler|" + + "llRot2Fwd|llRot2Left|llRot2Up|llRotateTexture|llRotBetween|llRotLookAt|" + + "llRotTarget|llRotTargetRemove|llRound|llSameGroup|llSay|llScaleTexture|" + + "llScriptDanger|llScriptProfiler|llSendRemoteData|llSensor|llSensorRemove|" + + "llSensorRepeat|llSetAlpha|llSetAngularVelocity|llSetAnimationOverride|llSetBuoyancy|" + + "llSetCameraAtOffset|llSetCameraEyeOffset|llSetCameraParams|llSetClickAction|" + + "llSetColor|llSetContentType|llSetDamage|llSetForce|llSetForceAndTorque|llSetHoverHeight|" + + "llSetKeyframedMotion|llSetLinkAlpha|llSetLinkCamera|llSetLinkColor|llSetLinkMedia|" + + "llSetLinkPrimitiveParams|llSetLinkPrimitiveParamsFast|llSetLinkTexture|llSetLinkTextureAnim|" + + "llSetLocalRot|llSetMemoryLimit|llSetObjectDesc|llSetObjectName|llSetParcelMusicURL|" + + "llSetPayPrice|llSetPhysicsMaterial|llSetPos|llSetPrimitiveParams|llSetPrimMediaParams|" + + "llSetRegionPos|llSetRemoteScriptAccessPin|llSetRot|llSetScale|llSetScriptState|" + + "llSetSitText|llSetSoundQueueing|llSetSoundRadius|llSetStatus|llSetText|" + + "llSetTexture|llSetTextureAnim|llSetTimerEvent|llSetTorque|llSetTouchText|" + + "llSetVehicleFlags|llSetVehicleFloatParam|llSetVehicleRotationParam|llSetVehicleType|" + + "llSetVehicleVectorParam|llSetVelocity|llSHA1String|llShout|llSin|llSitTarget|" + + "llSleep|llSqrt|llStartAnimation|llStopAnimation|llStopHover|llStopLookAt|" + + "llStopMoveToTarget|llStopSound|llStringLength|llStringToBase64|llStringTrim|" + + "llSubStringIndex|llTakeControls|llTan|llTarget|llTargetOmega|llTargetRemove|" + + "llTeleportAgent|llTeleportAgentGlobalCoords|llTeleportAgentHome|llTextBox|" + + "llToLower|llToUpper|llTransferLindenDollars|llTriggerSound|llTriggerSoundLimited|" + + "llUnescapeURL|llUnSit|llUpdateCharacter|llVecDist|llVecMag|llVecNorm|" + + "llVolumeDetect|llWanderWithin|llWater|llWhisper|llWind|llXorBase64StringsCorrect", + "support.function.event.lsl" : "at_rot_target|at_target|attach|changed|collision|" + + "collision_end|collision_start|control|dataserver|email|http_request|" + + "http_response|land_collision|land_collision_end|land_collision_start|" + + "link_message|listen|money|moving_end|moving_start|no_sensor|not_at_rot_target|" + + "not_at_target|object_rez|on_rez|path_update|remote_data|run_time_permissions|" + + "sensor|state_entry|state_exit|timer|touch|touch_end|touch_start|transaction_result" + }, "identifier"); - this.$rules = { - "start" : [ - { - token : "comment.line.double-slash.lsl", - regex : "\\/\\/.*$" - }, { - token : "comment.block.lsl", - regex : "\\/\\*", - next : "comment" - }, { - token : "string.quoted.double.lsl", - start : '"', - end : '"', - next : [ - { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } - ] - }, { - token : "constant.numeric.lsl", - regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b" - }, { - token : "entity.name.state.lsl", - regex : "\\b((state)\\s+\\w+|default)\\b" - }, { - token : keywordMapper, - regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" - }, { - token : "support.function.user-defined.lsl", - regex : "(?:\w+\s+)?(\w+)?\s*(?=\(.*?\))" // apparently some bad esape? - }, { - token : "keyword.operator.lsl", - regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" - }, { - token : "punctuation.operator.lsl", - regex : "\\,|\\;" - }, { - token : "paren.lparen.lsl", - regex : "[\\[\\(\\{]" - }, { - token : "paren.rparen.lsl", - regex : "[\\]\\)\\}]" - }, { - token : "text.lsl", - regex : "\\s+" - } - ], - "comment" : [ - { - token : "comment.block.lsl", - regex : ".*?\\*\\/", - next : "start" - }, { - token : "comment.block.lsl", - regex : ".+" - } - ] - }; - this.normalizeRules(); - } + this.$rules = { + "start" : [ + { + token : "comment.line.double-slash.lsl", + regex : "\\/\\/.*$" + }, { + token : "comment.block.lsl", + regex : "\\/\\*", + next : "comment" + }, { + token : "string.quoted.double.lsl", + start : '"', + end : '"', + next : [ + { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } + ] + }, { + token : "constant.numeric.lsl", + regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b" + }, { + token : "entity.name.state.lsl", + regex : "\\b((state)\\s+\\w+|default)\\b" + }, { + token : keywordMapper, + regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" + }, { + token : "support.function.user-defined.lsl", + regex : "(?:\w+\s+)?(\w+)?\s*(?=\(.*?\))" // apparently some bad esape? + }, { + token : "keyword.operator.lsl", + regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" + }, { + token : "punctuation.operator.lsl", + regex : "\\,|\\;" + }, { + token : "paren.lparen.lsl", + regex : "[\\[\\(\\{]" + }, { + token : "paren.rparen.lsl", + regex : "[\\]\\)\\}]" + }, { + token : "text.lsl", + regex : "\\s+" + } + ], + "comment" : [ + { + token : "comment.block.lsl", + regex : ".*?\\*\\/", + next : "start" + }, { + token : "comment.block.lsl", + regex : ".+" + } + ] + }; + this.normalizeRules(); +} - exports.LSLHighlightRules = LSLHighlightRules; +exports.LSLHighlightRules = LSLHighlightRules; }); From e0e6c38d173622b3fb9c020d0d62a6b7882d2a1f Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Mon, 15 Apr 2013 22:51:39 +0200 Subject: [PATCH 05/11] fixed regex to match user defined function in LSL --- lib/ace/mode/lsl_highlight_rules.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index 9bfe4aae..e30513d9 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -308,7 +308,7 @@ function LSLHighlightRules() { regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" }, { token : "support.function.user-defined.lsl", - regex : "(?:\w+\s+)?(\w+)?\s*(?=\(.*?\))" // apparently some bad esape? + regex : /\w+\s+\w+\s*(?=\(.*?\))/ }, { token : "keyword.operator.lsl", regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" From bbd8721a02bf7d5b65f20a6f15aee4cb44f500c4 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Mon, 15 Apr 2013 23:58:59 +0200 Subject: [PATCH 06/11] trying to fix udf regex for LSL --- lib/ace/mode/lsl_highlight_rules.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index e30513d9..eb42fa28 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -285,55 +285,55 @@ function LSLHighlightRules() { "start" : [ { token : "comment.line.double-slash.lsl", - regex : "\\/\\/.*$" + regex : /\/\/.*$/ }, { token : "comment.block.lsl", - regex : "\\/\\*", + regex : /\/\*/, next : "comment" }, { token : "string.quoted.double.lsl", start : '"', end : '"', next : [ - { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } + { token : "constant.language.escape.lsl", regex : /\[tn"\]/ } ] }, { token : "constant.numeric.lsl", - regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b" + regex : /(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\b/ }, { token : "entity.name.state.lsl", - regex : "\\b((state)\\s+\\w+|default)\\b" + regex : /\b((state)\s+\w+|default)\b/ }, { token : keywordMapper, - regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" + regex : /\b[a-zA-Z_]\w*\b/ }, { token : "support.function.user-defined.lsl", - regex : /\w+\s+\w+\s*(?=\(.*?\))/ + regex : /\b([a-zA-Z0-9_]\w*)(?=\(.*?\))/ }, { token : "keyword.operator.lsl", - regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" + regex : /\+\+|\-\-|<<|>>|&&?|\|\|?|\^|~|[!%<>=*+\-\/]=?/ }, { token : "punctuation.operator.lsl", - regex : "\\,|\\;" + regex : /\,|\;/ }, { token : "paren.lparen.lsl", - regex : "[\\[\\(\\{]" + regex : /[\[\(\{]/ }, { token : "paren.rparen.lsl", - regex : "[\\]\\)\\}]" + regex : /[\]\)\}]/ }, { token : "text.lsl", - regex : "\\s+" + regex : /\s+/ } ], "comment" : [ { token : "comment.block.lsl", - regex : ".*?\\*\\/", + regex : /.*?\*\//, next : "start" }, { token : "comment.block.lsl", - regex : ".+" + regex : /.+/ } ] }; From 745ee98e4ad97c4efa0a2e64b7aef5932681a061 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Tue, 16 Apr 2013 11:30:34 +0200 Subject: [PATCH 07/11] ... --- lib/ace/mode/lsl_highlight_rules.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index eb42fa28..c638d811 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -285,55 +285,55 @@ function LSLHighlightRules() { "start" : [ { token : "comment.line.double-slash.lsl", - regex : /\/\/.*$/ + regex : "\\/\\/.*$" }, { token : "comment.block.lsl", - regex : /\/\*/, + regex : "\\/\\*", next : "comment" }, { token : "string.quoted.double.lsl", start : '"', end : '"', next : [ - { token : "constant.language.escape.lsl", regex : /\[tn"\]/ } + { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } ] }, { token : "constant.numeric.lsl", - regex : /(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\b/ + regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b" }, { token : "entity.name.state.lsl", - regex : /\b((state)\s+\w+|default)\b/ + regex : "\\b((state)\\s+\\w+|default)\\b" }, { token : keywordMapper, - regex : /\b[a-zA-Z_]\w*\b/ + regex : "\\b[a-zA-Z_][a-zA-Z0-9_]*\\b" }, { token : "support.function.user-defined.lsl", - regex : /\b([a-zA-Z0-9_]\w*)(?=\(.*?\))/ + regex : /\b([a-zA-Z_]\w*)(?=\(.*?\))/ }, { token : "keyword.operator.lsl", - regex : /\+\+|\-\-|<<|>>|&&?|\|\|?|\^|~|[!%<>=*+\-\/]=?/ + regex : "\\+\\+|\\-\\-|<<|>>|&&?|\\|\\|?|\\^|~|[!%<>=*+\\-\\/]=?" }, { token : "punctuation.operator.lsl", - regex : /\,|\;/ + regex : "\\,|\\;" }, { token : "paren.lparen.lsl", - regex : /[\[\(\{]/ + regex : "[\\[\\(\\{]" }, { token : "paren.rparen.lsl", - regex : /[\]\)\}]/ + regex : "[\\]\\)\\}]" }, { token : "text.lsl", - regex : /\s+/ + regex : "\\s+" } ], "comment" : [ { token : "comment.block.lsl", - regex : /.*?\*\//, + regex : ".*?\\*\\/", next : "start" }, { token : "comment.block.lsl", - regex : /.+/ + regex : ".+" } ] }; From fe46c0fee7468f3c19abe7d9000bd6f558b8c8ab Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Sun, 21 Apr 2013 21:42:20 +0200 Subject: [PATCH 08/11] added ATTACH_AVATAR_CENTER and ATTACH_NECK --- lib/ace/mode/lsl_highlight_rules.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index c638d811..ae95c711 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -43,12 +43,12 @@ function LSLHighlightRules() { "AGENT_AWAY|AGENT_BUSY|AGENT_BY_LEGACY_NAME|AGENT_BY_USERNAME|AGENT_CROUCHING|" + "AGENT_FLYING|AGENT_IN_AIR|AGENT_LIST_PARCEL|AGENT_LIST_PARCEL_OWNER|" + "AGENT_LIST_REGION|AGENT_MOUSELOOK|AGENT_ON_OBJECT|AGENT_SCRIPTED|AGENT_SITTING|" + - "AGENT_TYPING|AGENT_WALKING|ALL_SIDES|ANIM_ON|ATTACH_BACK|ATTACH_BELLY|" + + "AGENT_TYPING|AGENT_WALKING|ALL_SIDES|ANIM_ON|ATTACH_AVATAR_CENTER|ATTACH_BACK|ATTACH_BELLY|" + "ATTACH_CHEST|ATTACH_CHIN|ATTACH_HEAD|ATTACH_HUD_BOTTOM|ATTACH_HUD_BOTTOM_LEFT|" + "ATTACH_HUD_BOTTOM_RIGHT|ATTACH_HUD_CENTER_1|ATTACH_HUD_CENTER_2|ATTACH_HUD_TOP_CENTER|" + "ATTACH_HUD_TOP_LEFT|ATTACH_HUD_TOP_RIGHT|ATTACH_LEAR|ATTACH_LEFT_PEC|" + "ATTACH_LEYE|ATTACH_LFOOT|ATTACH_LHAND|ATTACH_LHIP|ATTACH_LLARM|ATTACH_LLLEG|" + - "ATTACH_LSHOULDER|ATTACH_LUARM|ATTACH_LULEG|ATTACH_MOUTH|ATTACH_NOSE|" + + "ATTACH_LSHOULDER|ATTACH_LUARM|ATTACH_LULEG|ATTACH_MOUTH|ATTACH_NECK|ATTACH_NOSE|" + "ATTACH_PELVIS|ATTACH_REAR|ATTACH_REYE|ATTACH_RFOOT|ATTACH_RHAND|ATTACH_RHIP|" + "ATTACH_RIGHT_PEC|ATTACH_RLARM|ATTACH_RLLEG|ATTACH_RSHOULDER|ATTACH_RUARM|" + "ATTACH_RULEG|AVOID_CHARACTERS|AVOID_DYNAMIC_OBSTACLES|AVOID_NONE|CAMERA_ACTIVE|" + From 2a089797c61fc00c5e7bca6a46aa87a05eb8fe43 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Thu, 25 Apr 2013 18:22:36 +0200 Subject: [PATCH 09/11] added constants from RC MAGNUM 13.04.19.274352 CONTENT_TYPE_ATOM, CONTENT_TYPE_FORM, CONTENT_TYPE_JSON, CONTENT_TYPE_LLSD, CONTENT_TYPE_RSS, CONTENT_TYPE_XHTML, CONTENT_TYPE_XML --- lib/ace/mode/lsl_highlight_rules.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index ae95c711..d8ec8561 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -65,7 +65,9 @@ function LSLHighlightRules() { "CHARACTER_RADIUS|CHARACTER_TYPE|CHARACTER_TYPE_A|CHARACTER_TYPE_B|CHARACTER_TYPE_C|" + "CHARACTER_TYPE_D|CHARACTER_TYPE_NONE|CLICK_ACTION_BUY|CLICK_ACTION_NONE|" + "CLICK_ACTION_OPEN|CLICK_ACTION_OPEN_MEDIA|CLICK_ACTION_PAY|CLICK_ACTION_PLAY|" + - "CLICK_ACTION_SIT|CLICK_ACTION_TOUCH|CONTENT_TYPE_HTML|CONTENT_TYPE_TEXT|" + + "CLICK_ACTION_SIT|CLICK_ACTION_TOUCH|CONTENT_TYPE_ATOM|CONTENT_TYPE_FORM|" + + "CONTENT_TYPE_HTML|CONTENT_TYPE_JSON|CONTENT_TYPE_LLSD|CONTENT_TYPE_RSS|" + + "CONTENT_TYPE_TEXT|CONTENT_TYPE_XHTML|CONTENT_TYPE_XML|" + "CONTROL_BACK|CONTROL_DOWN|CONTROL_FWD|CONTROL_LBUTTON|CONTROL_LEFT|CONTROL_ML_LBUTTON|" + "CONTROL_RIGHT|CONTROL_ROT_LEFT|CONTROL_ROT_RIGHT|CONTROL_UP|DATA_BORN|" + "DATA_NAME|DATA_ONLINE|DATA_PAYINFO|DATA_SIM_POS|DATA_SIM_RATING|DATA_SIM_STATUS|" + From d15dfadbd3fc32701765dc92de273e253c6609e8 Mon Sep 17 00:00:00 2001 From: Builders Brewery Date: Fri, 26 Apr 2013 19:58:06 +0200 Subject: [PATCH 10/11] added "print" to invalid.illegal --- lib/ace/mode/lsl_highlight_rules.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index d8ec8561..2cbb8697 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -193,7 +193,7 @@ function LSLHighlightRules() { "PERMISSION_CHANGE_PERMISSIONS|PERMISSION_RELEASE_OWNERSHIP|PERMISSION_REMAP_CONTROLS|" + "PRIM_CAST_SHADOWS|PRIM_TYPE_LEGACY|PSYS_SRC_INNERANGLE|PSYS_SRC_OUTERANGLE|" + "VEHICLE_FLAG_NO_FLY_UP", - "invalid.illegal.lsl" : "event", + "invalid.illegal.lsl" : "event|print", "keyword.control.lsl" : "do|else|for|if|jump|return|while", "storage.type.lsl" : "float|integer|key|list|quaternion|rotation|string|vector", "support.function.lsl": "llAbs|llAcos|llAddToLandBanList|llAddToLandPassList|" + From 22d6d4132c0e3838fab96f442189dea57c849f9e Mon Sep 17 00:00:00 2001 From: nightwing Date: Mon, 29 Apr 2013 23:25:41 +0400 Subject: [PATCH 11/11] fix lsl string escapes --- lib/ace/mode/_test/tokens_lsl.json | 602 ++++++++++++++-------------- lib/ace/mode/lsl_highlight_rules.js | 6 +- 2 files changed, 310 insertions(+), 298 deletions(-) diff --git a/lib/ace/mode/_test/tokens_lsl.json b/lib/ace/mode/_test/tokens_lsl.json index c51c0a6f..5134d296 100644 --- a/lib/ace/mode/_test/tokens_lsl.json +++ b/lib/ace/mode/_test/tokens_lsl.json @@ -1,483 +1,495 @@ [[ "comment", - ["comment.block","/*"] + ["comment.block.lsl","/*"] ],[ "comment", - ["comment.block"," Testing syntax highlighting"] + ["comment.block.lsl"," Testing syntax highlighting"] ],[ "comment", - ["comment.block"," of Ace Editor"] + ["comment.block.lsl"," of Ace Editor"] ],[ "comment", - ["comment.block"," for the Linden Scripting Language"] + ["comment.block.lsl"," for the Linden Scripting Language"] ],[ "start", - ["comment.block","*/"] + ["comment.block.lsl","*/"] ],[ "start" ],[ "start", - ["storage.type","integer"], - ["text"," "], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","someIntNormal"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","3672"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.numeric.lsl","3672"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["storage.type","integer"], - ["text"," "], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","someIntHex"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","0x00000000"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.numeric.lsl","0x00000000"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["storage.type","integer"], - ["text"," "], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","someIntMath"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","PI_BY_TWO"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.float.lsl","PI_BY_TWO"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", - ["storage.type","integer"], - ["text"," "], - ["invalid.illegal","event"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","5673"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","// invalid reserved keyword!"] + ["storage.type.lsl","integer"], + ["text.lsl"," "], + ["invalid.illegal.lsl","event"], + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.numeric.lsl","5673"], + ["punctuation.operator.lsl",";"], + ["text.lsl"," "], + ["comment.line.double-slash.lsl","// invalid reserved keyword!"] ],[ "start" ],[ "start", - ["storage.type","key"], - ["text"," "], + ["storage.type.lsl","key"], + ["text.lsl"," "], ["identifier","someKeyTexture"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","TEXTURE_DEFAULT"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.key.lsl","TEXTURE_DEFAULT"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["storage.type","string"], - ["text"," "], + ["storage.type.lsl","string"], + ["text.lsl"," "], ["identifier","someStringSpecial"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","EOF"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.string.lsl","EOF"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", ["identifier","some_user_defined_function_without_return_type"], - ["paren.lparen","("], - ["storage.type","string"], - ["text"," "], + ["paren.lparen.lsl","("], + ["storage.type.lsl","string"], + ["text.lsl"," "], ["identifier","inputAsString"], - ["paren.rparen",")"] + ["paren.rparen.lsl",")"] ],[ "start", - ["paren.lparen","{"] + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["support.function","llSay"], - ["paren.lparen","("], - ["constant.language","PUBLIC_CHANNEL"], - ["punctuation.operator",","], - ["text"," "], + ["text.lsl"," "], + ["support.function.lsl","llSay"], + ["paren.lparen.lsl","("], + ["constant.language.integer.lsl","PUBLIC_CHANNEL"], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], ["identifier","inputAsString"], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["paren.rparen","}"] + ["paren.rparen.lsl","}"] ],[ "start" ],[ "start", - ["storage.type","string"], - ["text"," "], + ["storage.type.lsl","string"], + ["text.lsl"," "], ["identifier","user_defined_function_returning_a_string"], - ["paren.lparen","("], - ["storage.type","key"], - ["text"," "], + ["paren.lparen.lsl","("], + ["storage.type.lsl","key"], + ["text.lsl"," "], ["identifier","inputAsKey"], - ["paren.rparen",")"] + ["paren.rparen.lsl",")"] ],[ "start", - ["paren.lparen","{"] + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["keyword.control","return"], - ["text"," "], - ["paren.lparen","("], - ["storage.type","string"], - ["paren.rparen",")"], + ["text.lsl"," "], + ["keyword.control.lsl","return"], + ["text.lsl"," "], + ["paren.lparen.lsl","("], + ["storage.type.lsl","string"], + ["paren.rparen.lsl",")"], ["identifier","inputAsKey"], - ["punctuation.operator",";"] + ["punctuation.operator.lsl",";"] ],[ "start", - ["paren.rparen","}"] + ["paren.rparen.lsl","}"] ],[ "start" ],[ "start", - ["keyword.other","default"] + ["entity.name.state.lsl","default"] ],[ "start", - ["paren.lparen","{"] + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["support.function.event","state_entry"], - ["paren.lparen","("], - ["paren.rparen",")"] + ["text.lsl"," "], + ["support.function.event.lsl","state_entry"], + ["paren.lparen.lsl","("], + ["paren.rparen.lsl",")"] ],[ "start", - ["text"," "], - ["paren.lparen","{"] + ["text.lsl"," "], + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["storage.type","key"], - ["text"," "], + ["text.lsl"," "], + ["storage.type.lsl","key"], + ["text.lsl"," "], ["identifier","someKey"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","NULL_KEY"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.key.lsl","NULL_KEY"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","someKey"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llGetOwner"], - ["paren.lparen","("], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["support.function.lsl","llGetOwner"], + ["paren.lparen.lsl","("], + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", - ["text"," "], - ["storage.type","string"], - ["text"," "], + ["text.lsl"," "], + ["storage.type.lsl","string"], + ["text.lsl"," "], ["identifier","someString"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], ["identifier","user_defined_function_returning_a_string"], - ["paren.lparen","("], + ["paren.lparen.lsl","("], ["identifier","someKey"], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","some_user_defined_function_without_return_type"], - ["paren.lparen","("], + ["paren.lparen.lsl","("], ["identifier","someString"], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["paren.rparen","}"] + ["text.lsl"," "], + ["paren.rparen.lsl","}"] ],[ "start" ],[ "start", - ["text"," "], - ["support.function.event","touch_start"], - ["paren.lparen","("], - ["storage.type","integer"], - ["text"," "], + ["text.lsl"," "], + ["support.function.event.lsl","touch_start"], + ["paren.lparen.lsl","("], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","num_detected"], - ["paren.rparen",")"] + ["paren.rparen.lsl",")"] ],[ "start", - ["text"," "], - ["paren.lparen","{"] + ["text.lsl"," "], + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["storage.type","list"], - ["text"," "], + ["text.lsl"," "], + ["storage.type.lsl","list"], + ["text.lsl"," "], ["identifier","agentsInRegion"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llGetAgentList"], - ["paren.lparen","("], - ["constant.language","AGENT_LIST_REGION"], - ["punctuation.operator",","], - ["text"," "], - ["paren.lparen","["], - ["paren.rparen","])"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["support.function.lsl","llGetAgentList"], + ["paren.lparen.lsl","("], + ["constant.language.integer.lsl","AGENT_LIST_REGION"], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], + ["paren.lparen.lsl","["], + ["paren.rparen.lsl","])"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["storage.type","integer"], - ["text"," "], + ["text.lsl"," "], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","numOfAgents"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["support.function","llGetListLength"], - ["paren.lparen","("], + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["support.function.lsl","llGetListLength"], + ["paren.lparen.lsl","("], ["identifier","agentsInRegion"], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", - ["text"," "], - ["storage.type","integer"], - ["text"," "], + ["text.lsl"," "], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","index"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","// defaults to 0"] + ["punctuation.operator.lsl",";"], + ["text.lsl"," "], + ["comment.line.double-slash.lsl","// defaults to 0"] ],[ "start", - ["text"," "], - ["keyword.control","for"], - ["text"," "], - ["paren.lparen","("], - ["punctuation.operator",";"], - ["text"," "], + ["text.lsl"," "], + ["keyword.control.lsl","for"], + ["text.lsl"," "], + ["paren.lparen.lsl","("], + ["punctuation.operator.lsl",";"], + ["text.lsl"," "], ["identifier","index"], - ["text"," "], - ["keyword.operator","<="], - ["text"," "], + ["text.lsl"," "], + ["keyword.operator.lsl","<="], + ["text.lsl"," "], ["identifier","numOfAgents"], - ["text"," "], - ["keyword.operator","-"], - ["text"," "], - ["constant.numeric","1"], - ["punctuation.operator",";"], - ["text"," "], + ["text.lsl"," "], + ["keyword.operator.lsl","-"], + ["text.lsl"," "], + ["constant.numeric.lsl","1"], + ["punctuation.operator.lsl",";"], + ["text.lsl"," "], ["identifier","index"], - ["keyword.operator","++"], - ["paren.rparen",")"], - ["text"," "], - ["comment.line","// for each agent in region"] + ["keyword.operator.lsl","++"], + ["paren.rparen.lsl",")"], + ["text.lsl"," "], + ["comment.line.double-slash.lsl","// for each agent in region"] ],[ "start", - ["text"," "], - ["paren.lparen","{"] + ["text.lsl"," "], + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["support.function","llRegionSayTo"], - ["paren.lparen","("], - ["support.function","llList2Key"], - ["paren.lparen","("], + ["text.lsl"," "], + ["support.function.lsl","llRegionSayTo"], + ["paren.lparen.lsl","("], + ["support.function.lsl","llList2Key"], + ["paren.lparen.lsl","("], ["identifier","agentsInRegion"], - ["punctuation.operator",","], - ["text"," "], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], ["identifier","index"], - ["paren.rparen",")"], - ["punctuation.operator",","], - ["text"," "], - ["constant.language","PUBLIC_CHANNEL"], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"Hello, Avatar!\""], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], + ["constant.language.integer.lsl","PUBLIC_CHANNEL"], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], + ["string.quoted.double.lsl.start","\""], + ["string.quoted.double.lsl","Hello, Avatar!"], + ["string.quoted.double.lsl.end","\""], + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["paren.rparen","}"] + ["text.lsl"," "], + ["paren.rparen.lsl","}"] ],[ "start", - ["text"," "], - ["paren.rparen","}"] + ["text.lsl"," "], + ["paren.rparen.lsl","}"] ],[ "start" ],[ "start", - ["text"," "], - ["support.function.event","touch_end"], - ["paren.lparen","("], - ["storage.type","integer"], - ["text"," "], + ["text.lsl"," "], + ["support.function.event.lsl","touch_end"], + ["paren.lparen.lsl","("], + ["storage.type.lsl","integer"], + ["text.lsl"," "], ["identifier","num_detected"], - ["paren.rparen",")"] + ["paren.rparen.lsl",")"] ],[ "start", - ["text"," "], - ["paren.lparen","{"] + ["text.lsl"," "], + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","someIntNormal"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","3672"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.numeric.lsl","3672"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","someIntHex"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","0x00000000"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.numeric.lsl","0x00000000"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","someIntMath"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","PI_BY_TWO"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.float.lsl","PI_BY_TWO"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", - ["text"," "], - ["invalid.illegal","event"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.numeric","5673"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","// invalid reserved keyword!"] + ["text.lsl"," "], + ["invalid.illegal.lsl","event"], + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.numeric.lsl","5673"], + ["punctuation.operator.lsl",";"], + ["text.lsl"," "], + ["comment.line.double-slash.lsl","// invalid reserved keyword!"] ],[ "start" ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","someKeyTexture"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","TEXTURE_DEFAULT"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.key.lsl","TEXTURE_DEFAULT"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], + ["text.lsl"," "], ["identifier","someStringSpecial"], - ["text"," "], - ["keyword.operator","="], - ["text"," "], - ["constant.language","EOF"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["keyword.operator.lsl","="], + ["text.lsl"," "], + ["constant.language.string.lsl","EOF"], + ["punctuation.operator.lsl",";"] ],[ "start" ],[ "start", - ["text"," "], - ["invalid.deprecated","llCollisionSprite"], - ["paren.lparen","("], + ["text.lsl"," "], + ["invalid.deprecated.lsl","llCollisionSprite"], + ["paren.lparen.lsl","("], ["identifier","someKeyTexture"], - ["paren.rparen",")"], - ["punctuation.operator",";"], - ["text"," "], - ["comment.line","// invalid deprecated function!"] + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"], + ["text.lsl"," "], + ["comment.line.double-slash.lsl","// invalid deprecated function!"] ],[ "start" ],[ "start", - ["text"," "], - ["support.function","llWhisper"], - ["paren.lparen","("], - ["constant.language","PUBLIC_CHANNEL"], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"Leaving \\\"default\\\" now...\""], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["support.function.lsl","llWhisper"], + ["paren.lparen.lsl","("], + ["constant.language.integer.lsl","PUBLIC_CHANNEL"], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], + ["string.quoted.double.lsl.start","\""], + ["string.quoted.double.lsl","Leaving "], + ["constant.language.escape.lsl","\\\""], + ["string.quoted.double.lsl","default"], + ["constant.language.escape.lsl","\\\""], + ["string.quoted.double.lsl"," now..."], + ["string.quoted.double.lsl.end","\""], + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["keyword.other","state"], - ["text"," "], - ["identifier","other"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["entity.name.state.lsl","state other"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["paren.rparen","}"] + ["text.lsl"," "], + ["paren.rparen.lsl","}"] ],[ "start", - ["paren.rparen","}"] + ["paren.rparen.lsl","}"] ],[ "start" ],[ "start", - ["keyword.other","state"], - ["text"," "], - ["identifier","other"] + ["entity.name.state.lsl","state other"] ],[ "start", - ["paren.lparen","{"] + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["support.function.event","state_entry"], - ["paren.lparen","("], - ["paren.rparen",")"] + ["text.lsl"," "], + ["support.function.event.lsl","state_entry"], + ["paren.lparen.lsl","("], + ["paren.rparen.lsl",")"] ],[ "start", - ["text"," "], - ["paren.lparen","{"] + ["text.lsl"," "], + ["paren.lparen.lsl","{"] ],[ "start", - ["text"," "], - ["support.function","llWhisper"], - ["paren.lparen","("], - ["constant.language","PUBLIC_CHANNEL"], - ["punctuation.operator",","], - ["text"," "], - ["string.double","\"Entered \\\"state other\\\", returning to \\\"default\\\" again...\""], - ["paren.rparen",")"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["support.function.lsl","llWhisper"], + ["paren.lparen.lsl","("], + ["constant.language.integer.lsl","PUBLIC_CHANNEL"], + ["punctuation.operator.lsl",","], + ["text.lsl"," "], + ["string.quoted.double.lsl.start","\""], + ["string.quoted.double.lsl","Entered "], + ["constant.language.escape.lsl","\\\""], + ["string.quoted.double.lsl","state other"], + ["constant.language.escape.lsl","\\\""], + ["string.quoted.double.lsl",", returning to "], + ["constant.language.escape.lsl","\\\""], + ["string.quoted.double.lsl","default"], + ["constant.language.escape.lsl","\\\""], + ["string.quoted.double.lsl"," again..."], + ["string.quoted.double.lsl.end","\""], + ["paren.rparen.lsl",")"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["keyword.other","state"], - ["text"," "], - ["keyword.other","default"], - ["punctuation.operator",";"] + ["text.lsl"," "], + ["entity.name.state.lsl","state default"], + ["punctuation.operator.lsl",";"] ],[ "start", - ["text"," "], - ["paren.rparen","}"] + ["text.lsl"," "], + ["paren.rparen.lsl","}"] ],[ "start", - ["paren.rparen","}"] + ["paren.rparen.lsl","}"] ],[ "start" ]] \ No newline at end of file diff --git a/lib/ace/mode/lsl_highlight_rules.js b/lib/ace/mode/lsl_highlight_rules.js index 2cbb8697..6d25dbc4 100644 --- a/lib/ace/mode/lsl_highlight_rules.js +++ b/lib/ace/mode/lsl_highlight_rules.js @@ -296,9 +296,9 @@ function LSLHighlightRules() { token : "string.quoted.double.lsl", start : '"', end : '"', - next : [ - { token : "constant.language.escape.lsl", regex : "\\[tn\"\\]" } - ] + next : [{ + token : "constant.language.escape.lsl", regex : /\\[tn"\\]/ + }] }, { token : "constant.numeric.lsl", regex : "(0[xX][0-9a-fA-F]+|[+-]?[0-9]+(?:(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)?)\\b"