module Rakka.Wiki.Interpreter.Base ( baseInterpreters ) where import Rakka.Wiki import Rakka.Wiki.Interpreter import Rakka.Wiki.Interpreter.Base.Image import Rakka.Wiki.Interpreter.Base.Outline baseInterpreters :: [Interpreter] baseInterpreters = [ lineBreakInterp , spanInterp , divInterp , imageInterp , imgFrameInterp , pageNameInterp , outlineInterp ] lineBreakInterp :: Interpreter lineBreakInterp = InlineCommandInterpreter { iciName = "br" , iciInterpret = \ _ (InlineCommand _ attrs _) -> return $ LineBreak attrs } spanInterp :: Interpreter spanInterp = InlineCommandInterpreter { iciName = "span" , iciInterpret = \ _ (InlineCommand _ attrs contents) -> return $ Span attrs contents } divInterp :: Interpreter divInterp = BlockCommandInterpreter { bciName = "div" , bciInterpret = \ _ (BlockCommand _ attrs contents) -> return $ Div attrs contents } pageNameInterp :: Interpreter pageNameInterp = InlineCommandInterpreter { iciName = "pageName" , iciInterpret = \ ctx _ -> return $ Text (ctxPageName ctx) }