@@ -219,10 +219,6 @@ parseMarkdown = do
219219 $ B.setDate (runF date st)
220220 $ B.doc $ runF blocks st
221221
222−--
223−-- initial pass for references and notes
224−--
225−
226222referenceKey :: Parser [Char] ParserState (F Blocks)
227223referenceKey = try $ do
228224 skipNonindentSpaces
@@ -256,6 +252,20 @@ referenceTitle = try $ do
256252 notFollowedBy (noneOf ")\n")))
257253 return $ fromEntities tit
258254
255+-- | PHP Markdown Extra style abbreviation key. Currently
256+-- we just skip them, since Pandoc doesn't have an element for
257+-- an abbreviation.
258+abbrevKey :: Parser [Char] ParserState (F Blocks)
259+abbrevKey = do
260+ guardEnabled Ext_abbreviations
261+ try $ do
262+ char '*'
263+ reference
264+ char ':'
265+ skipMany (satisfy (/= '\n'))
266+ blanklines
267+ return $ return mempty
268+
259269noteMarker :: Parser [Char] ParserState String
260270noteMarker = string "[^" >> many1Till (satisfy $ not . isBlank) (char ']')
261271
@@ -311,6 +321,7 @@ block = choice [ codeBlockDelimited
311321 , definitionList
312322 , noteBlock
313323 , referenceKey
324+ , abbrevKey
314325 , para
315326 , plain
316327 ] <?> "block"