From 0b6dc98a0aba0e76567744c00ed6840215ca5d9d Mon Sep 17 00:00:00 2001 From: fiddlosopher Date: Sun, 31 Dec 2006 17:34:06 +0000 Subject: Changed Markdown reader so that the first pass, in which a list of reference keys is made, is much faster. This gets us a big performance boost. git-svn-id: https://pandoc.googlecode.com/svn/trunk@353 788f1e2b-df1e-0410-8736-df70ead52e1b --- src/Text/Pandoc/Readers/Markdown.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/Text/Pandoc/Readers') diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 585f813d7..4d49e1f28 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -163,7 +163,8 @@ parseMarkdown = do (title, author, date) <- option ([],[],"") titleBlock oldState <- getState oldInput <- getInput - parseBlocks -- go through once just to get list of reference keys + -- go through once just to get list of reference keys + manyTill (referenceKey <|> (do{anyLine; return Null})) eof newState <- getState let keysUsed = stateKeysUsed newState setInput oldInput @@ -492,7 +493,7 @@ rawHtmlBlocks = try (do -- referenceKey = try (do - skipSpaces + skipNonindentSpaces label <- reference char labelSep skipSpaces -- cgit v1.2.3