@@ -658,6 +658,7 @@ directive' = do
658 body <- option "" $ try $ blanklines >> indentedBlock
658 body <- option "" $ try $ blanklines >> indentedBlock
659 optional blanklines
659 optional blanklines
660 let body' = body ++ "\n\n"
660 let body' = body ++ "\n\n"
661+ name = trim $ fromMaybe "" (lookup "name" fields)
661 imgAttr cl = ("", classes, widthAttr ++ heightAttr)
662 imgAttr cl = ("", classes, widthAttr ++ heightAttr)
663 classes = words $ maybe "" trim (lookup cl fields) ++
664 classes = words $ maybe "" trim (lookup cl fields) ++
@@ -691,7 +692,8 @@ directive' = do
691 "line-block" -> lineBlockDirective body'
692 "line-block" -> lineBlockDirective body'
692 "raw" -> return $ B.rawBlock (trim top) (stripTrailingNewlines body)
693 "raw" -> return $ B.rawBlock (trim top) (stripTrailingNewlines body)
693 "role" -> addNewRole top $ map (second trim) fields
694 "role" -> addNewRole top $ map (second trim) fields
695+ "container" -> B.divWith (name, "container" : words top, []) <$>
694− "container" -> parseFromString' parseBlocks body'
696+ parseFromString' parseBlocks body'
695 "replace" -> B.para <$> -- consumed by substKey
697 "replace" -> B.para <$> -- consumed by substKey
696 parseInlineFromString (trim top)
698 parseInlineFromString (trim top)
697 "unicode" -> B.para <$> -- consumed by substKey
699 "unicode" -> B.para <$> -- consumed by substKey