Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Openoffice / LIbreoffice bibliography order #7805

Open
1 task done
antalk2 opened this issue Jun 7, 2021 · 4 comments
Open
1 task done

Openoffice / LIbreoffice bibliography order #7805

antalk2 opened this issue Jun 7, 2021 · 4 comments

Comments

@antalk2
Copy link
Contributor

antalk2 commented Jun 7, 2021

JabRef version JabRef 5.3--2021-05-24--59fb185

  • Mandatory: I have tested the latest development version from http://builds.jabref.org/main and the problem persists

  • Create Smith2x.bib with two entries with (author year title)

    • Smith 2000 Alpha
    • Smith 2000 Beta
  • Start a new document

  • Cite each above, individually, in reverse order.

  • Choose Default Author-year style

  • Refresh (generate bibliography)

Both statements below are true

  • The bibliography is sorted in (author, year, title) order
  • The letters (in 2000a, 2000b, 2000c) are assigned in order of appearance

The problem: now 2000b precedes 2000a in the bibliography.

Probably the bibliography should use (author, year, uniqueLetter, title) order

@gdrosos
Copy link
Contributor

gdrosos commented Jun 19, 2021

Hello, I would like to work on this issue. Any pointers would be appreciated.
Thanks in advance.

@antalk2
Copy link
Contributor Author

antalk2 commented Jun 20, 2021

Uhh.

  • I put this bug report here as a reminder.
    The main reason for not solving it right away is that the code is in transition.
    I reorganized the part handling bibliography and citation mark generation here.
    Due to the amount of changes had to break it into smaller parts for review: https://github.com/JabRef/jabref/pulls?q=is%3Apr+is%3Aopen+oobranch
    It was estimated by a maintainer to take at least six weeks to finish the review. (Currently we are at "c" in an "a" to "j" series)
    In case my version becomes accepted, the change I proposed "use (author, year, uniqueLetter, title) order"
    seems relatively straightforward: I would probably start here

  • Another reason for the report was: I am not sure what is the expected solution: is what I proposed a
    universally accepted answer for this case, or maybe something else, or it varies between journals
    and needs an option in jstyle files. I was hoping someone can add this missing knowledge here.

  • I was just writing a summary of (what did I change, why) here, under The OpenOffice/LibreOffice panel, at the bottom,
    when I discovered this problem. I also mention some other problems there.

I would suggest to wait with work on the parts affected by the oobranch series.
The old code may be gone later, or the new code may be refused or affected by changes requested during review.
I am also waiting. In the meantime I started to investigate what is achievable in LibreOffice on the backend part.

@ThiloteE
Copy link
Member

Could you please try the latest Jabref development-build and check if the issue here still is reproducible? It can be found here: https://builds.jabref.org/main/

In the newest build, the final pull request #7795, mainly authored by @antalk2, was merged. There were some changes related to the Open Office (OO) and Libre Office (LO) integration, so just checking if some of the issues to LO/OO are still open or can be put to rest.

(I guess i will check if this bug is reproducible, since Antalk2 is not really active right now.)

@ThiloteE ThiloteE self-assigned this Mar 12, 2022
@ThiloteE
Copy link
Member

ThiloteE commented Mar 13, 2022

I can confirm that this problem here still exists. with

JabRef 5.6--2022-03-10--749b6b2
Windows 10 10.0 amd64
Java 17.0.2
JavaFX 17.0.2-ea+3

Short story:

  • I think it is less about the sorting, but more about "The letters (in 2000a, 2000b, 2000c) are assigned in order of appearance".
  • The current sorting method seems to be based on the citation key exported by JabRef

Long story:

Instead of using the citation key exported by JabRef, OpenOffice/LibreOffice (or JabRef?!) uses yet another method to prevent duplicate entries/citations (which is fine, because users usually desire to not print an arbitrary citation key, but rather print bibliographic data, which is formatted and rendered according to the syntax of the citation style). This other method to prevent duplicates results in adding another letter (a, b, c, ...) to the date or year (which may or may not adhere to the specific citation style chose by the user) and thus creates new entry data on top of the citation key. This new entry data will be shown to the user in the OO/LO document both in citations, in-text citations and the bibliography. The sorting however seems to be based on the real citation key, not on this new data.

image

Ideally the bibliographic order in LO/OO should

  • either be based on the new entry data (formatted according to the citation style) and therefore not sorted based on the citation key, but rather sorted according to the citation style --> better option
  • or the new entry data should reflect JabRef's main duplicate prevention method. Currently JabRef prevents duplicates via modification to the citation key. Since it is not desired for the citation key to be printed, new options to add values to entry fields (e.g. author, year, ...) might be needed here. (This solution requires the user to check if the chosen method of duplicate prevention is compatible with the chosen citation style. It also requires for JabRef developers to implement a multitude of duplication prevention mechanisms) --> bad option
  • ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants