aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Writers/LaTeX/Notes.hs
diff options
context:
space:
mode:
authorAlbert Krewinkel <albert@zeitkraut.de>2020-12-12 16:45:50 +0100
committerAlbert Krewinkel <albert@zeitkraut.de>2020-12-12 16:48:28 +0100
commitccd235e31ff00c4741ba52552ba58669f700bbdc (patch)
tree9c0bb9e6ac7a2c33f4a72cce364ac83bf218156e /src/Text/Pandoc/Writers/LaTeX/Notes.hs
parentfcd065818901e57f01aca4c919f6102f9a047ba0 (diff)
downloadpandoc-ccd235e31ff00c4741ba52552ba58669f700bbdc.tar.gz
LaTeX writer: extract table handling into separate module.
Diffstat (limited to 'src/Text/Pandoc/Writers/LaTeX/Notes.hs')
-rw-r--r--src/Text/Pandoc/Writers/LaTeX/Notes.hs34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Writers/LaTeX/Notes.hs b/src/Text/Pandoc/Writers/LaTeX/Notes.hs
new file mode 100644
index 000000000..216a7bfc3
--- /dev/null
+++ b/src/Text/Pandoc/Writers/LaTeX/Notes.hs
@@ -0,0 +1,34 @@
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{- |
+ Module : Text.Pandoc.Writers.LaTeX.Notes
+ Copyright : Copyright (C) 2006-2020 John MacFarlane
+ License : GNU GPL, version 2 or above
+
+ Maintainer : John MacFarlane <jgm@berkeley.edu>
+ Stability : alpha
+ Portability : portable
+
+Output tables as LaTeX.
+-}
+module Text.Pandoc.Writers.LaTeX.Notes
+ ( notesToLaTeX
+ ) where
+
+import Data.List (intersperse)
+import Text.DocLayout ( Doc, braces, empty, text, vcat, ($$))
+import Data.Text (Text)
+
+notesToLaTeX :: [Doc Text] -> Doc Text
+notesToLaTeX = \case
+ [] -> empty
+ ns -> (case length ns of
+ n | n > 1 -> "\\addtocounter" <>
+ braces "footnote" <>
+ braces (text $ show $ 1 - n)
+ | otherwise -> empty)
+ $$
+ vcat (intersperse
+ ("\\addtocounter" <> braces "footnote" <> braces "1")
+ $ map (\x -> "\\footnotetext" <> braces x)
+ $ reverse ns)