Text.CSL.Eval.Names

pandoc-citeproc-0.10.5.1: Supports using pandoc with citeproc

Copyright | (c) Andrea Rossato
License | BSD-style (see LICENSE)
Maintainer | Andrea Rossato <andrea.rossato@unitn.it>
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell2010

Text.CSL.Eval.Names

Description

The CSL implementation

Synopsis

- evalNames :: Bool -> [String] -> [Name] -> String -> State EvalState [Output]
- formatNames :: Bool -> Delimiter -> String -> String -> [Agent] -> Name -> State EvalState [Output]
- isEtAl :: Bool -> [Option] -> String -> [Agent] -> (Bool, Int)
- formatName :: EvalMode -> Bool -> Form -> Formatting -> [Option] -> [NamePart] -> Agent -> [Output]
- formatTerm :: Form -> Formatting -> Bool -> String -> State EvalState [Output]
- formatLabel :: Form -> Formatting -> Bool -> String -> State EvalState [Output]
- (<+>) :: Formatted -> Formatted -> Formatted
- (<++>) :: [Output] -> [Output] -> [Output]

# Documentation

evalNames :: Bool -> [String] -> [Name] -> String -> State EvalState [Output] #

formatNames :: Bool -> Delimiter -> String -> String -> [Agent] -> Name -> State EvalState [Output] #

The `Bool` is `True` when formatting a name with a final "et-al". The first `String` represents the position and the second the role (e.i. editor, translator, etc.).

isEtAl :: Bool -> [Option] -> String -> [Agent] -> (Bool, Int) #

The first `Bool` is `True` if we are evaluating the bibliography. The `String` is the cite position. The function also returns the number of contributors to be displayed.

formatName :: EvalMode -> Bool -> Form -> Formatting -> [Option] -> [NamePart] -> Agent -> [Output] #

Generate the `Agent`s names applying et-al options, with all possible permutations to disambiguate colliding citations. The `Bool` indicate whether we are formatting the first name or not.

formatTerm :: Form -> Formatting -> Bool -> String -> State EvalState [Output] #

formatLabel :: Form -> Formatting -> Bool -> String -> State EvalState [Output] #

(<+>) :: Formatted -> Formatted -> Formatted #

(<++>) :: [Output] -> [Output] -> [Output] #