diff options
Diffstat (limited to 'src/Text')
| -rw-r--r-- | src/Text/Pandoc/Writers/LaTeX.hs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs index 2e6cd6649..bbd8591a7 100644 --- a/src/Text/Pandoc/Writers/LaTeX.hs +++ b/src/Text/Pandoc/Writers/LaTeX.hs @@ -33,13 +33,14 @@ import Control.Monad import Data.Containers.ListUtils (nubOrd) import Data.Char (isDigit) import Data.List (intersperse, (\\)) -import Data.Maybe (catMaybes, fromMaybe, isJust, mapMaybe, isNothing) +import Data.Maybe (catMaybes, fromMaybe, isJust, mapMaybe, isNothing, + maybeToList) import Data.Monoid (Any (..)) import Data.Text (Text) import qualified Data.Text as T import Network.URI (unEscapeString) import Text.DocTemplates (FromContext(lookupContext), renderTemplate) -import Text.Collate.Lang (renderLang) +import Text.Collate.Lang (renderLang, Lang(langLanguage)) import Text.Pandoc.Class.PandocMonad (PandocMonad, report, toLang) import Text.Pandoc.Definition import Text.Pandoc.Highlighting (formatLaTeXBlock, formatLaTeXInline, highlight, @@ -262,6 +263,11 @@ pandocToLaTeX options (Pandoc meta blocks) = do (map literal (nubOrd . catMaybes . filter (/= babelLang) $ map toBabel docLangs)) + $ defField "selnolig-langs" + (literal . T.intercalate "," $ + let langs = docLangs ++ maybeToList mblang + in (["english" | any ((== "en") . langLanguage) langs] ++ + ["german" | any ((== "de") . langLanguage) langs])) $ defField "latex-dir-rtl" ((render Nothing <$> getField "dir" context) == Just ("rtl" :: Text)) context |
