diff options
Diffstat (limited to 'doc-tool/src/dotty/tools/dottydoc/staticsite')
-rw-r--r-- | doc-tool/src/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor.scala | 19 | ||||
-rw-r--r-- | doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor.scala new file mode 100644 index 000000000..5aeffd0d5 --- /dev/null +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor.scala @@ -0,0 +1,19 @@ +package dotty.tools +package dottydoc +package staticsite + +import com.vladsch.flexmark.ast._ +import com.vladsch.flexmark.util.sequence.CharSubSequence + +object MarkdownCodeBlockVisitor { + def apply(node: Node): Unit = + new NodeVisitor( + new VisitHandler(classOf[FencedCodeBlock], new Visitor[FencedCodeBlock] { + override def visit(node: FencedCodeBlock): Unit = { + if (node.getOpeningMarker.length == 3) + node.setOpeningMarker(CharSubSequence.of("```scala")) + } + }) + ) + .visit(node) +} diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala index b637caf38..f250cbb01 100644 --- a/doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala @@ -126,6 +126,7 @@ class MarkdownPage(fileContents: => String, val params: Map[String, AnyRef], val val md = Parser.builder(Site.markdownOptions).build.parse(_html) // fix markdown linking MarkdownLinkVisitor(md, docs, params) + MarkdownCodeBlockVisitor(md) _html = HtmlRenderer .builder(Site.markdownOptions) .escapeHtml(false) |