RFR: JDK-8298405: Support Markdown in the standard doclet [v2]
Pavel Rappo
prappo at openjdk.org
Mon Jan 9 18:00:00 UTC 2023
On Mon, 9 Jan 2023 17:44:35 GMT, Jonathan Gibbons <jjg at openjdk.org> wrote:
>> Support for Markdown comments in the standard doclet.
>>
>> To enable Markdown in a comment, start the comment with `/**md` followed by whitespace. The syntax is as defined for CommonMark.
>>
>> The work is in 3 parts:
>>
>> 1. Update the Compiler Tree API to support Markdown tree nodes, containing strings of (uninterpreted) Markdown source code.
>> 2. Import commonmark-java into the `jdk.javadoc` module, to be able to convert Markdown strings to HTML.
>> 3. Update the standard doclet, to leverage the preceding two parts, to translate Markdown in documentation comments to `Content` nodes.
>>
>> There are new tests both for the low level work in the Compiler Tree API, and for the overall high-level work in the doclet.
>
> Jonathan Gibbons has updated the pull request incrementally with five additional commits since the last revision:
>
> - Update copyright years
> - Rename FFFC variable
> Share Markdown parser and renderer in instance of MarkdownHandler
> - Move CommonMark to new internal module.
> Add legal header to imported CommonMark source files
> Always use Text nodes inside AttributeTree values
> Unwrap <p> from "simple" paragraphs
> - Always use Text nodes inside AttributeTree values
> - Update to CommonMark 0.21.
src/jdk.internal.md/share/classes/jdk/internal/org/commonmark/internal/util/Html5Entities.java line 47:
> 45:
> 46: private static final Map<String, String> NAMED_CHARACTER_REFERENCES = readEntities();
> 47: private static final String ENTITY_PATH = "/org/commonmark/internal/util/entities.txt";
I see that you've added the missing `entities.properties` file, but renamed it to `entities.txt`. IIRC from our offline chat, it's due to how JDK build treats `.properties` files.
I wonder what would be better: (a) to keep the original extension, but amend the build to ignore this file, or (b) to do what you've done and possibly suggest a PR for CommonMark to do the same.
On the one hand, it's not a true Java `.properties` file as one might've though from its extension. On the other hand, this change of yours diverge us from the original snapshot of CommonMark.
-------------
PR: https://git.openjdk.org/jdk/pull/11701
More information about the compiler-dev
mailing list