@@ -174,19 +174,20 @@ parseFormatSpec = parse formatSpec ""
174174 '-' -> Set.delete ext
175175 _ -> Set.insert ext
176176
177+-- auxiliary function for readers:
178+markdown :: ReaderOptions -> String -> IO Pandoc
179+markdown o s = do
180+ let (doc, warnings) = readMarkdownWithWarnings o s
181+ mapM_ warn warnings
182+ return doc
183+
177184-- | Association list of formats and readers.
178185readers :: [(String, ReaderOptions -> String -> IO Pandoc)]
179186readers = [("native" , \_ s -> return $ readNative s)
180187 ,("json" , \_ s -> return $ decodeJSON s)
181− ,("markdown_strict" , \o s -> do
182− let (doc, warnings) = readMarkdownWithWarnings
183− o{ readerExtensions = strictExtensions } s
184− mapM_ warn warnings
185− return doc)
186− ,("markdown" , \o s -> do
187− let (doc, warnings) = readMarkdownWithWarnings o s
188− mapM_ warn warnings
189− return doc)
188+ ,("markdown" , markdown)
189+ ,("markdown_strict" , markdown)
190+ ,("markdown_phpextra" , markdown)
190191 ,("rst" , \o s -> return $ readRST o s)
191192 ,("mediawiki" , \o s -> return $ readMediaWiki o s)
192193 ,("docbook" , \o s -> return $ readDocBook o s)
@@ -245,6 +246,7 @@ writers = [
245246
246247getDefaultExtensions :: String -> Set Extension
247248getDefaultExtensions "markdown_strict" = strictExtensions
249+getDefaultExtensions "markdown_phpextra" = phpMarkdownExtraExtensions
248250getDefaultExtensions _ = pandocExtensions
249251
250252-- | Retrieve reader based on formatSpec (format+extensions).