bibtex-0.0.1: src/Text/BibTeX/Entry.hs
module Text.BibTeX.Entry where
import Data.Char (toLower, )
import Data.Tuple.HT (mapFst, )
data T =
Cons {
entryType :: String,
identifier :: String,
fields :: [(String, String)]
}
deriving (Show)
{- |
Convert the name style \"Surname, First name\" into \"First name Surname\".
-}
flipName :: String -> String
flipName name =
let (surname, firstName) = break (','==) name
in dropWhile (flip elem ", ") firstName ++ " " ++ surname
lowerCaseFieldNames :: T -> T
lowerCaseFieldNames entry =
entry {fields = map (mapFst (map toLower)) $ fields entry}