Treat ";" as keyword separator when importing bibtex data or replace them with ","
There are journals that (wrongly) publish bibtex data with keywords containing ; as separator. Example: keywords = {keyword1; keyword2},. When pasting those into JabRef, there is no keyword separation. I wish there was. It would also be ok to replace the ; with , during the import process. Maybe this should be optional in the preferences, but probably not as I cannot imagine any words containing ;, but maybe I am wrong.
Summary of my annoyance: The users workflow is slowed down when trying to paste multiple keywords at the same time into JabRef, because they will be treated as a single keywords instead of multiple keywords.
Next time I come across such a journal, I will post it here, but it's just something I remembered. I do not have a real example at hand right now.
Overall, I now think it definitely should be managed via a preference. Both ";" and "," should be added there as default, but should be able to be modified by the user. By the way, I believe we alread y have it. It is the keyword separator preference for fields:
Would need to be adapted to allow multiple keywordseparators per field. Bonus points for allowing users to modify keyword separators for single fields.
From a standartization standpoint, it's better to only use one keyword separator, otherwise sharing .bib library files to colleagues withotu the proper preferences will be a hassle. We could treat those journals as rogue.
So that means, it's best to let users set multiple keyword separators in the preferences for IMPORT only and then convert them to ","
Since multiple journals may have different separators, all of these should be handled.
We should "jsut" hard-code the keyword separation and migrate old data.
Alternative: https://github.com/JabRef/jabref/issues/8701
When the input contains only one keyword per line, as in RIS data, JabRef could check the keywords that would conflict with the specified separator. It isn't as obvious in Bibtex data where there are multiple keywords on the same line. A non-standard separator that preserves delineation between keywords is better than a standard one that is unclear. I think this is why some sources use semicolons instead of commas. For example, chemical formulas contain commas and hyphens intrinsic to the formula, so you would not want to substitute another character for these but commas or hyphens would be inappropriate keyword separators.
/assign-me
π Hey @tushar-2320, thank you for your interest in this issue! π
We're excited to have you on board. Start by exploring our Contributing guidelines, and don't forget to check out our workspace setup guidelines to get started smoothly.
For questions on JabRef functionality and the code base, you can consult the JabRef Guru or ask on our Gitter chat.
In case you encounter failing tests during development, please check our developer FAQs!
Having any questions or issues? Feel free to ask here on GitHub. Need help setting up your local workspace? Join the conversation on JabRef's Gitter chat. And don't hesitate to open a (draft) pull request early on to show the direction it is heading towards. This way, you will receive valuable feedback.
Happy coding! π
This refs https://github.com/JabRef/jabref/issues/8701 somehow
We searched for hours for an example - and did not find one. We need to implement this without any real test data. (Unless someone can provive a real example)
We searched for hours for an example - and did not find one. We need to implement this without any real test data. (Unless someone can provive a real example)
Is the separator stored with the library or only in JabRef preferences? What happens if a user library has ; as the separator and this library is then imported into another library (or JabRef installation) that uses , as the separator (for instance, after the preference has changed or if the library is shared with another user who has a different preference)?
π Hey @D-Prasanth-Kumar, looks like youβre eager to work on this issue β great! π It also looks like you don't know how to assign issues to yourself. Please read our CONTRIBUTING.md to find out how. It will also guide you in other aspects of contributing to JabRef.
/assign-me
π Hey @D-Prasanth-Kumar, thank you for your interest in this issue! π
We're excited to have you on board. Start by exploring our Contributing guidelines, and don't forget to check out our workspace setup guidelines to get started smoothly.
For questions on JabRef functionality and the code base, you can consult the JabRef Guru or ask on our Gitter chat.
In case you encounter failing tests during development, please check our developer FAQs!
Having any questions or issues? Feel free to ask here on GitHub. Need help setting up your local workspace? Join the conversation on JabRef's Gitter chat. And don't hesitate to open a (draft) pull request early on to show the direction it is heading towards. This way, you will receive valuable feedback.
Happy coding! π
Wouldn't it be a good idea to split up the pref into two?
- One for denoting the keyword separators that need to be migrated during import
- and one for the keyword separator that is actually used?
unassign-me
/assign-me
π Hey @bhrhmn, thank you for your interest in this issue! π
We're excited to have you on board. Start by exploring our Contributing guidelines, and set up your local development workspace by following the steps in our workspace setup guidelines to get started smoothly.
For questions on JabRef functionality, you can consult the JabRef Guru. For questions related to the codebase, please start using DeepWiki.
In case you encounter failing tests during development, please check our developer FAQs!
Still facing issues or having more questions? Feel free to ask here on GitHub or on JabRef's Gitter chat. Please don't hesitate to open a (draft) pull request early on to show the direction you are heading towards if unsure.
Happy coding! π
β° Assignment Reminder
Hi @bhrhmn, this is a friendly reminder about your assignment to this issue.
[!WARNING] This issue will be automatically unassigned in 11 days if there's no activity.
Remember that you can ask the JabRef Guru or DeepWiki about anything regarding JabRef. Additionally, our contributing guide has hints on creating a pull request and a link to our Gitter chat.
How to keep your assignment
If you are working on it, you can prevent automatic unassignment by:
- Submitting a draft pull request with your progress within 11 days
- Asking for the π Pinned label if you need more time
We appreciate your contribution and are here to help if needed!
π Assignment Update
Hi @bhrhmn, due to inactivity, you have been unassigned from this issue.
Next steps
If you still want to work on this:
- Submit a pull request showing your current state. You will be automatically assigned again.
- Ask a maintainer to assign you again.