diff --git a/autotests/folding/highlight_cubescript.cfg.fold b/autotests/folding/highlight_cubescript.cfg.fold new file mode 100644 index 0000000..7ed2fd4 --- /dev/null +++ b/autotests/folding/highlight_cubescript.cfg.fold @@ -0,0 +1,34 @@ +// kate: syntax CubeScript; +// CubeScript test + +i = 0 +rainbowchat = [ + out = "" + loop k $numargs [ + word = $(format "arg%1" (+ $k 1)) + loop j (stringlen $word) [ + out = (format "%1^fz%2%3" $out (substring "rygcbvmr" $i 2) (substring $word $j 1)) + if (> $i 5) [i = 0 ] [i = (+ $i 1)] + ] + out = (format "%1 " $out) + ] + if (< (stringlen $out) 128) [ + say $out + ] [ + echo (format "This message is %1 chars long - the usual limit is 127. Each letter takes up 5." (stringlen $out)) + ] +] + +setcomplete rainbowchat 1 +listcomplete rainbowchat [ + "BoOoM" + "Good game!" + "What the f*** was this?!?" + "go for it!" + "yeeeehaw!" + "what a mess >_< " +] + +// Line continuation escape +"string ^ + newline" diff --git a/autotests/html/highlight_cubescript.cfg.html b/autotests/html/highlight_cubescript.cfg.html new file mode 100644 index 0000000..7e1a2d2 --- /dev/null +++ b/autotests/html/highlight_cubescript.cfg.html @@ -0,0 +1,41 @@ + + + +highlight_cubescript.cfg + +
+// kate: syntax CubeScript;
+// CubeScript test
+
+i = 0
+rainbowchat = [
+    out = ""
+    loop k $numargs [
+        word = $(format "arg%1" (+ $k 1))
+        loop j (stringlen $word) [
+            out = (format "%1^fz%2%3" $out (substring "rygcbvmr" $i 2) (substring $word $j 1)) 
+            if (> $i 5) [i = 0 ] [i = (+ $i 1)]
+        ]
+        out = (format "%1 " $out)
+    ]
+    if (< (stringlen $out) 128) [
+        say $out
+    ] [
+        echo (format "This message is %1 chars long - the usual limit is 127. Each letter takes up 5." (stringlen $out))
+    ]
+]
+
+setcomplete rainbowchat 1
+listcomplete rainbowchat [
+    "BoOoM"
+    "Good game!"
+    "What the f*** was this?!?"
+    "go for it!"
+    "yeeeehaw!"
+    "what a mess >_< "
+]
+
+// Line continuation escape
+"string ^
+    newline"
+
diff --git a/autotests/input/highlight_cubescript.cfg b/autotests/input/highlight_cubescript.cfg new file mode 100644 index 0000000..c65bbfb --- /dev/null +++ b/autotests/input/highlight_cubescript.cfg @@ -0,0 +1,34 @@ +// kate: syntax CubeScript; +// CubeScript test + +i = 0 +rainbowchat = [ + out = "" + loop k $numargs [ + word = $(format "arg%1" (+ $k 1)) + loop j (stringlen $word) [ + out = (format "%1^fz%2%3" $out (substring "rygcbvmr" $i 2) (substring $word $j 1)) + if (> $i 5) [i = 0 ] [i = (+ $i 1)] + ] + out = (format "%1 " $out) + ] + if (< (stringlen $out) 128) [ + say $out + ] [ + echo (format "This message is %1 chars long - the usual limit is 127. Each letter takes up 5." (stringlen $out)) + ] +] + +setcomplete rainbowchat 1 +listcomplete rainbowchat [ + "BoOoM" + "Good game!" + "What the f*** was this?!?" + "go for it!" + "yeeeehaw!" + "what a mess >_< " +] + +// Line continuation escape +"string ^ + newline" diff --git a/autotests/input/highlight_cubescript.cfg.syntax b/autotests/input/highlight_cubescript.cfg.syntax new file mode 100644 index 0000000..d48e964 --- /dev/null +++ b/autotests/input/highlight_cubescript.cfg.syntax @@ -0,0 +1 @@ +CubeScript diff --git a/autotests/reference/highlight_cubescript.cfg.ref b/autotests/reference/highlight_cubescript.cfg.ref new file mode 100644 index 0000000..42d9210 --- /dev/null +++ b/autotests/reference/highlight_cubescript.cfg.ref @@ -0,0 +1,34 @@ +// kate: syntax CubeScript;
+// CubeScript test
+
+i = 0
+rainbowchat = [
+ out = ""
+ loop k $numargs [
+ word = $(format "arg%1" (+ $k 1))
+ loop j (stringlen $word) [
+ out = (format "%1^fz%2%3" $out (substring "rygcbvmr" $i 2) (substring $word $j 1))
+ if (> $i 5) [i = 0 ] [i = (+ $i 1)]
+ ]
+ out = (format "%1 " $out)
+ ]
+ if (< (stringlen $out) 128) [
+ say $out
+ ] [
+ echo (format "This message is %1 chars long - the usual limit is 127. Each letter takes up 5." (stringlen $out))
+ ]
+]
+
+setcomplete rainbowchat 1
+listcomplete rainbowchat [
+ "BoOoM"
+ "Good game!"
+ "What the f*** was this?!?"
+ "go for it!"
+ "yeeeehaw!"
+ "what a mess >_< "
+]
+
+// Line continuation escape
+"string ^
+ newline"
diff --git a/data/syntax/cubescript.xml b/data/syntax/cubescript.xml index 5677dbf..88e550c 100644 --- a/data/syntax/cubescript.xml +++ b/data/syntax/cubescript.xml @@ -1,456 +1,452 @@ - + ? alias at case casef cases clearconsole clearsleep complete concat concatword cond conskip do echo error escape exec format getalias getfvarmin getfvarmax getvarmin getvarmax history if indexof inputcommand keymap listcomplete listdel listfind listlen listsplice local loop loopconcat loopconcatword loopfiles looplist loopwhile miniconskip nodebug onrelease prettylist push resetvar result rnd saycommand searchbinds searcheditbinds searchspecbinds sleep strcmp strlen strreplace strstr sublist substr tabify toggleconsole unescape while writecfg bind editbind specbind getbind geteditbind getspecbind + * - +f *f -f = != > < >= <= =f !=f >f <f >=f <=f ^ ! & | ~ ^~ &~ |~ << >> && || abs absf div mod divf modf sin cos tan asin acos atan sqrt pow loge log2 log10 exp min max minf maxf =s !=s <s >s <=s >=s MOUSELEFT MOUSEMIDDLE MOUSERIGHT MOUSEWHEELUP MOUSEWHEELDOWN MOUSEX1 MOUSEX2 MOUSE1 MOUSE2 MOUSE3 MOUSE4 MOUSE5 BACKSPACE TAB CLEAR RETURN PAUSE ESCAPE SPACE EXCLAIM QUOTEDBL HASH DOLLAR AMPERSAND QUOTE LEFTPAREN RIGHTPAREN ASTERISK PLUS COMMA MINUS PERIOD SLASH 0 1 2 3 4 5 6 7 8 9 COLON SEMICOLON LESS EQUALS GREATER QUESTION AT LEFTBRACKET BACKSLASH RIGHTBRACKET CARET UNDERSCORE BACKQUOTE 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 DELETE KP0 KP1 KP2 KP3 KP4 KP5 KP6 KP7 KP8 KP9 KP_PERIOD KP_DIVIDE KP_MULTIPLY KP_MINUS KP_PLUS KP_ENTER KP_EQUALS UP DOWN RIGHT LEFT INSERT HOME END PAGEUP PAGEDOWN F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 NUMLOCK CAPSLOCK SCROLLOCK RSHIFT LSHIFT RCTRL LCTRL RALT LALT RMETA LMETA LSUPER RSUPER MODE COMPOSE HELP PRINT SYSREQ BREAK MENU commandbuf editing mainmenu numargs + + - - - - - - - + +