From 637bf87e04685f7332373f544b69f0e06bda24db Mon Sep 17 00:00:00 2001 From: serge-rider Date: Fri, 20 Apr 2018 00:57:41 +0300 Subject: [PATCH] #3326 SQL auto-indent fix. Former-commit-id: 4454d8437f8a5e7249240f2ec5d7d3bccd28bbdd --- .../jkiss/dbeaver/ui/editors/sql/indent/SQLIndenter.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/indent/SQLIndenter.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/indent/SQLIndenter.java index accd6ee0c2..abbac16733 100644 --- a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/indent/SQLIndenter.java +++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/indent/SQLIndenter.java @@ -137,13 +137,16 @@ public class SQLIndenter { try { IRegion line = document.getLineInformationOfOffset(offset); int lineOffset = line.getOffset(); - if (scanner.endsWithDelimiter(lineOffset, lineOffset + line.getLength())) { - return ""; - } int nonWS = scanner.findNonWhitespaceForwardInAnyPartition(lineOffset, lineOffset + line.getLength()); if (nonWS < 0) { return ""; } + int indentLength = nonWS - lineOffset; + StringBuilder indent = createIndent(); + if (indentLength > indent.length() && scanner.endsWithDelimiter(lineOffset, lineOffset + line.getLength())) { + nonWS -= indent.length(); + } + return document.get(lineOffset, nonWS - lineOffset); } catch (BadLocationException e) { -- GitLab