On Thu, 12 Sep 2024 11:00:37 GMT, Pavel Rappo <pra...@openjdk.org> wrote:

>> Please review these changes to correct the handling of leading and trailing 
>> indented code blocks in a doc comment.
>> 
>> There are two separate issues here: one for leading indented code blocks and 
>> one for trailing indented code blocks.
>> 
>> 1. Leading indented code blocks: the code to detect the first sentence of a 
>> doc comment is modified to detect whether the comment begins with an 
>> indented code block. If it does, the first sentence is deemed to be empty, 
>> and the body of the doc comment begins with the code block.
>> 2. Trailing indented code blocks: the content of the indented code block is 
>> marked as significant by updating `lastNonWhite`, which will cause the 
>> content to be recorded (not dropped) if the code block is followed by EOF.
>> 
>> For both cases, simple `DocTree` AST-level tests are provided, as well as 
>> full `JavadocTester` tests, that test the end-user view of the generated 
>> docs.
>
> test/langtools/jdk/javadoc/doclet/testMarkdown/TestMarkdownCodeBlocks.java 
> line 497:
> 
>> 495:                     package p;
>> 496:                     ///     Leading code block
>> 497:                     /// Lorum ipsum.
> 
> My immediate reaction was to think that it is not a code block because 
> there's no blank line between those two lines; but it is: 
> https://spec.commonmark.org/0.31.2/#example-114
> 
> So, all is well here.

Yes, you typically need a blank line _before_ an indented code block, to avoid 
being treated as a continuation of a preceding paragraph, but "unindenting" is 
enough to end an indented code block.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/20956#discussion_r1757500658

Reply via email to