jdorn/sql-formatter

upper case

Closed this issue · 3 comments

Looks like this is an abandoned project. But if someone ever picks it up again...

It would be wonderful if SQL key works could automatically be made uppercase... or perhaps optionally.

-FT

try replacing highlightToken function with the below

protected static function highlightToken($token)
{
$type = $token[self::TOKEN_TYPE];

    if (self::is_cli()) {
        $token = $token[self::TOKEN_VALUE];
    } else {
        $token = htmlentities($token[self::TOKEN_VALUE],ENT_COMPAT,'UTF-8');
    }

    if ($type===self::TOKEN_TYPE_BOUNDARY) {

        return self::highlightBoundary($token);

    }

    elseif ($type===self::TOKEN_TYPE_WORD) {

        return self::highlightWord($token);

    }

    elseif ($type===self::TOKEN_TYPE_BACKTICK_QUOTE) {

        return self::highlightBacktickQuote($token);

    }

    elseif ($type===self::TOKEN_TYPE_QUOTE) {


        return self::highlightQuote($token);

    }

    elseif ($type===self::TOKEN_TYPE_RESERVED) {

        $token = strtoupper($token);

        return self::highlightReservedWord($token);

    }

    elseif ($type===self::TOKEN_TYPE_RESERVED_TOPLEVEL) {

        $token = strtoupper($token);

        return self::highlightReservedWord($token);

    }

    elseif ($type===self::TOKEN_TYPE_RESERVED_NEWLINE) {

        $token = strtoupper($token);

        return self::highlightReservedWord($token);

    }

    elseif ($type===self::TOKEN_TYPE_NUMBER) {

        return self::highlightNumber($token);

    }

    elseif ($type===self::TOKEN_TYPE_VARIABLE) {

        return self::highlightVariable($token);

    }

    elseif ($type===self::TOKEN_TYPE_COMMENT || $type===self::TOKEN_TYPE_BLOCK_COMMENT) {

        return self::highlightComment($token);

    }

    return $token;
}

FYI we made a fork at Doctrine: https://github.com/doctrine/sql-formatter

Thanks for the info... closing ticket..