Bibliography.jl
Bibliography.sorting_rules
— Constantconst sorting_rules = Dict{Symbol, Vector{Symbol}}(
:nty => [:authors; :title; :date],
:nyt => [:authors; :date; :title],
:nety => [:authors; :editors; :title; :date],
:neyt => [:authors; :editors; :date; :title],
:y => [:date], );
Implemented sorting rules for bibliography entry sorting.
See also sort_bibliography!
.
Bibliography.Publication
— TypePublication
A structure to store all the information necessary to web export.
Bibliography.Publication
— MethodPublication(entry)
Construct a Publication
(compatible with web export) from an Entry
.
Bibliography.access_to_bibtex!
— Methodaccess_to_bibtex!(fields, a)
Transform the how-to-access
field to a BibTeX string.
Bibliography.bibtex_to_web
— Methodbibtex_to_web(source::String)
Convert a BibTeX file to a web compatible format, specifically for the StaticWebPages.jl package.
Bibliography.date_to_bibtex!
— Methoddate_to_bibtex!(fields, date)
Convert a date to a BibTeX string.
Bibliography.eprint_to_bibtex!
— Methodeprint_to_bibtex!(fields, eprint)
Convert eprint information to a BibTeX string.
Bibliography.export_bibtex
— Methodexport_bibtex(target, bibliography)
Export a bibliography to BibTeX format.
Bibliography.export_bibtex
— Methodexport_bibtex(bibliography)
Export a bibliography to a BibTeX string.
Bibliography.export_bibtex
— Methodexport_bibtex(e::Entry)
Export an Entry
to a BibTeX string.
Bibliography.export_cff
— Methodexport_cff(e::Entry, destination::String="CITATION.cff", version::String="1.2.0", add_preferred::Bool=true) -> Dict{String, Any}
Export an Entry
to a CFF file (default is CITATION.cff
).
Bibliography.export_web
— Methodexport_web(bibliography::DataStructures.OrderedDict{String,BibInternal.Entry})
Export a bibliography in internal format to the web format of the StaticWebPages.jl package. Also used by DocumenterCitations.jl.
Bibliography.field_to_bibtex
— Methodfield_to_bibtex(key, value)
Convert an entry field to BibTeX format.
Bibliography.fileio_load
— Methodfileio_load(file; check)
fileio_load(stream; check)
The FileIO interface to import a BibTeX file or parse a BibTeX string and convert it to the internal bibliography format. The check
keyword argument can be set to :none
(or nothing
), :warn
, or :error
to raise appropriate logs.
Bibliography.fileio_save
— Methodfileio_save(file, data)
fileio_save(stream, data)
Export a bibliography as a BibTeX string to a file or stream.
Bibliography.import_bibtex
— Methodimport_bibtex(input; check = :error)
Import a BibTeX file or parse a BibTeX string and convert it to the internal bibliography format. The check
keyword argument can be set to :none
(or nothing
), :warn
, or :error
to raise appropriate logs.
Bibliography.import_cff
— Methodimport_cff(input) -> Entry
Import a CFF file and convert it to the internal bibliography format.
Bibliography.in_to_bibtex!
— Methodin_to_bibtex!(fields::BibInternal.Fields, i::BibInternal.In)
Convert the "published in
" information to a BibTeX string.
Bibliography.int_to_spaces
— Methodint_to_spaces(n)
Make a string of n
spaces.
Bibliography.na_if_empty
— Methodna_if_empty(str::AbstractString) -> AbstractString
Use placeholder value if string param is empty.
Bibliography.name_to_string
— Methodname_to_string(name::BibInternal.Name)
Convert a name in an Entry
to a string.
Bibliography.names_to_strings
— Methodnames_to_strings(names)
Convert a collection of names to a BibTeX string.
Bibliography.recursive_isless
— Functionrecursive_isless(a::Entry, b::Entry, fields::Tuple{Symbol},
depth::Int = 0)
Helper function for sort_bibliography!
.
This function allows recursive checking if a < b
with descending importance. The importance set for the comparison is defined by the argument fields
. This argument is a tuple consisting of symbols denoting the fields of the data type BibInternal.Entry
. The ordering implies the importance.
The depth
argument is purely for iterating/recursive purposes.
Bibliography.select
— Methodselect(
bibliography::DataStructures.OrderedDict{String,Entry},
selection::Vector{String};
complementary::Bool = false
)
Select a part of a bibliography based on a given selection set of keys. If complementary is true, selection designates which entries will not be kept. By default, complementary is set to false.
Bibliography.sort_bibliography!
— Functionsort_bibliography!(
bibliography::DataStructures.OrderedDict{String,Entry},
sorting_rule::Symbol = :key
)
Sorts the bibliography in place.
The sorting order can be set by specifying the sorting_rule
. The sorting is implemented via isless()
functions. For detailed insight have a look at the isless()
implementation of Julia and BibInternal.jl
.
Supported symbols for sorting_rule
are:
:key
(default): sort by bibliography keys e.g. BibTeX keys or:id
- the sorting rules defined in
sorting_rules
The sorting is not following explicitly bibliographic alphabetizing conventions. It follows standard comparator behaviour implied by the implemented isless()
functions (string comparators).
Bibliography.xcite
— Methodxcite(entry)
Format the BibTeX cite output of an Entry
for web export.
Bibliography.xfile
— Methodxfile(entry)
Format the downloadable path of an Entry
file for web export.
Bibliography.xin
— Methodxin(entry)
Format the appears-in
field of an Entry
for web export.
Bibliography.xlabels
— Methodxlabels(entry)
Format the labels of an Entry
for web export.
Bibliography.xlink
— Methodxlink(entry)
Format the download link of an Entry
for web export.
Bibliography.xnames
— Functionxnames(entry, editors = false; names = :full)
Format the name of an Entry
for web export.
Arguments:
entry
: an entryeditors
:true
if the name describes editorsnames
: :full (full names) or :last (last names + first name abbreviation)
Bibliography.xtitle
— Methodxtitle(entry
Format the title of an Entry
for web export.
Bibliography.xyear
— Methodxyear(entry)
Format the year of an Entry
for web export.