diff options
| author | Chris Wells <chris@mathematicaster.org> | 2025-01-25 14:33:21 -0600 |
|---|---|---|
| committer | Chris Wells <chris@mathematicaster.org> | 2025-01-25 14:33:21 -0600 |
| commit | ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb (patch) | |
| tree | babd478f4191655b2fa26f584c872fb909363ef1 /src/Hakyll/TeX/BibTeX.hs | |
| parent | 39d9569a2561f8ea09170b4371deca130c1ebcf9 (diff) | |
| download | main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.tar main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.tar.gz main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.tar.bz2 main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.tar.lz main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.tar.xz main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.tar.zst main-ca1d4d3d4371c8175ea6addb1ca1b09c3b56a7bb.zip | |
Adding templates and cleaning up
Diffstat (limited to 'src/Hakyll/TeX/BibTeX.hs')
| -rw-r--r-- | src/Hakyll/TeX/BibTeX.hs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/Hakyll/TeX/BibTeX.hs b/src/Hakyll/TeX/BibTeX.hs index 434ca54..ddf9166 100644 --- a/src/Hakyll/TeX/BibTeX.hs +++ b/src/Hakyll/TeX/BibTeX.hs @@ -2,6 +2,7 @@ module Hakyll.TeX.BibTeX ( bibtexCompiler , compileBibtex + , BibEntry , BibTeX ) where @@ -10,28 +11,29 @@ import Prolog import Data.List qualified as L import Hakyll import Text.BibTeX.Entry qualified as B -import Text.BibTeX.Format qualified as B +import Text.BibTeX.Format qualified as BF import Text.BibTeX.Parse qualified as B import Text.Parsec qualified as P -import Hakyll.Parsec.Parsec +import Hakyll.Parsec -type BibTeX = B.T +type BibEntry = B.T +type BibTeX = [BibEntry] deriving instance Generic B.T instance Binary B.T instance Writable B.T where - write p = write p . B.entry + write p = write p . fmap BF.entry instance Writable [B.T] where - write p = write p . fold . L.intersperse "\n" . fmap B.entry + write p = write p . fmap (fold . L.intersperse "\n" . fmap BF.entry) -compileBibtex :: (StringConv s String) => Item s -> Compiler (Item [B.T]) +compileBibtex :: (StringConv s String) => Item s -> Compiler (Item BibTeX) compileBibtex = compileParsec_ p . fmap toSL where p = B.skippingLeadingSpace $ B.file <* P.eof -bibtexCompiler :: Compiler (Item [B.T]) +bibtexCompiler :: Compiler (Item BibTeX) bibtexCompiler = getResourceBody >>= compileBibtex |
