|
Text.Pandoc.Parsing | Portability | portable | Stability | alpha | Maintainer | John MacFarlane <jgm@berkeley.edu> |
|
|
|
Description |
A utility library with parsers used in pandoc readers.
|
|
Synopsis |
|
|
|
Documentation |
|
(>>~) :: Monad m => m a -> m b -> m a |
Like >>, but returns the operation on the left.
(Suggested by Tillmann Rendel on Haskell-cafe list.)
|
|
anyLine :: GenParser Char st [Char] |
Parse any line of text
|
|
many1Till :: GenParser tok st a -> GenParser tok st end -> GenParser tok st [a] |
Like manyTill, but reads at least one item.
|
|
notFollowedBy' :: Show b => GenParser a st b -> GenParser a st () |
A more general form of notFollowedBy. This one allows any
type of parser to be specified, and succeeds only if that parser fails.
It does not consume any input.
|
|
oneOfStrings :: [String] -> GenParser Char st String |
Parses one of a list of strings (tried in order).
|
|
spaceChar :: CharParser st Char |
Parses a space or tab.
|
|
skipSpaces :: GenParser Char st () |
Skips zero or more spaces or tabs.
|
|
blankline :: GenParser Char st Char |
Skips zero or more spaces or tabs, then reads a newline.
|
|
blanklines :: GenParser Char st [Char] |
Parses one or more blank lines and returns a string of newlines.
|
|
enclosed |
|
|
stringAnyCase :: [Char] -> CharParser st String |
Parse string, case insensitive.
|
|
parseFromString :: GenParser tok st a -> [tok] -> GenParser tok st a |
Parse contents of str using parser and return result.
|
|
lineClump :: GenParser Char st String |
Parse raw line block up to and including blank lines.
|
|
charsInBalanced :: Char -> Char -> GenParser Char st String |
Parse a string of characters between an open character
and a close character, including text between balanced
pairs of open and close, which must be different. For example,
charsInBalanced '(' ')' will parse (hello (there))
and return hello (there). Stop if a blank line is
encountered.
|
|
charsInBalanced' :: Char -> Char -> GenParser Char st String |
Like charsInBalanced, but allow blank lines in the content.
|
|
romanNumeral |
|
|
emailAddress :: GenParser Char st (String, String) |
Parses an email address; returns original and corresponding
escaped mailto: URI.
|
|
uri :: GenParser Char st (String, String) |
Parses a URI. Returns pair of original and URI-escaped version.
|
|
withHorizDisplacement |
:: | | => GenParser Char st a | (result, displacement)
| -> GenParser Char st (a, Int) | | Applies a parser, returns tuple of its results and its horizontal
displacement (the difference between the source column at the end
and the source column at the beginning). Vertical displacement
(source row) is ignored.
|
|
|
nullBlock :: GenParser Char st Block |
Parses a character and returns Null (so that the parser can move on
if it gets stuck).
|
|
failIfStrict :: GenParser Char ParserState () |
Fail if reader is in strict markdown syntax mode.
|
|
failUnlessLHS :: GenParser tok ParserState () |
Fail unless we're in literate haskell mode.
|
|
escaped |
|
|
anyOrderedListMarker :: GenParser Char ParserState ListAttributes |
Parses an ordered list marker and returns list attributes.
|
|
orderedListMarker :: ListNumberStyle -> ListNumberDelim -> GenParser Char ParserState Int |
Parses an ordered list marker with a given style and delimiter,
returns number.
|
|
charRef :: GenParser Char st Inline |
Parses a character reference and returns a Str element.
|
|
tableWith :: GenParser Char ParserState ([[Block]], [Alignment], [Int]) -> ([Int] -> GenParser Char ParserState [[Block]]) -> GenParser Char ParserState sep -> GenParser Char ParserState end -> GenParser Char ParserState [Inline] -> GenParser Char ParserState Block |
Parse a table using headerParser, rowParser,
lineParser, and footerParser.
|
|
gridTableWith |
|
|
readWith |
|
|
testStringWith :: Show a => GenParser Char ParserState a -> String -> IO () |
Parse a string with parser (for testing).
|
|
data ParserState |
Parsing options.
| Constructors | ParserState | | stateParseRaw :: Bool | Parse raw HTML and LaTeX?
| stateParserContext :: ParserContext | Inside list?
| stateQuoteContext :: QuoteContext | Inside quoted environment?
| stateSanitizeHTML :: Bool | Sanitize HTML?
| stateKeys :: KeyTable | List of reference keys
| stateNotes :: NoteTable | List of notes
| stateTabStop :: Int | Tab stop
| stateStandalone :: Bool | Parse bibliographic info?
| stateTitle :: [Inline] | Title of document
| stateAuthors :: [[Inline]] | Authors of document
| stateDate :: [Inline] | Date of document
| stateStrict :: Bool | Use strict markdown syntax?
| stateSmart :: Bool | Use smart typography?
| stateLiterateHaskell :: Bool | Treat input as literate haskell
| stateColumns :: Int | Number of columns in terminal
| stateHeaderTable :: [HeaderType] | Ordered list of header types used
| stateIndentedCodeClasses :: [String] | Classes to use for indented code blocks
| stateNextExample :: Int | Number of next example
| stateExamples :: Map String Int | Map from example labels to numbers
| stateHasChapters :: Bool | True if chapter encountered
|
|
| Instances | |
|
|
defaultParserState :: ParserState |
|
data HeaderType |
Constructors | SingleHeader Char | Single line of characters underneath
| DoubleHeader Char | Lines of characters above and below
|
| Instances | |
|
|
data ParserContext |
Constructors | ListItemState | Used when running parser on list item contents
| NullState | Default state
|
| Instances | |
|
|
data QuoteContext |
Constructors | InSingleQuote | Used when parsing inside single quotes
| InDoubleQuote | Used when parsing inside double quotes
| NoQuote | Used when not parsing inside quotes
|
| Instances | |
|
|
type NoteTable = [(String, String)] |
|
type KeyTable = Map Key Target |
|
newtype Key |
Constructors | | Instances | |
|
|
lookupKeySrc |
|
|
refsMatch :: [Inline] -> [Inline] -> Bool |
Returns True if keys match (case insensitive).
|
|
Produced by Haddock version 2.6.0 |