java.lang.Object
org.aya.pretty.backend.string.StringPrinter<DocMdPrinter.Config>
org.aya.pretty.backend.html.DocHtmlPrinter<DocMdPrinter.Config>
org.aya.pretty.backend.md.DocMdPrinter
- All Implemented Interfaces:
Printer<String,DocMdPrinter.Config>
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.aya.pretty.backend.string.StringPrinter
StringPrinter.Outer -
Field Summary
FieldsFields inherited from class org.aya.pretty.backend.html.DocHtmlPrinter
entityMapping, entityPatternFields inherited from class org.aya.pretty.backend.string.StringPrinter
config, FREE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected @NotNull StringescapePlainText(@NotNull String content, EnumSet<StringPrinter.Outer> outer) protected voidrenderCodeBlock(@NotNull Cursor cursor, Doc.CodeBlock block, EnumSet<StringPrinter.Outer> outer) protected voidrenderFooter(@NotNull Cursor cursor) protected voidrenderHardLineBreak(@NotNull Cursor cursor, EnumSet<StringPrinter.Outer> outer) This line break is printed in the resulting document (like .pdf generated from .tex or .md).protected voidrenderHeader(@NotNull Cursor cursor) protected voidrenderHyperLinked(@NotNull Cursor cursor, Doc.HyperLinked text, EnumSet<StringPrinter.Outer> outer) protected voidrenderImage(@NotNull Cursor cursor, Doc.Image image, EnumSet<StringPrinter.Outer> outer) protected voidrenderInlineCode(@NotNull Cursor cursor, Doc.InlineCode code, EnumSet<StringPrinter.Outer> outer) protected voidrenderInlineMath(@NotNull Cursor cursor, @NotNull Doc.InlineMath code, EnumSet<StringPrinter.Outer> outer) protected voidrenderList(@NotNull Cursor cursor, Doc.List list, EnumSet<StringPrinter.Outer> outer) protected voidrenderMathBlock(@NotNull Cursor cursor, @NotNull Doc.MathBlock block, EnumSet<StringPrinter.Outer> outer) Methods inherited from class org.aya.pretty.backend.html.DocHtmlPrinter
normalizeHref, normalizeId, prepareStylist, renderCssStyle, renderTooltipMethods inherited from class org.aya.pretty.backend.string.StringPrinter
fitsBetter, formatBlock, formatBlock, formatInline, formatList, formatList, makeIndent, predictWidth, render, renderBlockSeparator, renderDoc, renderFlatAlt, renderNest, renderPlainText, renderSpecialSymbol, renderStyled, renderUnionDoc, separateBlockIfNeeded
-
Field Details
-
MD_ESCAPE
-
MD_ESCAPE_FAKE_LIST
`Doc.plain("1. hello")` should not be rendered as a list, see MdStyleTest
-
-
Constructor Details
-
DocMdPrinter
public DocMdPrinter()
-
-
Method Details
-
renderHeader
- Overrides:
renderHeaderin classDocHtmlPrinter<DocMdPrinter.Config>
-
escapePlainText
@NotNull protected @NotNull String escapePlainText(@NotNull @NotNull String content, EnumSet<StringPrinter.Outer> outer) - Overrides:
escapePlainTextin classDocHtmlPrinter<DocMdPrinter.Config>
-
renderHardLineBreak
protected void renderHardLineBreak(@NotNull @NotNull Cursor cursor, EnumSet<StringPrinter.Outer> outer) Description copied from class:StringPrinterThis line break is printed in the resulting document (like .pdf generated from .tex or .md). The default implementation is same asStringPrinter.renderBlockSeparator(org.aya.pretty.backend.string.Cursor, java.util.EnumSet<org.aya.pretty.backend.string.StringPrinter.Outer>). Backends may override this method if the source code line break is different from the printed line break, (like LaTeX use '\\' for new line in the printed document).- Overrides:
renderHardLineBreakin classDocHtmlPrinter<DocMdPrinter.Config>
-
renderHyperLinked
protected void renderHyperLinked(@NotNull @NotNull Cursor cursor, @NotNull Doc.HyperLinked text, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderHyperLinkedin classDocHtmlPrinter<DocMdPrinter.Config>
-
renderImage
protected void renderImage(@NotNull @NotNull Cursor cursor, @NotNull Doc.Image image, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderImagein classDocHtmlPrinter<DocMdPrinter.Config>
-
renderList
protected void renderList(@NotNull @NotNull Cursor cursor, @NotNull Doc.List list, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderListin classDocHtmlPrinter<DocMdPrinter.Config>
-
renderInlineMath
protected void renderInlineMath(@NotNull @NotNull Cursor cursor, @NotNull Doc.InlineMath code, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderInlineMathin classDocHtmlPrinter<DocMdPrinter.Config>
-
renderMathBlock
protected void renderMathBlock(@NotNull @NotNull Cursor cursor, @NotNull Doc.MathBlock block, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderMathBlockin classDocHtmlPrinter<DocMdPrinter.Config>- Implementation Note:
- We don't call
StringPrinter.separateBlockIfNeeded(org.aya.pretty.backend.string.Cursor, java.util.EnumSet<org.aya.pretty.backend.string.StringPrinter.Outer>), as Markdown spec says: any block is surrounded with Paragraphs, which is handled inMdStylist.formatCustom(org.aya.pretty.doc.Style.CustomStyle)by inserting a blank line to generated source code (just likeStringPrinter.separateBlockIfNeeded(org.aya.pretty.backend.string.Cursor, java.util.EnumSet<org.aya.pretty.backend.string.StringPrinter.Outer>)).
-
renderInlineCode
protected void renderInlineCode(@NotNull @NotNull Cursor cursor, @NotNull Doc.InlineCode code, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderInlineCodein classDocHtmlPrinter<DocMdPrinter.Config>
-
renderCodeBlock
protected void renderCodeBlock(@NotNull @NotNull Cursor cursor, @NotNull Doc.CodeBlock block, EnumSet<StringPrinter.Outer> outer) - Overrides:
renderCodeBlockin classDocHtmlPrinter<DocMdPrinter.Config>- Implementation Note:
- We don't call
StringPrinter.separateBlockIfNeeded(org.aya.pretty.backend.string.Cursor, java.util.EnumSet<org.aya.pretty.backend.string.StringPrinter.Outer>), as Markdown spec says: any block is surrounded with Paragraphs, which is handled inMdStylist.formatCustom(org.aya.pretty.doc.Style.CustomStyle)by inserting a blank line to generated source code (just likeStringPrinter.separateBlockIfNeeded(org.aya.pretty.backend.string.Cursor, java.util.EnumSet<org.aya.pretty.backend.string.StringPrinter.Outer>)).
-