Skip to content

Conversation

@GreLucie
Copy link

@GreLucie GreLucie commented Nov 29, 2025

Closes #12727

This PR is to add a custom exporter for academicpages.github.io by adding the corresponding layouts.
It should also implement a way to export multiple files to this format.

The .layouts file are complete but the AcademicPagesExporter class is not complete since for now, when multiple files are exported at once, they appear in the same markdown file.
We are still working on this issue and cleaning our files for a more definitive wokring PR in the future.
Complete tests also have yet to be implemented.

Steps to test

When jabref is running, go to file->Export->Export selected entries and choose "Academic Pages Markdowns" for the export type.

image

You can then add the markdown file to your academic page to see it on your own page.
image

This is just a draft pull request and it is nowhere close to being finished.

Mandatory checks

@github-actions
Copy link
Contributor

Hey @GreLucie!

Thank you for contributing to JabRef! Your help is truly appreciated ❤️

We have automated checks in place, based on which you will soon get feedback if any of them are failing. In a while, maintainers will also review your contribution. Once that happens, you can go through their comments in the "Files changed" tab and act on them, or reply to the conversation if you have further inputs.

Please re-check our contribution guide in case of any other doubts related to our contribution workflow.

@GreLucie GreLucie changed the title Fix for issue 12727 Added a custom Export for academicpages.github.io Nov 29, 2025
}
try {
Integer iterator = 1;
for (BibEntry entry : entries) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could simply switch this to a normal for loop with for (int i =1; i< entiries.length; i++) so you don't need the iterator variable.


String content = Files.readString(expectedFile);

// Verify YAML front matter fields
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please follow the pattern of other tests in that directory, do a full comparison. of the content

CHANGELOG.md Outdated
### Removed

## [6.0-alpha.3] – 2025-10-30
## [6.0-alpha.3] – 2025-11-29
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please revert this change

…uits avec le format exigé de academic pages
…r-issue-12727

# Conflicts:
#	jablib/src/main/java/org/jabref/logic/exporter/AcademicPagesExporter.java
@github-actions github-actions bot added the status: changes-required Pull requests that are not yet complete label Nov 30, 2025
import org.jabref.model.entry.BibEntry;
import org.jabref.model.metadata.SelfContainedSaveOrder;

import org.jetbrains.annotations.NotNull;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use jspecify nonnull

### Removed

## [6.0-alpha.3] – 2025-11-29
## [6.0-alpha.3] – 2025-10-30
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this some automatic tool that always changes the date?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello, you told me to revert this change so I went back to the unmodified CHANGELOG for now. I know we have to change it eventually but while this PR is just a draft we decided to change it once all the issues have been fixed.

@github-actions github-actions bot removed the status: changes-required Pull requests that are not yet complete label Dec 2, 2025
@github-actions github-actions bot added the status: changes-required Pull requests that are not yet complete label Dec 2, 2025
@github-actions github-actions bot removed the status: changes-required Pull requests that are not yet complete label Dec 2, 2025
@sadok-lajmi
Copy link

Hi, we just wanted to clarify the mechanism that we chose to implement for this new AcademicPagesExporter so that we can have your opinion on it and know whether or not it meets your expectations :
This exporter actually creates a folder at first (even when there's only one entry selected) with the name typed by the user in the export dialog and then exports all the entries selected one by one inside this folder, giving them names that match exactly what is defined by the academicpages layout as their file names in the permalink field of the markdown (that way it facilitates instant integration in the personal academic pages repository).
So is this logic fine with you or is there something we need to change especially about the creation of a folder... ?

@Siedlerchr
Copy link
Member

Yep that sound reasonable. Go ahead

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Export for academicpages.github.io

4 participants