aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Writers/LaTeX.hs
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2019-10-08 09:22:46 -0700
committerJohn MacFarlane <jgm@berkeley.edu>2019-10-09 11:01:33 -0700
commitaceee9ca48484c300ac3519fb7991e3d22768312 (patch)
tree5beaccc4860fd5a9525514d2fe9e737e42703f73 /src/Text/Pandoc/Writers/LaTeX.hs
parent1b10b5cea947cd6567c33466006c4216fde9f107 (diff)
downloadpandoc-aceee9ca48484c300ac3519fb7991e3d22768312.tar.gz
Options.WriterOptions: Change type of writerVariables to Context Text.
This will allow structured values. [API change]
Diffstat (limited to 'src/Text/Pandoc/Writers/LaTeX.hs')
-rw-r--r--src/Text/Pandoc/Writers/LaTeX.hs8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs
index 2ea26344a..81a3082cb 100644
--- a/src/Text/Pandoc/Writers/LaTeX.hs
+++ b/src/Text/Pandoc/Writers/LaTeX.hs
@@ -30,6 +30,7 @@ import qualified Data.Map as M
import Data.Text (Text)
import qualified Data.Text as T
import Network.URI (unEscapeString)
+import Text.DocTemplates (FromContext(lookupContext))
import Text.Pandoc.BCP47 (Lang (..), getLang, renderLang)
import Text.Pandoc.Class (PandocMonad, report, toLang)
import Text.Pandoc.Definition
@@ -146,8 +147,9 @@ pandocToLaTeX options (Pandoc meta blocks) = do
-- these have \frontmatter etc.
beamer <- gets stBeamer
let documentClass =
- case lookup "documentclass" (writerVariables options) `mplus`
- fmap stringify (lookupMeta "documentclass" meta) of
+ case (lookupContext "documentclass"
+ (writerVariables options)) `mplus`
+ (T.pack . stringify <$> lookupMeta "documentclass" meta) of
Just x -> x
Nothing | beamer -> "beamer"
| otherwise -> case writerTopLevelDivision options of
@@ -208,7 +210,7 @@ pandocToLaTeX options (Pandoc meta blocks) = do
defField "title-meta" (T.pack titleMeta) $
defField "author-meta"
(T.pack $ intercalate "; " authorsMeta) $
- defField "documentclass" (T.pack documentClass) $
+ defField "documentclass" documentClass $
defField "verbatim-in-note" (stVerbInNote st) $
defField "tables" (stTable st) $
defField "strikeout" (stStrikeout st) $