aboutsummaryrefslogtreecommitdiff
path: root/doc-tool
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2017-01-31 17:33:27 +0100
committerFelix Mulder <felix.mulder@gmail.com>2017-01-31 17:43:55 +0100
commitdcaa78cbce91eefe66f4cbcfc2c651a485d1a0da (patch)
tree8a7fb93afa1df367f4b8eda08fd8b4f690a6367b /doc-tool
parent7501f8e03b66c7840c98893dcb00ee2a1fbd5049 (diff)
downloaddotty-dcaa78cbce91eefe66f4cbcfc2c651a485d1a0da.tar.gz
dotty-dcaa78cbce91eefe66f4cbcfc2c651a485d1a0da.tar.bz2
dotty-dcaa78cbce91eefe66f4cbcfc2c651a485d1a0da.zip
Make naked codeblocks default to Scala
Diffstat (limited to 'doc-tool')
-rw-r--r--doc-tool/resources/css/dottydoc.css18
-rw-r--r--doc-tool/src/dotty/tools/dottydoc/core/MiniPhaseTransform.scala2
-rw-r--r--doc-tool/src/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor.scala19
-rw-r--r--doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala1
4 files changed, 39 insertions, 1 deletions
diff --git a/doc-tool/resources/css/dottydoc.css b/doc-tool/resources/css/dottydoc.css
index 69089b2e4..7e7c501bf 100644
--- a/doc-tool/resources/css/dottydoc.css
+++ b/doc-tool/resources/css/dottydoc.css
@@ -47,6 +47,12 @@ div#doc-page-container > h5 {
font-size: 1rem;
}
+div#entity-container h1 > a,
+div#entity-container h2 > a,
+div#entity-container h3 > a,
+div#entity-container h4 > a,
+div#entity-container h5 > a,
+div#entity-container h6 > a,
div#doc-page-container > h1 > a,
div#doc-page-container > h2 > a,
div#doc-page-container > h3 > a,
@@ -57,6 +63,12 @@ div#doc-page-container > h6 > a {
color: #373a3c;
}
+div#entity-container h1 > a:hover,
+div#entity-container h2 > a:hover,
+div#entity-container h3 > a:hover,
+div#entity-container h4 > a:hover,
+div#entity-container h5 > a:hover,
+div#entity-container h6 > a:hover,
div#doc-page-container > h1 > a:hover,
div#doc-page-container > h2 > a:hover,
div#doc-page-container > h3 > a:hover,
@@ -66,6 +78,12 @@ div#doc-page-container > h6 > a:hover {
text-decoration: underline;
}
+div#entity-container h1 > a:focus,
+div#entity-container h2 > a:focus,
+div#entity-container h3 > a:focus,
+div#entity-container h4 > a:focus,
+div#entity-container h5 > a:focus,
+div#entity-container h6 > a:focus,
div#doc-page-container > h1 > a:focus,
div#doc-page-container > h2 > a:focus,
div#doc-page-container > h3 > a:focus,
diff --git a/doc-tool/src/dotty/tools/dottydoc/core/MiniPhaseTransform.scala b/doc-tool/src/dotty/tools/dottydoc/core/MiniPhaseTransform.scala
index 4980cad92..1f30e089d 100644
--- a/doc-tool/src/dotty/tools/dottydoc/core/MiniPhaseTransform.scala
+++ b/doc-tool/src/dotty/tools/dottydoc/core/MiniPhaseTransform.scala
@@ -22,7 +22,7 @@ object transform {
*
* Create a `DocMiniPhase` which overrides the relevant method:
*
- * ```scala
+ * ```
* override def transformDef(implicit ctx: Context) = {
* case x if shouldTransform(x) => x.copy(newValue = ...)
* }
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)