static private string HandleCommand(char c, string buffer)
    {
        if (c == ']')
        {
            buffer = MakeToken(BasicTokens.COMMAND, buffer);
            state.pop();
        }
        else if (c == '\\')
        {
            state.push(State.ESCAPE_CHAR);
        }
        else if (c == '\n' || c == '\r')
        {
            throw new System.Exception("Invalid command string at line " + lineNumber.ToString());
        }
        else
        {
            buffer = buffer + c;
        }

        return(buffer);
    }