From 2ca145b2648b20ad39e97093798c3d313de7c625 Mon Sep 17 00:00:00 2001 From: bigguy345 Date: Wed, 25 Feb 2026 13:04:07 +0200 Subject: [PATCH] Fixed auto {} brace insertion not respecting existing } that has different indent/whitespaces --- .../npcs/client/gui/util/GuiScriptTextArea.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java b/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java index 8c19774ee..effe69c7e 100644 --- a/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java +++ b/src/main/java/noppes/npcs/client/gui/util/GuiScriptTextArea.java @@ -1976,6 +1976,17 @@ public class GuiScriptTextArea extends GuiNpcTextField { String childIndent = indent + " "; String after = getSelectionAfterText(); + // If the next non-whitespace char is '}', don't insert another closer. + int nextNonWs = 0; + while (nextNonWs < after.length() && Character.isWhitespace(after.charAt(nextNonWs))) { + nextNonWs++; + } + if (nextNonWs < after.length() && after.charAt(nextNonWs) == '}') { + addText("\n" + childIndent); + scrollToCursor(); + return true; + } + int firstNewline = after.indexOf('\n'); String leadingSegment = firstNewline == -1 ? after : after.substring(0, firstNewline); if (leadingSegment.trim().length() > 0) {