jkitchin / org-ref

org-mode modules for citations, cross-references, bibliographies in org-mode and useful bibtex tools to go with it.
GNU General Public License v3.0
1.37k stars 244 forks source link

New `parsebib.el` parser. #1125

Open joostkremers opened 1 week ago

joostkremers commented 1 week ago

Hi @jkitchin , org-ref depends on parsebib.el, so I wanted to give you a heads-up: I've ripped out the pretty hairy regexp-based parser code and replaced it with a simple recursive descent parser. The new parser works well, and the tests included in parsebib all pass, but with this kind of thing there's always a risk of regressions, of course.

I haven't merged the new code yet, and I don't know to what extent org-ref depends on parsebib.el, but once I merge the code, you may get bug reports from users that are ultimately caused by parsebib.el. If that happens, just send them to me, or key me in on the discussion.

If you have a .bib file that you would like to test the new code with before I do the merge, I'd be happy to do that, or if you prefer, you can check out the code here.

jkitchin commented 1 week ago

Thanks for the heads up. The most obvious thing I see is parsebib-find-bibtex-dialect in many places. I think bibtex-completion is doing most of the work in the bib files. I'd say go for the merge, and we will work out any bugs that arise. My work schedule is a little busy in the next month, and I won't have time to do any testing until probably decemberish.

joostkremers commented 1 week ago

Thanks for the heads up. The most obvious thing I see is parsebib-find-bibtex-dialect in many places. I think bibtex-completion is doing most of the work in the bib files.

Yes, that's true. But I imagine people might report problems here, nonetheless.

I'd say go for the merge, and we will work out any bugs that arise. My work schedule is a little busy in the next month, and I won't have time to do any testing until probably decemberish.

No worries, I'm not going to rush it.