cmark-0.5.6.3: Fast, accurate CommonMark (Markdown) parser and renderer

Safe HaskellNone
LanguageHaskell2010

CMark

Synopsis

Documentation

commonmarkToHtml :: [CMarkOption] -> Text -> Text Source #

Convert CommonMark formatted text to Html, using cmark's built-in renderer.

commonmarkToXml :: [CMarkOption] -> Text -> Text Source #

Convert CommonMark formatted text to CommonMark XML, using cmark's built-in renderer.

commonmarkToMan :: [CMarkOption] -> Maybe Int -> Text -> Text Source #

Convert CommonMark formatted text to groff man, using cmark's built-in renderer.

commonmarkToLaTeX :: [CMarkOption] -> Maybe Int -> Text -> Text Source #

Convert CommonMark formatted text to latex, using cmark's built-in renderer.

commonmarkToNode :: [CMarkOption] -> Text -> Node Source #

Convert CommonMark formatted text to a structured Node tree, which can be transformed or rendered using Haskell code.

nodeToMan :: [CMarkOption] -> Maybe Int -> Node -> Text Source #

nodeToLaTeX :: [CMarkOption] -> Maybe Int -> Node -> Text Source #

nodeToCommonmark :: [CMarkOption] -> Maybe Int -> Node -> Text Source #

optSourcePos :: CMarkOption Source #

Include a data-sourcepos attribute on block elements.

optNormalize :: CMarkOption Source #

Normalize the document by consolidating adjacent text nodes.

optHardBreaks :: CMarkOption Source #

Render softbreak elements as hard line breaks.

optSmart :: CMarkOption Source #

Convert straight quotes to curly, --- to em-dash, -- to en-dash.

optSafe :: CMarkOption Source #

Suppress rendering of raw HTML and potentially dangerous URLs in links and images.

data Node Source #

Constructors

Node (Maybe PosInfo) NodeType [Node] 
Instances
Eq Node Source # 
Instance details

Defined in CMark

Methods

(==) :: Node -> Node -> Bool

(/=) :: Node -> Node -> Bool

Data Node Source # 
Instance details

Defined in CMark

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Node -> c Node

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Node

toConstr :: Node -> Constr

dataTypeOf :: Node -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Node)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Node)

gmapT :: (forall b. Data b => b -> b) -> Node -> Node

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Node -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Node -> r

gmapQ :: (forall d. Data d => d -> u) -> Node -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Node -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Node -> m Node

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Node -> m Node

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Node -> m Node

Ord Node Source # 
Instance details

Defined in CMark

Methods

compare :: Node -> Node -> Ordering

(<) :: Node -> Node -> Bool

(<=) :: Node -> Node -> Bool

(>) :: Node -> Node -> Bool

(>=) :: Node -> Node -> Bool

max :: Node -> Node -> Node

min :: Node -> Node -> Node

Read Node Source # 
Instance details

Defined in CMark

Methods

readsPrec :: Int -> ReadS Node

readList :: ReadS [Node]

readPrec :: ReadPrec Node

readListPrec :: ReadPrec [Node]

Show Node Source # 
Instance details

Defined in CMark

Methods

showsPrec :: Int -> Node -> ShowS

show :: Node -> String

showList :: [Node] -> ShowS

Generic Node Source # 
Instance details

Defined in CMark

Associated Types

type Rep Node :: Type -> Type

Methods

from :: Node -> Rep Node x

to :: Rep Node x -> Node

type Rep Node Source # 
Instance details

Defined in CMark

type Rep Node = D1 (MetaData "Node" "CMark" "cmark-0.5.6.3-BxFe0cY7DpD5Yq1pVcjiKr" False) (C1 (MetaCons "Node" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe PosInfo)) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 NodeType) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Node]))))

data NodeType Source #

Instances
Eq NodeType Source # 
Instance details

Defined in CMark

Methods

(==) :: NodeType -> NodeType -> Bool

(/=) :: NodeType -> NodeType -> Bool

Data NodeType Source # 
Instance details

Defined in CMark

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NodeType -> c NodeType

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NodeType

toConstr :: NodeType -> Constr

dataTypeOf :: NodeType -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NodeType)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NodeType)

gmapT :: (forall b. Data b => b -> b) -> NodeType -> NodeType

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NodeType -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NodeType -> r

gmapQ :: (forall d. Data d => d -> u) -> NodeType -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> NodeType -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> NodeType -> m NodeType

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NodeType -> m NodeType

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NodeType -> m NodeType

Ord NodeType Source # 
Instance details

Defined in CMark

Methods

compare :: NodeType -> NodeType -> Ordering

(<) :: NodeType -> NodeType -> Bool

(<=) :: NodeType -> NodeType -> Bool

(>) :: NodeType -> NodeType -> Bool

(>=) :: NodeType -> NodeType -> Bool

max :: NodeType -> NodeType -> NodeType

min :: NodeType -> NodeType -> NodeType

Read NodeType Source # 
Instance details

Defined in CMark

Methods

readsPrec :: Int -> ReadS NodeType

readList :: ReadS [NodeType]

readPrec :: ReadPrec NodeType

readListPrec :: ReadPrec [NodeType]

Show NodeType Source # 
Instance details

Defined in CMark

Methods

showsPrec :: Int -> NodeType -> ShowS

show :: NodeType -> String

showList :: [NodeType] -> ShowS

Generic NodeType Source # 
Instance details

Defined in CMark

Associated Types

type Rep NodeType :: Type -> Type

Methods

from :: NodeType -> Rep NodeType x

to :: Rep NodeType x -> NodeType

type Rep NodeType Source # 
Instance details

Defined in CMark

type Rep NodeType

data PosInfo Source #

Constructors

PosInfo 

Fields

Instances
Eq PosInfo Source # 
Instance details

Defined in CMark

Methods

(==) :: PosInfo -> PosInfo -> Bool

(/=) :: PosInfo -> PosInfo -> Bool

Data PosInfo Source # 
Instance details

Defined in CMark

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PosInfo -> c PosInfo

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PosInfo

toConstr :: PosInfo -> Constr

dataTypeOf :: PosInfo -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PosInfo)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PosInfo)

gmapT :: (forall b. Data b => b -> b) -> PosInfo -> PosInfo

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PosInfo -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PosInfo -> r

gmapQ :: (forall d. Data d => d -> u) -> PosInfo -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> PosInfo -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PosInfo -> m PosInfo

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PosInfo -> m PosInfo

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PosInfo -> m PosInfo

Ord PosInfo Source # 
Instance details

Defined in CMark

Methods

compare :: PosInfo -> PosInfo -> Ordering

(<) :: PosInfo -> PosInfo -> Bool

(<=) :: PosInfo -> PosInfo -> Bool

(>) :: PosInfo -> PosInfo -> Bool

(>=) :: PosInfo -> PosInfo -> Bool

max :: PosInfo -> PosInfo -> PosInfo

min :: PosInfo -> PosInfo -> PosInfo

Read PosInfo Source # 
Instance details

Defined in CMark

Methods

readsPrec :: Int -> ReadS PosInfo

readList :: ReadS [PosInfo]

readPrec :: ReadPrec PosInfo

readListPrec :: ReadPrec [PosInfo]

Show PosInfo Source # 
Instance details

Defined in CMark

Methods

showsPrec :: Int -> PosInfo -> ShowS

show :: PosInfo -> String

showList :: [PosInfo] -> ShowS

Generic PosInfo Source # 
Instance details

Defined in CMark

Associated Types

type Rep PosInfo :: Type -> Type

Methods

from :: PosInfo -> Rep PosInfo x

to :: Rep PosInfo x -> PosInfo

type Rep PosInfo Source # 
Instance details

Defined in CMark

type Rep PosInfo = D1 (MetaData "PosInfo" "CMark" "cmark-0.5.6.3-BxFe0cY7DpD5Yq1pVcjiKr" False) (C1 (MetaCons "PosInfo" PrefixI True) ((S1 (MetaSel (Just "startLine") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int) :*: S1 (MetaSel (Just "startColumn") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)) :*: (S1 (MetaSel (Just "endLine") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int) :*: S1 (MetaSel (Just "endColumn") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int))))

data DelimType Source #

Constructors

PERIOD_DELIM 
PAREN_DELIM 
Instances
Eq DelimType Source # 
Instance details

Defined in CMark

Methods

(==) :: DelimType -> DelimType -> Bool

(/=) :: DelimType -> DelimType -> Bool

Data DelimType Source # 
Instance details

Defined in CMark

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DelimType -> c DelimType

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DelimType

toConstr :: DelimType -> Constr

dataTypeOf :: DelimType -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DelimType)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DelimType)

gmapT :: (forall b. Data b => b -> b) -> DelimType -> DelimType

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DelimType -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DelimType -> r

gmapQ :: (forall d. Data d => d -> u) -> DelimType -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> DelimType -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DelimType -> m DelimType

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DelimType -> m DelimType

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DelimType -> m DelimType

Ord DelimType Source # 
Instance details

Defined in CMark

Methods

compare :: DelimType -> DelimType -> Ordering

(<) :: DelimType -> DelimType -> Bool

(<=) :: DelimType -> DelimType -> Bool

(>) :: DelimType -> DelimType -> Bool

(>=) :: DelimType -> DelimType -> Bool

max :: DelimType -> DelimType -> DelimType

min :: DelimType -> DelimType -> DelimType

Read DelimType Source # 
Instance details

Defined in CMark

Methods

readsPrec :: Int -> ReadS DelimType

readList :: ReadS [DelimType]

readPrec :: ReadPrec DelimType

readListPrec :: ReadPrec [DelimType]

Show DelimType Source # 
Instance details

Defined in CMark

Methods

showsPrec :: Int -> DelimType -> ShowS

show :: DelimType -> String

showList :: [DelimType] -> ShowS

Generic DelimType Source # 
Instance details

Defined in CMark

Associated Types

type Rep DelimType :: Type -> Type

Methods

from :: DelimType -> Rep DelimType x

to :: Rep DelimType x -> DelimType

type Rep DelimType Source # 
Instance details

Defined in CMark

type Rep DelimType = D1 (MetaData "DelimType" "CMark" "cmark-0.5.6.3-BxFe0cY7DpD5Yq1pVcjiKr" False) (C1 (MetaCons "PERIOD_DELIM" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "PAREN_DELIM" PrefixI False) (U1 :: Type -> Type))

data ListType Source #

Constructors

BULLET_LIST 
ORDERED_LIST 
Instances
Eq ListType Source # 
Instance details

Defined in CMark

Methods

(==) :: ListType -> ListType -> Bool

(/=) :: ListType -> ListType -> Bool

Data ListType Source # 
Instance details

Defined in CMark

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ListType -> c ListType

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ListType

toConstr :: ListType -> Constr

dataTypeOf :: ListType -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ListType)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ListType)

gmapT :: (forall b. Data b => b -> b) -> ListType -> ListType

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ListType -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ListType -> r

gmapQ :: (forall d. Data d => d -> u) -> ListType -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> ListType -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ListType -> m ListType

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ListType -> m ListType

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ListType -> m ListType

Ord ListType Source # 
Instance details

Defined in CMark

Methods

compare :: ListType -> ListType -> Ordering

(<) :: ListType -> ListType -> Bool

(<=) :: ListType -> ListType -> Bool

(>) :: ListType -> ListType -> Bool

(>=) :: ListType -> ListType -> Bool

max :: ListType -> ListType -> ListType

min :: ListType -> ListType -> ListType

Read ListType Source # 
Instance details

Defined in CMark

Methods

readsPrec :: Int -> ReadS ListType

readList :: ReadS [ListType]

readPrec :: ReadPrec ListType

readListPrec :: ReadPrec [ListType]

Show ListType Source # 
Instance details

Defined in CMark

Methods

showsPrec :: Int -> ListType -> ShowS

show :: ListType -> String

showList :: [ListType] -> ShowS

Generic ListType Source # 
Instance details

Defined in CMark

Associated Types

type Rep ListType :: Type -> Type

Methods

from :: ListType -> Rep ListType x

to :: Rep ListType x -> ListType

type Rep ListType Source # 
Instance details

Defined in CMark

type Rep ListType = D1 (MetaData "ListType" "CMark" "cmark-0.5.6.3-BxFe0cY7DpD5Yq1pVcjiKr" False) (C1 (MetaCons "BULLET_LIST" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "ORDERED_LIST" PrefixI False) (U1 :: Type -> Type))

data ListAttributes Source #

Constructors

ListAttributes 

Fields

Instances
Eq ListAttributes Source # 
Instance details

Defined in CMark

Data ListAttributes Source # 
Instance details

Defined in CMark

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ListAttributes -> c ListAttributes

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ListAttributes

toConstr :: ListAttributes -> Constr

dataTypeOf :: ListAttributes -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ListAttributes)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ListAttributes)

gmapT :: (forall b. Data b => b -> b) -> ListAttributes -> ListAttributes

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ListAttributes -> r

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ListAttributes -> r

gmapQ :: (forall d. Data d => d -> u) -> ListAttributes -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> ListAttributes -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ListAttributes -> m ListAttributes

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ListAttributes -> m ListAttributes

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ListAttributes -> m ListAttributes

Ord ListAttributes Source # 
Instance details

Defined in CMark

Read ListAttributes Source # 
Instance details

Defined in CMark

Methods

readsPrec :: Int -> ReadS ListAttributes

readList :: ReadS [ListAttributes]

readPrec :: ReadPrec ListAttributes

readListPrec :: ReadPrec [ListAttributes]

Show ListAttributes Source # 
Instance details

Defined in CMark

Methods

showsPrec :: Int -> ListAttributes -> ShowS

show :: ListAttributes -> String

showList :: [ListAttributes] -> ShowS

Generic ListAttributes Source # 
Instance details

Defined in CMark

Associated Types

type Rep ListAttributes :: Type -> Type

type Rep ListAttributes Source # 
Instance details

Defined in CMark

type Rep ListAttributes = D1 (MetaData "ListAttributes" "CMark" "cmark-0.5.6.3-BxFe0cY7DpD5Yq1pVcjiKr" False) (C1 (MetaCons "ListAttributes" PrefixI True) ((S1 (MetaSel (Just "listType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ListType) :*: S1 (MetaSel (Just "listTight") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool)) :*: (S1 (MetaSel (Just "listStart") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int) :*: S1 (MetaSel (Just "listDelim") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DelimType))))

type Url = Text Source #

type Title = Text Source #

type Level = Int Source #

type Info = Text Source #