Parser for CSS classes

usingMegaparsec
Aadhavan Srinivasan 3 weeks ago
parent b1b99189c9
commit 0528e813c5

@ -231,6 +231,22 @@ parseSingleNewline = do
[] -> return $ Unit "" [] -> return $ Unit ""
_ -> return SingleNewline _ -> return SingleNewline
parseCssClasses :: Parser [CssClass]
parseCssClasses = do
char '{'
classes <- some parseCssClass
char '}'
return classes
where
parseCssClass :: Parser CssClass
parseCssClass = do
char '.'
let firstLetterParser = char '_' <|> char '-' <|> label "letter" (satisfy isAlpha)
cssClassFirstLetter <- firstLetterParser
cssClass <- many (firstLetterParser <|> label "digit" (satisfy isDigit))
space
return (cssClassFirstLetter : cssClass)
parseImage :: Parser MdToken parseImage :: Parser MdToken
parseImage = do parseImage = do
char '!' char '!'

Loading…
Cancel
Save