sciunto-org / python-bibtexparser

Bibtex parser for Python 3
https://bibtexparser.readthedocs.io
MIT License
468 stars 130 forks source link

:bug: Fix bug in `von`-part name parsing #423

Closed mlutze closed 10 months ago

mlutze commented 10 months ago

The current system has a name parsing issue around capitalization in comma-style names. This means that

aa bb, CC

gets parsed as

last: aa bb
first: CC
von: <empty>

but BibTeX parses this as

last: bb
first: CC
von: aa

I have modified the parsing code and added relevant test cases drawn from the Tame The BeaST BibTeX reference document.

Style-wise, I found the list manipulation difficult to follow; I added a helper function rindex, which makes it easier to understand IMO. This should probably go in a utility file or something, but I didn't see one in the project.

I believe these changes will fix at least some of the failing test cases in the name merging PR here: #422