@@ -413,8 +413,8 @@ isPara _ = False
414-- | Data structure for defining hierarchical Pandoc documents
414-- | Data structure for defining hierarchical Pandoc documents
415data Element = Blk Block
415data Element = Blk Block
416− | Sec Int [Int] String [Inline] [Element]
416+ | Sec Int [Int] Attr [Inline] [Element]
417− -- lvl num ident label contents
417+ -- lvl num attributes label contents
418 deriving (Eq, Read, Show, Typeable, Data)
418 deriving (Eq, Read, Show, Typeable, Data)
420-- | Convert Pandoc inline list to plain text identifier. HTML
420-- | Convert Pandoc inline list to plain text identifier. HTML
@@ -435,7 +435,7 @@ hierarchicalize blocks = S.evalState (hierarchicalizeWithIds blocks) []
436hierarchicalizeWithIds :: [Block] -> S.State [Int] [Element]
436hierarchicalizeWithIds :: [Block] -> S.State [Int] [Element]
437hierarchicalizeWithIds [] = return []
437hierarchicalizeWithIds [] = return []
438−hierarchicalizeWithIds ((Header level (ident,_,_) title'):xs) = do
438+hierarchicalizeWithIds ((Header level attr title'):xs) = do
439 lastnum <- S.get
439 lastnum <- S.get
440 let lastnum' = take level lastnum
440 let lastnum' = take level lastnum
441 let newnum = if length lastnum' >= level
441 let newnum = if length lastnum' >= level
@@ -445,7 +445,7 @@ hierarchicalizeWithIds ((Header level (ident,_,_) title'):xs) = do
445 let (sectionContents, rest) = break (headerLtEq level) xs
445 let (sectionContents, rest) = break (headerLtEq level) xs
446 sectionContents' <- hierarchicalizeWithIds sectionContents
446 sectionContents' <- hierarchicalizeWithIds sectionContents
447 rest' <- hierarchicalizeWithIds rest
447 rest' <- hierarchicalizeWithIds rest
448− return $ Sec level newnum ident title' sectionContents' : rest'
448+ return $ Sec level newnum attr title' sectionContents' : rest'
449hierarchicalizeWithIds (x:rest) = do
449hierarchicalizeWithIds (x:rest) = do
450 rest' <- hierarchicalizeWithIds rest
450 rest' <- hierarchicalizeWithIds rest
451 return $ (Blk x) : rest'
451 return $ (Blk x) : rest'