diff options
author | Merijn Verstraaten <merijn@inconsistent.nl> | 2014-02-15 17:51:33 +0100 |
---|---|---|
committer | Merijn Verstraaten <merijn@inconsistent.nl> | 2014-02-15 17:51:33 +0100 |
commit | fe246ce01c4c523b7391d58d910af09bf3bac6e6 (patch) | |
tree | 958e5970f9cfbf2cf70394a67ff18e2a25de5ff3 /src/Text/Pandoc/Parsing.hs | |
parent | 286781f8014cd40ad741e52b254904ffa7dc2855 (diff) |
Enhanced Pandoc's support for rST roles.
rST parser now supports:
- All built-in rST roles
- New role definition
- Role inheritance
Issues/TODO:
- Silently ignores illegal fields on roles
- Silently drops class annotations for roles
- Only supports :format: fields with a single format for :raw: roles,
requires a change to Text.Pandoc.Definition.Format to support multiple
formats.
- Allows direct use of :raw: role, rST only allows indirect (i.e.,
inherited use of :raw:).
Diffstat (limited to 'src/Text/Pandoc/Parsing.hs')
-rw-r--r-- | src/Text/Pandoc/Parsing.hs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Parsing.hs b/src/Text/Pandoc/Parsing.hs index 2f21e1253..0713f4a96 100644 --- a/src/Text/Pandoc/Parsing.hs +++ b/src/Text/Pandoc/Parsing.hs @@ -853,6 +853,7 @@ data ParserState = ParserState stateHasChapters :: Bool, -- ^ True if \chapter encountered stateMacros :: [Macro], -- ^ List of macros defined so far stateRstDefaultRole :: String, -- ^ Current rST default interpreted text role + stateRstCustomRoles :: M.Map String (String, Maybe String, Attr -> (String, Attr)), -- ^ Current rST custom text roles stateWarnings :: [String] -- ^ Warnings generated by the parser } @@ -915,6 +916,7 @@ defaultParserState = stateHasChapters = False, stateMacros = [], stateRstDefaultRole = "title-reference", + stateRstCustomRoles = M.empty, stateWarnings = []} getOption :: (ReaderOptions -> a) -> Parser s ParserState a |