diff options
author | lihaoyi <haoyi.sg@gmail.com> | 2014-11-23 16:47:15 -0800 |
---|---|---|
committer | lihaoyi <haoyi.sg@gmail.com> | 2014-11-23 16:47:15 -0800 |
commit | 3547ab4bd7e84818242d15ba813d9312d2456b09 (patch) | |
tree | 9595d4ca1781d60d93caa7ba947c745837a33f91 /book/src/main/scala | |
parent | 1c4cb72b209ab11c9e52c3bb490adf759f17fd0c (diff) | |
download | hands-on-scala-js-3547ab4bd7e84818242d15ba813d9312d2456b09.tar.gz hands-on-scala-js-3547ab4bd7e84818242d15ba813d9312d2456b09.tar.bz2 hands-on-scala-js-3547ab4bd7e84818242d15ba813d9312d2456b09.zip |
Lots of changes
Diffstat (limited to 'book/src/main/scala')
-rw-r--r-- | book/src/main/scala/book/BookData.scala | 17 | ||||
-rw-r--r-- | book/src/main/scala/book/Utils.scala | 17 |
2 files changed, 30 insertions, 4 deletions
diff --git a/book/src/main/scala/book/BookData.scala b/book/src/main/scala/book/BookData.scala index 2f92c6c..d927b5f 100644 --- a/book/src/main/scala/book/BookData.scala +++ b/book/src/main/scala/book/BookData.scala @@ -1,7 +1,8 @@ package book import acyclic.file - +import scalatags.Text.TypedTag +import scalatags.Text.all._ object BookData { lazy val javaAPIs = { import java.io.File @@ -28,5 +29,17 @@ object BookData { filename -> docpath } } + var counter = 0 + def example(t: TypedTag[String], main: String) = { + val tagId = "example"+counter + counter += 1 + Seq( + t(id:=tagId, display.block), + script(s"$main(document.getElementById('$tagId'))") + ) + } + def split = div(cls:="pure-g") + def more = div(cls:="pure-u-1 pure-u-md-13-24") + def less = div(cls:="pure-u-1 pure-u-md-11-24") + def half = div(cls:="pure-u-1 pure-u-md-1-2") } - diff --git a/book/src/main/scala/book/Utils.scala b/book/src/main/scala/book/Utils.scala index 6770e31..171d0ad 100644 --- a/book/src/main/scala/book/Utils.scala +++ b/book/src/main/scala/book/Utils.scala @@ -171,14 +171,27 @@ object hl{ val whitespace = indent(lines(startLine)) val endLine = lines.indexWhere( line => line.contains(end) || (indent(line) < whitespace && line.trim != ""), - startLine + startLine + 1 ) val sliced = if (endLine == -1) lines.drop(startLine) else lines.slice(startLine, endLine) + val blob = sliced.map(_.drop(whitespace)).mkString("\n") - pre(code(cls:=lang + " highlight-me", blob)) + pre( + code(cls:=lang + " highlight-me", blob), + a( + cls:="header-link", + i(cls:="fa fa-link "), + position.absolute, + right:="0.5em", + bottom:="0.5em", + display.block, + fontSize:="24px", + href:="#" + ) + ) } }
\ No newline at end of file |