Subject: Re: bug#56475: 28.1.50; bibtex-parse-entry disregards @string substitutions

From: Ihor Radchenko <[email-masked]>
Date: Mon, 18 Jul 2022 12:07:09 +0800

Roland Winkler <[email-masked]> writes:

>>> When does this happen?  To the best of my knowledge, this has never been
>>> an issue for users of bibtex.el.
>>
>> It is more of a hypothetical scenario that might occur in future if Org
>> tries to support bibliographies provided inside .org files. Such
>> bibliographies will need to be converted to .bib files transiently and
>> might not need to be saved on disk.
>
> This sounds to me like reinventing the wheel and a poor design choice.
> BibTeX is a well-established bibliography format with a large ecosystem
> [(La)TeX].  Also, publishers provide BibTeX records for their journal
> articles.  (Occassionally I need to deal with records that have some
> other database format like RIS.  Converting formats is always painful.)
> ...
> What are the usage scenarios you have in mind for putting a bibliography
> database into org mode that comes with its own database format?

Org mode provides transparent conversion between BibTeX and Org formats.

The advantages of keeping bibliography in Org involve the extra things
you can do with Org headlines compared to BibTeX records:

- You can keep the related notes together with the bibliographic record
  and make use of Org markup, including inline images, inline LaTeX
  formulas, and cross-links to other bibliographic records. An example of
  such record is in the attached screenshot.

- You can convert such records to actionable tasks and schedule them
  using org-agenda. This integrates literature review process with task
  management capabilities of Org.

- You can easily search across the literature records while also
  indexing the records according to personal notes/tags/relevance to
  specific projects/etc

- You can visualize relations between literature records using packages
  like org-roam-ui: https://github.com/org-roam/org-roam-ui

- You can attach the literature PDFs/related data alongside with the
  literature record using org-attach mechanism

- You can put the bibliographic records together with notes inside the
  actual authored document, being able to review and search across the
  used literature. They can also be transparently exported to the
  required printable format like pdf/Tex/html/odt/etc

> From a practical perspective, BibTeX mode is built around the idea that
> users may have a large bibliography database.  Something like 10,000
> records is not exotic.  Then it is natural to split up these entries
> among multiple files.  BibTeX mode and its API support this very nicely.
> (I have many little helper functions in my emacs init file that use the
> BibTeX mode API.  Maybe I should put some of these also into bibtex.el.)

Sure. I am not saying that the current API is incorrect. It's just
geared towards specific kind of traditional workflow.

For the bibtex.el extension, I am pretty sure that people do want some
helper functions. Some Org-related projects are even using
alternative API-oriented implementations of BibTeX parsers:
https://github.com/joostkremers/parsebib You may find reading the
parsebib's readme useful to get an idea what people need. parsebib is at
least being used by https://github.com/andras-simonyi/citeproc-el that
is natively supported by Org mode's citation engine
(https://blog.tecosaur.com/tmio/2021-07-31-citations.html).

Best,
Ihor