From 5498e81381640800b595986cebfd601234f2b0a7 Mon Sep 17 00:00:00 2001 From: cpovirk Date: Fri, 10 Jul 2026 11:14:03 -0700 Subject: [PATCH] Remove interior blank lines inside `blockquote`. Thanks to kak@ in https://github.com/google/google-java-format/commit/77bee2d1fbb8e7c1d0b37fa76261176124a26627 for adding these tests! PiperOrigin-RevId: 945803637 --- .../java/javadoc/JavadocFormatter.java | 4 ++-- .../java/javadoc/JavadocWriter.java | 14 +++++++++++++- .../java/JavadocFormattingTest.java | 3 --- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocFormatter.java b/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocFormatter.java index 7e2a4e0bd..29acef7e3 100644 --- a/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocFormatter.java +++ b/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocFormatter.java @@ -119,8 +119,8 @@ private static String render(List input, int blockIndent, boolean classic case HeaderOpenTag t -> output.writeHeaderOpen(t); case HeaderCloseTag t -> output.writeHeaderClose(t); case ParagraphOpenTag t -> output.writeParagraphOpen(standardizePToken(t)); - case BlockquoteOpenTag t -> output.writeBlockquoteOpenOrClose(t); - case BlockquoteCloseTag t -> output.writeBlockquoteOpenOrClose(t); + case BlockquoteOpenTag t -> output.writeBlockquoteOpen(t); + case BlockquoteCloseTag t -> output.writeBlockquoteClose(t); case PreOpenTag t -> output.writePreOpen(t); case PreCloseTag t -> output.writePreClose(t); case CodeOpenTag t -> output.writeCodeOpen(t); diff --git a/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocWriter.java b/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocWriter.java index e27f39b3e..fbe6e84d2 100644 --- a/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocWriter.java +++ b/core/src/main/java/com/google/googlejavaformat/java/javadoc/JavadocWriter.java @@ -23,6 +23,8 @@ import static com.google.googlejavaformat.java.javadoc.JavadocWriter.RequestedWhitespace.NONE; import static com.google.googlejavaformat.java.javadoc.JavadocWriter.RequestedWhitespace.WHITESPACE; +import com.google.googlejavaformat.java.javadoc.Token.BlockquoteCloseTag; +import com.google.googlejavaformat.java.javadoc.Token.BlockquoteOpenTag; import com.google.googlejavaformat.java.javadoc.Token.BrTag; import com.google.googlejavaformat.java.javadoc.Token.CodeCloseTag; import com.google.googlejavaformat.java.javadoc.Token.CodeOpenTag; @@ -259,13 +261,23 @@ void writeParagraphOpen(Token token) { writeToken(token); } - void writeBlockquoteOpenOrClose(Token token) { + void writeBlockquoteOpen(BlockquoteOpenTag token) { if (wroteAnythingSignificant) { requestBlankLine(); } writeToken(token); + requestNewline(); + } + + void writeBlockquoteClose(BlockquoteCloseTag token) { + if (wroteAnythingSignificant) { + requestNewline(); + } + + writeToken(token); + requestBlankLine(); } diff --git a/core/src/test/java/com/google/googlejavaformat/java/JavadocFormattingTest.java b/core/src/test/java/com/google/googlejavaformat/java/JavadocFormattingTest.java index 7083a878d..02aaf79cb 100644 --- a/core/src/test/java/com/google/googlejavaformat/java/JavadocFormattingTest.java +++ b/core/src/test/java/com/google/googlejavaformat/java/JavadocFormattingTest.java @@ -716,7 +716,6 @@ class Test {}\ *
* *

def - * *

* * ghi @@ -2178,9 +2177,7 @@ class Test {} String expected = """ ///
- /// /// line 1 line 2 - /// ///
class Test {} """;