This repository contains a utility script to prepare your paper's bibliography for publication. More specifically, it takes a .bib file and cleans it up by keeping only relevant entries and fixing some common mistakes. The following steps are performed:
- Only tags that are relevant (user-defined, e.g. "title", "year", but not "month") are kept while others are discarded.
- Page ranges will be always be written with double-hyphens (sp--ep) which renders nicer in latex.
- The bibliography will be sorted alphanumerically
- Names of Conference Proceedings will be standardized according to the patterns noted in
bib_configs/proceedings.yml - (Default, optional): Paper title capitalization is not enforced (i.e., tile = {{paper_title}} will be replaced by title = {paper_title})
- (Optional): If you provide a source directory for your publication, the script will remove all papers from the .bib file that are not cited in your paper.
- (Optional): If you provide a list of abbreviations, and regular expressions for when they are to be inserted, they will be used.
All dependencies are shipped with any recent Python version.
We recommend cloning the repository and proceeding to usage. Everything you need is python running on your system.
For isolated python applications, pipx is an easy way to install and use. Simply run either of these commands to get started:
pip install git+ssh://git@gitlab.lrz.de/tum-cps/bibliography-cleaner.git@main
pipx install git+ssh://git@gitlab.lrz.de/tum-cps/bibliography-cleaner.git@mainusage: python run.py [-h] -in <PATH_BIB_IN> -out <PATH_BIB_OUT>
options:
-h, --help show a help message which provides all the current optionsUpdating to the latest version of the main branch works best by forcing a re-install.
(Forcing is needed if the version number hasn't changed from one commit to the other)
pip install --upgrade --force-reinstall git+ssh://git@gitlab.lrz.de/tum-cps/bibliography-cleaner.git@main
pipx install --force bibliography-cleanerFeel free to add your own options or preferences and add yourself to the list of contributors by opening a merge request. Configuration files for all kinds of venues are highly appreciated. For questions, reach out to Jonathan.
- Jakob Thumm: Proceeding abbreviations
- Luis Gressenbuch: Pip packaging
- Florian Lercher: Improved cite key extraction