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

Add exporter for Citation File Format (CFF) (yaml based) #10661

Closed
Siedlerchr opened this issue Nov 21, 2023 · 12 comments · Fixed by #10917
Closed

Add exporter for Citation File Format (CFF) (yaml based) #10661

Siedlerchr opened this issue Nov 21, 2023 · 12 comments · Fixed by #10917
Assignees
Labels
export / save FirstTimeCodeContribution Triggers GitHub Greeter Workflow good first issue An issue intended for project-newcomers. Varies in difficulty. type: enhancement

Comments

@Siedlerchr
Copy link
Member

Is your suggestion for improvement related to a problem? Please describe.
JabRef should be able to export citations into the cff file format. There is already an implemented importer which maps bibtex fields.
The existing YAML exporter can be easily adapted.

Additional context

https://citation-file-format.github.io/

An example python converter
https://github.com/citation-file-format/cffconvert

@Siedlerchr Siedlerchr added good first issue An issue intended for project-newcomers. Varies in difficulty. type: enhancement labels Nov 21, 2023
@HarikaB11
Copy link

Hi @Siedlerchr, I would like to work on this issue.

@ThiloteE ThiloteE added the FirstTimeCodeContribution Triggers GitHub Greeter Workflow label Nov 24, 2023
Copy link
Contributor

As a general advice for newcomers: check out Contributing for a start. Also, guidelines for setting up a local workspace is worth having a look at.

Feel free to ask here at GitHub, if you have any issue related questions. If you have questions about how to setup your workspace use JabRef's Gitter chat. Try to open a (draft) pull-request early on, so that people can see you are working on the issue and so that they can see the direction the pull request is heading towards. This way, you will likely receive valuable feedback.

@koppor
Copy link
Member

koppor commented Nov 28, 2023

Here are some hints_

TLDR: JabRef has the functionality to import CFF (#7945), but no functionality for export. This should be implemented.

JabRef should be able to parse Citation File Format (CFF) and export into it.

Links:

Implementation hints:

The export can either be done by Java code directly or creating .layout files.

Export using .layout files:

See yaml.* in https://github.com/JabRef/jabref/tree/main/src/main/resources/resource/layout

Example: https://github.com/JabRef/jabref/blob/main/src/main/resources/resource/layout/yaml.layout

Documentation on .layout files: https://docs.jabref.org/collaborative-work/export/customexports


Acceptance criteria:

  • At least @article and @inproceedings need to be supported.

Note: If you dislike the .layout format, one can work on replacing that part of JabRef by Java templating engines. See koppor#392 for details.

@ShailikaS
Copy link

Hi @Siedlerchr, I would like to work on this if this issue is still open?

@ThiloteE
Copy link
Member

There hasn't been activity here since a month, but Harika has had commits in other repositories, so I assume this one here was abandoned. Hence, I will assign @ShailikaS.

@Siedlerchr
Copy link
Member Author

No activity since a while

@garymejia
Copy link
Contributor

Hello, could I be assigned this issue?

@Siedlerchr
Copy link
Member Author

@garymejia Are you still working on this? Or can other work on this

@jeanprbt
Copy link
Contributor

I can work on this one !

@ThiloteE
Copy link
Member

@garymejia are you still on it?

@garymejia
Copy link
Contributor

Hey @ThiloteE, I started working on this issue a bit late. I'm okay with being unassigned this issue since I was still figuring out the formatting requirements for cff. Sorry for the holdup!

@ThiloteE
Copy link
Member

ok, then I will assign @jeanprbt

@ThiloteE ThiloteE assigned jeanprbt and unassigned garymejia Feb 25, 2024
github-merge-queue bot pushed a commit that referenced this issue Feb 27, 2024
* issue #10661 - feat: added option to export in cff

* issue #10661 - feat: updated CHANGELOG.md

* issue #10661 - feat: added date field to cff export

* issue #10661 - fix: fixed checkstyle errors

* Bump org.apache.lucene:lucene-queries from 9.9.1 to 9.10.0 (#10920)

* Bump org.apache.lucene:lucene-queries from 9.9.1 to 9.10.0

Bumps org.apache.lucene:lucene-queries from 9.9.1 to 9.10.0.

---
updated-dependencies:
- dependency-name: org.apache.lucene:lucene-queries
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* introduce var for lucene

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Siedlerchr <siedlerkiller@gmail.com>

* Fix for delete entries should ask user (#10591)

* Implemented the feature that deleting files which linked to selected entries when user select deletion, and keeping files unchanged when user select cut

* The following features are implemented: 1.Initializes a pop-up dialog box to confirm whether the user wants to delete attached files from selected entry. 2.Keep track of user preference: if the user prefers always delete attached files, delete the files without displaying the dialog box. 3. Add preference options in File>Preference>Linked Files>Attached files so that users can manage preferences

* update CHANGELOG.md

* Add language keys to english language file

* restore files in src/main/resources/csl-locales and src/main/resources/csl-styles

* Removed unnecessary comments and finxed some requested changes. Added new features: 1. When deleting attached files, the name of files to be deleted will be displayed. 2. Solved the access error caused by repeated deletion of files when one file is attached to multiple entries.

* Add language keys to english language file

* Modify language keys to english language file

* made deleteFileFromDisk method static

* update comment of method deleteFileFromDisk

* fixed coding styles

* restored unexpected code changes

* fix logic

* try null

* todo

* Unify dialogs that confirmation deleting files

* Get around LinkedFile in LIbraryTab, Encapsulate LinkedFile into LinkedFileViewModel

* fix style

* restore files

* Unified the different dialogs when deleting entries, removerd unnecessary dialogs

* fix csl-styles

* try to fix csl-styles

* try to fix csl-styles again

* try to fix csl-styles again 2

* try to fix csl-styles again 3

* Update prompts in en.properties

* New features

- Add to Trash
- Group file-related language strings together

* Fix architecture tests

* Introduce list of files to delete

* Streamline 1 vs. many files

* Fix openRewrite

* Discard changes to src/test/resources/org/jabref/logic/search/test-library-with-attached-files.bib

* Adapt true/false logic according to expectations

* Add "Trash" to CHANGELOG.md

* Fix localization

* Fix JabRef_en.properties

* Add some debug statements

* Fix preferences

* Separate log entries by empty line

* More refined dialog

---------

Co-authored-by: Siedlerchr <siedlerkiller@gmail.com>
Co-authored-by: Oliver Kopp <kopp.dev@gmail.com>
Co-authored-by: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com>

* Fix variable name

* Fix duplicate check/merge entries dialog not triggered on import from… (#10914)

* Fix duplicate check/merge entries dialog not triggered on import from browser


Refs #5858

* changelog

* remove double duplicate check

* remove l10n

* add icon, downloading is also handled in import entries

* changelog

* fix l10n

* Update JabRef_en.properties

* Update ImportEntriesDialog.java

---------

Co-authored-by: Oliver Kopp <kopp.dev@gmail.com>

* issue #10661 - fix: fixed PR review comments

Made a class comment in CffDate.java
Replaced System.lineseparator() with OS.NEWLINE in CffDate.java
Added a final newline in cff.layout file

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Siedlerchr <siedlerkiller@gmail.com>
Co-authored-by: shawn-jj <134609685+shawn-jj@users.noreply.github.com>
Co-authored-by: Oliver Kopp <kopp.dev@gmail.com>
Co-authored-by: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
export / save FirstTimeCodeContribution Triggers GitHub Greeter Workflow good first issue An issue intended for project-newcomers. Varies in difficulty. type: enhancement
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

7 participants