Bibliography.jl is a Julia package for handling both import/export from various bibliographic formats.
This package comes as a set of 3 packages to convert bibliographies. This tool was split into three for the sake of the precompilation times.
- Bibliography.jl: The interface to import/export bibliographic items.
- BibInternal.jl: A julian internal format to translate from and into.
- BibParser.jl: A container for different bibliographic format parsers (such as BibTeX).
- StaticWebPages.jl: a black-box generator for static websites oriented towards personal and/or academic pages. No knowledge of Julia nor any other programming language is required.
- Write new or integrate existing parsers to BibParser.jl (currently only a light BibTeX parser is available).
- Add import/export from existing bibliographic formats to Bibliography.jl.
- Add export for non-bibliographic formats (such as in StaticWebPages.jl).
# Import a BibTeX file to the internal bib structure
imported_bib = import_bibtex(source_path::AbstractString)
# Select a part of a bibliography
selection = ["key1", "key2"]
selected_bib = select(imported_bib, selection) # select the intersection between the bibliography and `selection`
diff_bib = select(imported_bib, selection; complementary = true) # select the difference between the bibliography and `selection`
# Export from internal to BibTeX format
export_bibtex(target_path::AbstractString, bibliography)
# Check BibTeX rules, entry validity, clean and sort a bibtex file
export_bibtex(target_path::AbstractString, import_bibtex(path_to_file::AbstractString))
# Export from internal to the Web Format of StaticWebPages.jl
export_web(bibliography)
# Export from BibTeX to the Web Format of StaticWebPages.jl
bibtex_to_web(source_path::AbstractString)