module Text.HTML.Moe.DSL.Markdown
(
(#)
, (##)
, (###)
, (>>)
, (*)
, (***)
, (!)
, (<>)
, o
, block
) where
import Text.HTML.Moe
import Text.HTML.Moe.Type (MoeUnit)
import MPS.Light (())
import Prelude hiding ((), (/), (>>), (*))
single_line, r :: (MoeUnit -> MoeUnit) -> String -> MoeUnit
single_line f = f . str
r = single_line
(#) :: String -> MoeUnit
(##) :: String -> MoeUnit
(###) :: String -> MoeUnit
(>>) :: String -> MoeUnit
(*) :: String -> MoeUnit
o :: String -> MoeUnit
block :: String -> MoeUnit
(***) :: MoeUnit
(!) :: String -> String -> MoeUnit
(<>) :: String -> String -> MoeUnit
(#) = r h1'
(##) = r h2'
(###) = r h3'
(>>) = r blockquote'
(*) = r ul'
o = r li'
block = pre' . code' . str
(***) = hr' (/)
(!) x y = img [src y, alt x] (/)
(<>) x y = a [href y] str x