summaryrefslogtreecommitdiff
path: root/book/src/main/scala/book/Book.scala
diff options
context:
space:
mode:
authorLi Haoyi <haoyi@dropbox.com>2014-10-26 12:28:32 -0700
committerLi Haoyi <haoyi@dropbox.com>2014-10-26 12:28:32 -0700
commitab668dead5c3123eb9fb26b9e94c6eccabaf6ab7 (patch)
treef6f538f84db0cb10076c26d9ae6ed16a5de436ba /book/src/main/scala/book/Book.scala
downloadhands-on-scala-js-ab668dead5c3123eb9fb26b9e94c6eccabaf6ab7.tar.gz
hands-on-scala-js-ab668dead5c3123eb9fb26b9e94c6eccabaf6ab7.tar.bz2
hands-on-scala-js-ab668dead5c3123eb9fb26b9e94c6eccabaf6ab7.zip
first commit
Diffstat (limited to 'book/src/main/scala/book/Book.scala')
-rw-r--r--book/src/main/scala/book/Book.scala43
1 files changed, 43 insertions, 0 deletions
diff --git a/book/src/main/scala/book/Book.scala b/book/src/main/scala/book/Book.scala
new file mode 100644
index 0000000..e509716
--- /dev/null
+++ b/book/src/main/scala/book/Book.scala
@@ -0,0 +1,43 @@
+package book
+
+import twist._
+
+import scalatags.Text.tags2
+import scala.collection.mutable
+import scalatags.Text.all._
+
+/**
+ * Created by haoyi on 10/26/14.
+ */
+object Book {
+
+ import Utils.sect
+
+ val intro = twf("book/intro.tw")
+ val contentBar = {
+ def rec(current: Node, depth: Int): Frag = {
+ div(
+ marginLeft := s"${depth * 5}px",
+ a(current.name, href:="#"+Utils.munge(current.name)),
+ current.children.map(
+ rec(_, depth + 1)
+ )
+ )
+ }
+ // @li(cls:="menu-item-divided pure-menu-selected")
+ ul(rec(Utils.structure, 0))
+ }
+ println(contentBar)
+
+ val txt = twf("book/index.tw").render
+
+ object highlight{
+ def highlight(snippet: Seq[String], lang: String) = {
+ pre(code(cls:=lang, snippet.mkString))
+ }
+
+ def javascript(code: String*) = highlight(code, "javascript")
+ def scala(code: String*) = highlight(code, "scala")
+ def bash(code: String*) = highlight(code, "bash")
+ }
+}