diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/format/tokenized/SQLTokensParser.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/format/tokenized/SQLTokensParser.java index 73e6f69417794ed1443484c332e7a05778b60673..a6ec7c88709dda86d429133f5fac8963ef4f3d57 100644 --- a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/format/tokenized/SQLTokensParser.java +++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/format/tokenized/SQLTokensParser.java @@ -78,6 +78,7 @@ class SQLTokensParser { case '>': // greater than operator case '!': // greater than operator case '~': // greater than operator + case '`': // apos return true; default: return false; @@ -176,28 +177,18 @@ class SQLTokensParser { return new FormatterToken(FormatterConstants.COMMENT, s.toString(), start_pos); } } - } else if (fChar == '\'') { + } else if (fChar == '\'' || fChar == '\"' || fChar == configuration.getSyntaxManager().getQuoteSymbol().charAt(0)) { fPos++; - StringBuilder s = new StringBuilder("'"); + char quoteChar = fChar; + StringBuilder s = new StringBuilder(String.valueOf(quoteChar)); for (;;) { fChar = fBefore.charAt(fPos); s.append(fChar); fPos++; - if (fChar == '\'') { + if (fChar == quoteChar) { return new FormatterToken(FormatterConstants.VALUE, s.toString(), start_pos); } } - } else if (fChar == '\"') { - fPos++; - StringBuilder s = new StringBuilder("\""); - for (;;) { - fChar = fBefore.charAt(fPos); - s.append(fChar); - fPos++; - if (fChar == '\"') { - return new FormatterToken(FormatterConstants.NAME, s.toString(), start_pos); - } - } } else if (isSymbol(fChar)) {