A Python script to validate and fix BibTeX files according to the PMLR Proceedings Specification.
This script helps conference organizers prepare their BibTeX files for submission to PMLR by:
- Validating required fields
- Fixing common Unicode issues
- Escaping special characters
- Reporting problems that need manual attention
- Python 3.11+
- bibtexparser (
pip install bibtexparser
)
- Save your BibTeX file as
input.bib
- Run:
python pmlrpy.py input.bib output.bib
- Check the console for validation messages
- Review
output.bib
for the fixed version
-
Checks for single @Proceedings entry with required fields:
- booktitle
- name
- shortname
- year
- editor
- volume
- start
- end
- address
- conference_url
-
Validates @InProceedings entries have:
- title
- author
- pages
- abstract
- Replaces common Unicode characters with LaTeX equivalents:
- ö → "o
- ü → "u
- é → 'e
- è → `e
- á → 'a
- ñ → ~n
- — → ---
- " → ``
- " → ''
- Escapes % characters in abstracts and titles
- Author name format validation ("Lastname, Firstname")
- Complex name prefix handling (von, van der, etc.)
- Section definition validation
- Math formula validation in abstracts
- File presence checking for PDFs and supplementary materials
- HTML tag validation in abstracts (, , etc.)
- The script may not catch all Unicode characters
- Complex LaTeX commands in abstracts are not validated
- Author name formatting is not fully validated
- Supplementary material naming conventions are not checked
Feel free to submit issues and enhancement requests!