diff options
author | Felix Mulder <felix.mulder@gmail.com> | 2017-01-24 17:35:53 +0100 |
---|---|---|
committer | Felix Mulder <felix.mulder@gmail.com> | 2017-01-31 14:35:42 +0100 |
commit | 866e364dde76aa5df42548bf72d2f5c4d200535b (patch) | |
tree | a0fe7c27c533e293255471aa6f34b272ef61e9c1 /doc-tool | |
parent | e59241a2852eab53bdc0e22ea5b2dd394b231913 (diff) | |
download | dotty-866e364dde76aa5df42548bf72d2f5c4d200535b.tar.gz dotty-866e364dde76aa5df42548bf72d2f5c4d200535b.tar.bz2 dotty-866e364dde76aa5df42548bf72d2f5c4d200535b.zip |
Document dottydoc capabilities, add anchored headers
Diffstat (limited to 'doc-tool')
-rw-r--r-- | doc-tool/resources/_layouts/api-page.html | 2 | ||||
-rw-r--r-- | doc-tool/resources/_layouts/blog-page.html (renamed from doc-tool/resources/_layouts/blog.html) | 2 | ||||
-rw-r--r-- | doc-tool/resources/_layouts/doc-page.html | 2 | ||||
-rw-r--r-- | doc-tool/resources/_layouts/sidebar.html (renamed from doc-tool/resources/_layouts/doc.html) | 0 | ||||
-rw-r--r-- | doc-tool/resources/css/dottydoc.css | 51 | ||||
-rw-r--r-- | doc-tool/src/dotty/tools/dottydoc/staticsite/BlogPost.scala | 11 | ||||
-rw-r--r-- | doc-tool/src/dotty/tools/dottydoc/staticsite/Site.scala | 6 | ||||
-rw-r--r-- | doc-tool/test/dotty/tools/dottydoc/staticsite/SiteTests.scala | 2 |
8 files changed, 66 insertions, 10 deletions
diff --git a/doc-tool/resources/_layouts/api-page.html b/doc-tool/resources/_layouts/api-page.html index 0e39f9d91..f45a8bab4 100644 --- a/doc-tool/resources/_layouts/api-page.html +++ b/doc-tool/resources/_layouts/api-page.html @@ -1,5 +1,5 @@ --- -layout: doc +layout: sidebar extraCSS: - css/api-page.css --- diff --git a/doc-tool/resources/_layouts/blog.html b/doc-tool/resources/_layouts/blog-page.html index d7a08414a..b99a16b9c 100644 --- a/doc-tool/resources/_layouts/blog.html +++ b/doc-tool/resources/_layouts/blog-page.html @@ -1,5 +1,5 @@ --- -layout: doc +layout: sidebar --- <div id="post-title"> diff --git a/doc-tool/resources/_layouts/doc-page.html b/doc-tool/resources/_layouts/doc-page.html index 876e90c95..14220aef7 100644 --- a/doc-tool/resources/_layouts/doc-page.html +++ b/doc-tool/resources/_layouts/doc-page.html @@ -1,5 +1,5 @@ --- -layout: doc +layout: sidebar --- <h1 id="doc-page-title">{{ page.title }}</h1> diff --git a/doc-tool/resources/_layouts/doc.html b/doc-tool/resources/_layouts/sidebar.html index b3947c884..b3947c884 100644 --- a/doc-tool/resources/_layouts/doc.html +++ b/doc-tool/resources/_layouts/sidebar.html diff --git a/doc-tool/resources/css/dottydoc.css b/doc-tool/resources/css/dottydoc.css index aa197de07..54f74b66f 100644 --- a/doc-tool/resources/css/dottydoc.css +++ b/doc-tool/resources/css/dottydoc.css @@ -26,6 +26,55 @@ div.index-wrapper { overflow-x: hidden; } +div#doc-page-container > h1 { + border-bottom: 1px solid #eee; + padding-bottom: 0.3em; +} + +div#doc-page-container > h1 { + margin: 3rem 0 0.5rem 0; +} + +div#doc-page-container > h3 { + font-size: 1.5rem; +} + +div#doc-page-container > h4 { + font-size: 1.25rem; +} + +div#doc-page-container > h5 { + font-size: 1rem; +} + +div#doc-page-container > h1 > a, +div#doc-page-container > h2 > a, +div#doc-page-container > h3 > a, +div#doc-page-container > h4 > a, +div#doc-page-container > h5 > a, +div#doc-page-container > h6 > a { + text-decoration: none; + color: #373a3c; +} + +div#doc-page-container > h1 > a:hover, +div#doc-page-container > h2 > a:hover, +div#doc-page-container > h3 > a:hover, +div#doc-page-container > h4 > a:hover, +div#doc-page-container > h5 > a:hover, +div#doc-page-container > h6 > a:hover { + text-decoration: underline; +} + +div#doc-page-container > h1 > a:focus, +div#doc-page-container > h2 > a:focus, +div#doc-page-container > h3 > a:focus, +div#doc-page-container > h4 > a:focus, +div#doc-page-container > h5 > a:focus, +div#doc-page-container > h6 > a:focus { + outline: none; +} + div#content-body { border-left: 1px solid #e0e0e0; box-shadow: -3px 0px 5px -2px rgba(0,0,0,0.14); @@ -232,7 +281,7 @@ div#doc-page-container { } div#doc-page-container > p + h1 { - margin-bottom: 40px; + margin-bottom: 20px; } div#post-footer > img#author-image { diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/BlogPost.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/BlogPost.scala index 4683ed5f9..f68157e40 100644 --- a/doc-tool/src/dotty/tools/dottydoc/staticsite/BlogPost.scala +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/BlogPost.scala @@ -9,17 +9,22 @@ import dotc.config.Printers.dottydoc import MapOperations._ +/** + * A `BlogPost` represents the parsed posts from `./blog/_posts/` + * each post must be named according to the format + * `YYYY-MM-DD-title.{md,html}` + */ class BlogPost( val title: String, val url: String, val date: String, val content: String, firstParagraph: String, - val excerptSep: Option[String], + val excerpt_separator: Option[String], val categories: JList[String] ) { import scala.collection.JavaConverters._ - lazy val excerpt: String = excerptSep match { + lazy val excerpt: String = excerpt_separator match { case Some(str) => content.split(str).head case _ => firstParagraph } @@ -29,7 +34,7 @@ class BlogPost( "date" -> date, "url" -> url, "excerpt" -> excerpt, - "excerpt_separator" -> excerptSep.getOrElse(""), + "excerpt_separator" -> excerpt_separator.getOrElse(""), "content" -> content, "categories" -> categories ).asJava diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/Site.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/Site.scala index ace52725d..895668df2 100644 --- a/doc-tool/src/dotty/tools/dottydoc/staticsite/Site.scala +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/Site.scala @@ -17,6 +17,7 @@ import com.vladsch.flexmark.ext.gfm.strikethrough.StrikethroughExtension import com.vladsch.flexmark.ext.gfm.tasklist.TaskListExtension import com.vladsch.flexmark.ext.emoji.EmojiExtension import com.vladsch.flexmark.ext.autolink.AutolinkExtension +import com.vladsch.flexmark.ext.anchorlink.AnchorLinkExtension import com.vladsch.flexmark.ext.front.matter.YamlFrontMatterExtension import com.vladsch.flexmark.util.options.{ DataHolder, MutableDataSet } @@ -292,10 +293,10 @@ case class Site(val root: JFile, val projectTitle: String, val documentation: Ma val defaultLayouts: Map[String, String] = Map( "main" -> "/_layouts/main.html", - "doc" -> "/_layouts/doc.html", + "sidebar" -> "/_layouts/sidebar.html", "doc-page" -> "/_layouts/doc-page.html", "api-page" -> "/_layouts/api-page.html", - "blog" -> "/_layouts/blog.html", + "blog-page" -> "/_layouts/blog-page.html", "index" -> "/_layouts/index.html" ).mapValues(getResource) @@ -362,6 +363,7 @@ object Site { TablesExtension.create(), TaskListExtension.create(), AutolinkExtension.create(), + AnchorLinkExtension.create(), EmojiExtension.create(), YamlFrontMatterExtension.create(), StrikethroughExtension.create() diff --git a/doc-tool/test/dotty/tools/dottydoc/staticsite/SiteTests.scala b/doc-tool/test/dotty/tools/dottydoc/staticsite/SiteTests.scala index bb24eb9fb..ba431a5c9 100644 --- a/doc-tool/test/dotty/tools/dottydoc/staticsite/SiteTests.scala +++ b/doc-tool/test/dotty/tools/dottydoc/staticsite/SiteTests.scala @@ -19,7 +19,7 @@ class SiteTests extends DottyDocTest { assert(site.root.exists && site.root.isDirectory, s"'${site.root.getName}' is not a directory") - val expectedLayouts = Set("main", "index", "blog", "doc", "doc-page", "api-page") + val expectedLayouts = Set("main", "index", "sidebar", "blog-page", "doc-page", "api-page") assert(site.layouts.keys == expectedLayouts, s"Incorrect layouts in: ${site.layouts.keys}, expected: $expectedLayouts") } |