diff options
author | John MacFarlane <jgm@berkeley.edu> | 2014-03-25 15:38:30 -0700 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2014-03-25 15:38:30 -0700 |
commit | 82ddec698e782fef83dcd1b1fba79cd3b698c717 (patch) | |
tree | d207f053b9dd68e60d5ab61c0e792f247b09f024 | |
parent | 6992050161f1bbe8d18d7d78beb3b38a4b69a23e (diff) | |
download | pandoc-82ddec698e782fef83dcd1b1fba79cd3b698c717.tar.gz |
LaTeX reader: Added LPState.
Plan is to use this instead of ParserState in LP.
-rw-r--r-- | src/Text/Pandoc/Readers/LaTeX.hs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Readers/LaTeX.hs b/src/Text/Pandoc/Readers/LaTeX.hs index 8c3dac263..dd94c0ac1 100644 --- a/src/Text/Pandoc/Readers/LaTeX.hs +++ b/src/Text/Pandoc/Readers/LaTeX.hs @@ -43,6 +43,7 @@ import Text.Pandoc.Parsing hiding ((<|>), many, optional, space, import qualified Text.Pandoc.UTF8 as UTF8 import Data.Char ( chr, ord ) import Control.Monad +import Data.Default import Text.Pandoc.Builder import Data.Char (isLetter, isAlphaNum) import Control.Applicative @@ -71,6 +72,23 @@ parseLaTeX = do let (Pandoc _ bs') = doc bs return $ Pandoc meta bs' +data LPState = LPState{ + lpMeta :: Meta + , lpOptions :: ReaderOptions + , lpHasChapters :: Bool + , lpParserContext :: ParserContext + , lpQuoteContext :: QuoteContext + } deriving Show + +instance Default LPState where + def = LPState{ + lpMeta = nullMeta + , lpOptions = def + , lpHasChapters = False + , lpParserContext = NullState + , lpQuoteContext = NoQuote + } + type LP = Parser [Char] ParserState anyControlSeq :: LP String |