    // 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"