computeFieldPatch(BibEntry base, BibEntry local, BibEntry remote) {
diff --git a/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java b/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java
index b75dfb51b41..45523b5c1d4 100644
--- a/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java
+++ b/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java
@@ -1,5 +1,6 @@
package org.jabref.logic.git.conflicts;
+import org.jabref.logic.git.io.RevisionTriple;
import org.jabref.model.entry.BibEntry;
import org.jspecify.annotations.NullMarked;
diff --git a/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java b/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java
index d6444bb1398..11cf6fdcea7 100644
--- a/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java
+++ b/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java
@@ -15,8 +15,8 @@ public class ConflictRules {
* Detect entry-level conflicts among base, local, and remote versions of an entry.
*
*
- * @param base the entry in the common ancestor
- * @param local the entry in the local version
+ * @param base the entry in the common ancestor
+ * @param local the entry in the local version
* @param remote the entry in the remote version
* @return optional conflict (if detected)
*/
diff --git a/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/FieldPatchComputer.java b/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/FieldPatchComputer.java
index a59c4074b81..35003245581 100644
--- a/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/FieldPatchComputer.java
+++ b/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/FieldPatchComputer.java
@@ -20,8 +20,8 @@ public final class FieldPatchComputer {
/// - If both sides changed to the same value, no patch needed;
/// - Fallback: if a divergence is still observed, do not override local; skip this field,
///
- /// @param base base version
- /// @param local local version
+ /// @param base base version
+ /// @param local local version
/// @param remote remote version
/// @return A map from field to new value
public static Map compute(BibEntry base, BibEntry local, BibEntry remote) {
diff --git a/jablib/src/main/java/org/jabref/logic/git/model/MergePlan.java b/jablib/src/main/java/org/jabref/logic/git/model/MergePlan.java
index fc35e2a9179..92b8299847e 100644
--- a/jablib/src/main/java/org/jabref/logic/git/model/MergePlan.java
+++ b/jablib/src/main/java/org/jabref/logic/git/model/MergePlan.java
@@ -8,14 +8,14 @@
/**
* A data structure representing the result of semantic diffing between base and remote entries.
- *
+ *
* The idea is: library A and then this patch leads to library B (if this patch is calculated between A and B)
* This is a bit different from {@link org.jabref.logic.bibtex.comparator.BibEntryDiff}, which "just" contains two entries on any field diff, but leaves "computation" on the caller.
* Thus, the data structure is different, because here, only the patches are contained, not any source or target.
* "patch" in the sense of "commands" to be applied to the source to get the target
*
* @param fieldPatches contains field-level modifications per citation key. citationKey -> field -> newValue (null = delete)
- * @param newEntries entries present in remote but not in base/local
+ * @param newEntries entries present in remote but not in base/local
*/
public record MergePlan(
Map> fieldPatches,
diff --git a/jablib/src/main/java/org/jabref/logic/util/io/FileUtil.java b/jablib/src/main/java/org/jabref/logic/util/io/FileUtil.java
index 16f7c9ce114..c311f2298f6 100644
--- a/jablib/src/main/java/org/jabref/logic/util/io/FileUtil.java
+++ b/jablib/src/main/java/org/jabref/logic/util/io/FileUtil.java
@@ -324,7 +324,7 @@ public static List relativize(List entries, BibDatabaseConte
/**
* Returns the list of linked files. The files have the absolute filename
*
- * @param entries list of BibTeX entries
+ * @param entries list of BibTeX entries
* @param fileDirs list of directories to try for expansion
* @return list of files. May be empty
*/
diff --git a/jablib/src/main/java/org/jabref/model/TreeNode.java b/jablib/src/main/java/org/jabref/model/TreeNode.java
index 1c588c7981a..2b1e4dc9de3 100644
--- a/jablib/src/main/java/org/jabref/model/TreeNode.java
+++ b/jablib/src/main/java/org/jabref/model/TreeNode.java
@@ -53,7 +53,7 @@ public abstract class TreeNode> {
/// Constructs a tree node without parent and no children.
///
/// @param derivingClass class deriving from TreeNode. It should always be "T.class".
- /// We need this parameter since it is hard to get this information by other means.
+ /// We need this parameter since it is hard to get this information by other means.
public TreeNode(Class derivingClass) {
parent = null;
children = FXCollections.observableArrayList();
diff --git a/jablib/src/test/java/org/jabref/logic/importer/RelatedWorkAnnotatorTest.java b/jablib/src/test/java/org/jabref/logic/importer/RelatedWorkAnnotatorTest.java
index a0856c7c853..27539af355f 100644
--- a/jablib/src/test/java/org/jabref/logic/importer/RelatedWorkAnnotatorTest.java
+++ b/jablib/src/test/java/org/jabref/logic/importer/RelatedWorkAnnotatorTest.java
@@ -50,7 +50,7 @@ void secondAppendAddsBlankLineAndSecondBlock() {
);
Optional value = entry.getField(FieldFactory.parseField("comment-koppor"));
-
+
String expected =
"[LunaOstos_2024]: Colombia is a middle-income country with a population of approximately 50 million.\n\n" +
"[CIA_2021]: Colombia has ~50 million people.";
From 10e162169748e0f068bfcf052066b3cce6e6ae96 Mon Sep 17 00:00:00 2001
From: jsochava <144294623+jsochava@users.noreply.github.com>
Date: Wed, 29 Oct 2025 21:48:58 -0400
Subject: [PATCH 06/18] Another attempt to fix formatting- selected "reformat
code" on all flagged files (#14085)
---
.../walkthrough/WalkthroughHighlighter.java | 8 ++---
.../jabref/gui/walkthrough/WindowOverlay.java | 32 +++++++++----------
.../gui/walkthrough/declarative/Trigger.java | 2 +-
.../declarative/WindowResolver.java | 2 +-
.../walkthrough/effects/BaseWindowEffect.java | 2 +-
.../walkthrough/utils/WalkthroughUtils.java | 4 +--
.../git/conflicts/ThreeWayEntryConflict.java | 1 -
.../main/java/org/jabref/model/TreeNode.java | 2 +-
8 files changed, 26 insertions(+), 27 deletions(-)
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java
index 7461f0ff7a1..83a1c892b09 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java
@@ -28,10 +28,10 @@ public class WalkthroughHighlighter {
/// Applies the specified highlight configuration.
///
/// @param config The highlight configuration to apply. Default to
- /// BackdropHighlight on the primary windows if null.
+ /// BackdropHighlight on the primary windows if null.
/// @param scene The primary scene to apply the highlight to.
/// @param fallbackTarget The fallback target node to use if no highlight
- /// configuration is provided.
+ /// configuration is provided.
public void applyHighlight(@Nullable WalkthroughEffect config, @NonNull Scene scene, @Nullable Node fallbackTarget) {
Map newEffects = computeNewEffects(config, scene, fallbackTarget);
@@ -54,8 +54,8 @@ public void applyHighlight(@Nullable WalkthroughEffect config, @NonNull Scene sc
/// Sets a handler to be called when the user clicks on backdrop or darkened areas.
///
/// @param handler The handler to call when the background is clicked. If null, no
- /// action will be taken on background clicks. Usually used to
- /// support quit walkthrough on clicking the effects.
+ /// action will be taken on background clicks. Usually used to
+ /// support quit walkthrough on clicking the effects.
public void setOnBackgroundClick(@Nullable Runnable handler) {
this.onBackgroundClickHandler = handler;
}
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java
index 83f1516cf42..28e9885aac4 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java
@@ -78,15 +78,15 @@ public WindowOverlay(Window window, WalkthroughPane pane, Walkthrough walkthroug
///
/// @param step The step to display.
/// @param node The node to anchor the tooltip to, or null to show it at
- /// the window. The node is expected to be positionable by
- /// [WalkthroughUtils#cannotPositionNode(Node)] standard.
+ /// the window. The node is expected to be positionable by
+ /// [WalkthroughUtils#cannotPositionNode(Node)] standard.
/// @param beforeNavigate A runnable to execute before navigating to the next step.
- /// More precisely, the runnable to execute immediately upon
- /// the button press before Walkthrough's state change to the
- /// next step and before the original button/node's action is
- /// executed. Usually used to prevent automatic revert from
- /// unexpected reverting to the previous step when the node is
- /// not yet ready to be displayed
+ /// More precisely, the runnable to execute immediately upon
+ /// the button press before Walkthrough's state change to the
+ /// next step and before the original button/node's action is
+ /// executed. Usually used to prevent automatic revert from
+ /// unexpected reverting to the previous step when the node is
+ /// not yet ready to be displayed
/// @implNote The requirement for the node to be positionable by
/// [WalkthroughUtils#cannotPositionNode(Node)] standard is just to make things
/// easier to define. This requirement come from
@@ -186,15 +186,15 @@ public void showPanel(PanelStep step, Runnable beforeNavigate) {
///
/// @param step The step to display.
/// @param node The node to anchor highlight to (e.g., BackdropHighlight
- /// may poke a hole at the position of the node), or null to
- /// use fallback effect of corresponding position.
+ /// may poke a hole at the position of the node), or null to
+ /// use fallback effect of corresponding position.
/// @param beforeNavigate A runnable to execute before navigating to the next step.
- /// More precisely, the runnable to execute immediately upon
- /// the button press before Walkthrough's state change to the
- /// next step and before the original button/node's action is
- /// executed. Usually used to prevent automatic revert from
- /// unexpected reverting to the previous step when the node is
- /// not yet ready to be displayed
+ /// More precisely, the runnable to execute immediately upon
+ /// the button press before Walkthrough's state change to the
+ /// next step and before the original button/node's action is
+ /// executed. Usually used to prevent automatic revert from
+ /// unexpected reverting to the previous step when the node is
+ /// not yet ready to be displayed
/// @see WindowOverlay#showPanel(PanelStep, Runnable)
/// @see WindowOverlay#showTooltip(TooltipStep, Node, Runnable)
public void showPanel(PanelStep step, @Nullable Node node, Runnable beforeNavigate) {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java
index 8853423b7d1..f7dec97d690 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java
@@ -96,7 +96,7 @@ private interface PredicateGenerator {
///
/// @param node The node to attach the trigger to.
/// @param onNavigate A function that wraps the original event handler. It takes a Supplier representing the
- /// original action and returns the result of that action.
+ /// original action and returns the result of that action.
/// @return A cleanup runnable that detaches the trigger.
Runnable create(Node node, Function, ?> onNavigate);
}
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java
index dec686a428c..581af988839 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java
@@ -35,7 +35,7 @@ static WindowResolver title(@NonNull String key) {
/// Creates a resolver that finds a window that's not the window specified.
///
/// @param window the window to exclude from the search. Usually this is the current
- /// window.
+ /// window.
/// @return a resolver that finds any window except the specified one
static WindowResolver not(Window window) {
return () -> {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java
index 6983911cb64..abe3bc11f2e 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java
@@ -25,7 +25,7 @@ public sealed abstract class BaseWindowEffect permits Spotlight, FullScreenDarke
/// pane until [#attach(Node)] is called.
///
/// @param pane The pane where the effect will be applied. Usually obtained from [Window#getScene()] and
- /// [Scene#getRoot()]
+ /// [Scene#getRoot()]
protected BaseWindowEffect(@NonNull Pane pane) {
this.pane = pane;
this.debouncedUpdater = WalkthroughUtils.debounced(_ -> this.updateLayout());
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java
index 652c6dae2ed..b4f23d0a2c9 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java
@@ -145,8 +145,8 @@ private static void scheduleExecution(Timeline timeline, long intervalMs, Runnab
/// until a stop condition is met.
///
/// @param stopCondition A supplier that should return true when the listener should
- /// be detached (as well as run anything interesting for the
- /// actual callee).
+ /// be detached (as well as run anything interesting for the
+ /// actual callee).
/// @return A runnable that can be used to detach the listener prematurely.
public static Runnable onWindowChangedUntil(@NonNull BooleanSupplier stopCondition) {
ListChangeListener listener = new ListChangeListener<>() {
diff --git a/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java b/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java
index 45523b5c1d4..b75dfb51b41 100644
--- a/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java
+++ b/jablib/src/main/java/org/jabref/logic/git/conflicts/ThreeWayEntryConflict.java
@@ -1,6 +1,5 @@
package org.jabref.logic.git.conflicts;
-import org.jabref.logic.git.io.RevisionTriple;
import org.jabref.model.entry.BibEntry;
import org.jspecify.annotations.NullMarked;
diff --git a/jablib/src/main/java/org/jabref/model/TreeNode.java b/jablib/src/main/java/org/jabref/model/TreeNode.java
index 2b1e4dc9de3..a10c8276c54 100644
--- a/jablib/src/main/java/org/jabref/model/TreeNode.java
+++ b/jablib/src/main/java/org/jabref/model/TreeNode.java
@@ -53,7 +53,7 @@ public abstract class TreeNode> {
/// Constructs a tree node without parent and no children.
///
/// @param derivingClass class deriving from TreeNode. It should always be "T.class".
- /// We need this parameter since it is hard to get this information by other means.
+ /// We need this parameter since it is hard to get this information by other means.
public TreeNode(Class derivingClass) {
parent = null;
children = FXCollections.observableArrayList();
From eb988d0b428a084e58ec3d6f990e3584cbff68b3 Mon Sep 17 00:00:00 2001
From: jsochava <144294623+jsochava@users.noreply.github.com>
Date: Wed, 29 Oct 2025 22:24:05 -0400
Subject: [PATCH 07/18] Another attempt to fix formatting issues (#14085)
---
.idea/codeStyles/Project.xml | 2 +
.../walkthrough/WalkthroughHighlighter.java | 12 +++---
.../jabref/gui/walkthrough/WindowOverlay.java | 40 +++++++++----------
.../gui/walkthrough/declarative/Trigger.java | 8 ++--
.../declarative/WindowResolver.java | 2 +-
.../walkthrough/effects/BaseWindowEffect.java | 2 +-
.../walkthrough/utils/WalkthroughUtils.java | 8 ++--
.../main/java/org/jabref/model/TreeNode.java | 24 +++++------
8 files changed, 50 insertions(+), 48 deletions(-)
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
index 3fe6d09c405..a7327f62a49 100644
--- a/.idea/codeStyles/Project.xml
+++ b/.idea/codeStyles/Project.xml
@@ -36,6 +36,8 @@
+
+
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java
index 83a1c892b09..3258d734644 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughHighlighter.java
@@ -27,11 +27,11 @@ public class WalkthroughHighlighter {
/// Applies the specified highlight configuration.
///
- /// @param config The highlight configuration to apply. Default to
- /// BackdropHighlight on the primary windows if null.
- /// @param scene The primary scene to apply the highlight to.
+ /// @param config The highlight configuration to apply. Default to
+ /// BackdropHighlight on the primary windows if null.
+ /// @param scene The primary scene to apply the highlight to.
/// @param fallbackTarget The fallback target node to use if no highlight
- /// configuration is provided.
+ /// configuration is provided.
public void applyHighlight(@Nullable WalkthroughEffect config, @NonNull Scene scene, @Nullable Node fallbackTarget) {
Map newEffects = computeNewEffects(config, scene, fallbackTarget);
@@ -54,8 +54,8 @@ public void applyHighlight(@Nullable WalkthroughEffect config, @NonNull Scene sc
/// Sets a handler to be called when the user clicks on backdrop or darkened areas.
///
/// @param handler The handler to call when the background is clicked. If null, no
- /// action will be taken on background clicks. Usually used to
- /// support quit walkthrough on clicking the effects.
+ /// action will be taken on background clicks. Usually used to
+ /// support quit walkthrough on clicking the effects.
public void setOnBackgroundClick(@Nullable Runnable handler) {
this.onBackgroundClickHandler = handler;
}
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java
index 28e9885aac4..b88ba52cbf9 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/WindowOverlay.java
@@ -76,17 +76,17 @@ public WindowOverlay(Window window, WalkthroughPane pane, Walkthrough walkthroug
/// Display a tooltip for the given step at the specified node.
///
- /// @param step The step to display.
- /// @param node The node to anchor the tooltip to, or null to show it at
- /// the window. The node is expected to be positionable by
- /// [WalkthroughUtils#cannotPositionNode(Node)] standard.
+ /// @param step The step to display.
+ /// @param node The node to anchor the tooltip to, or null to show it at
+ /// the window. The node is expected to be positionable by
+ /// [WalkthroughUtils#cannotPositionNode(Node)] standard.
/// @param beforeNavigate A runnable to execute before navigating to the next step.
- /// More precisely, the runnable to execute immediately upon
- /// the button press before Walkthrough's state change to the
- /// next step and before the original button/node's action is
- /// executed. Usually used to prevent automatic revert from
- /// unexpected reverting to the previous step when the node is
- /// not yet ready to be displayed
+ /// More precisely, the runnable to execute immediately upon
+ /// the button press before Walkthrough's state change to the
+ /// next step and before the original button/node's action is
+ /// executed. Usually used to prevent automatic revert from
+ /// unexpected reverting to the previous step when the node is
+ /// not yet ready to be displayed
/// @implNote The requirement for the node to be positionable by
/// [WalkthroughUtils#cannotPositionNode(Node)] standard is just to make things
/// easier to define. This requirement come from
@@ -184,17 +184,17 @@ public void showPanel(PanelStep step, Runnable beforeNavigate) {
/// Display a Panel for the given step at the specified node.
///
- /// @param step The step to display.
- /// @param node The node to anchor highlight to (e.g., BackdropHighlight
- /// may poke a hole at the position of the node), or null to
- /// use fallback effect of corresponding position.
+ /// @param step The step to display.
+ /// @param node The node to anchor highlight to (e.g., BackdropHighlight
+ /// may poke a hole at the position of the node), or null to
+ /// use fallback effect of corresponding position.
/// @param beforeNavigate A runnable to execute before navigating to the next step.
- /// More precisely, the runnable to execute immediately upon
- /// the button press before Walkthrough's state change to the
- /// next step and before the original button/node's action is
- /// executed. Usually used to prevent automatic revert from
- /// unexpected reverting to the previous step when the node is
- /// not yet ready to be displayed
+ /// More precisely, the runnable to execute immediately upon
+ /// the button press before Walkthrough's state change to the
+ /// next step and before the original button/node's action is
+ /// executed. Usually used to prevent automatic revert from
+ /// unexpected reverting to the previous step when the node is
+ /// not yet ready to be displayed
/// @see WindowOverlay#showPanel(PanelStep, Runnable)
/// @see WindowOverlay#showTooltip(TooltipStep, Node, Runnable)
public void showPanel(PanelStep step, @Nullable Node node, Runnable beforeNavigate) {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java
index f7dec97d690..a9aa52cebdf 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/Trigger.java
@@ -38,9 +38,9 @@ public interface Trigger {
/// Attaches the navigation triggers to the target node. `beforeNavigate` and `onNavigate` are guaranteed to run at
/// most once.
///
- /// @param node the node to attach the listeners to
+ /// @param node the node to attach the listeners to
/// @param beforeNavigate the runnable to execute before navigation
- /// @param onNavigate the runnable to execute when navigation occurs
+ /// @param onNavigate the runnable to execute when navigation occurs
/// @return a runnable to clean up the listeners
Runnable attach(@NonNull Node node, Runnable beforeNavigate, Runnable onNavigate);
@@ -94,9 +94,9 @@ private interface PredicateGenerator {
/// Modify the node's event dispatch chain or register custom logic to trigger [Trigger] when desired
/// conditions are met.
///
- /// @param node The node to attach the trigger to.
+ /// @param node The node to attach the trigger to.
/// @param onNavigate A function that wraps the original event handler. It takes a Supplier representing the
- /// original action and returns the result of that action.
+ /// original action and returns the result of that action.
/// @return A cleanup runnable that detaches the trigger.
Runnable create(Node node, Function, ?> onNavigate);
}
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java
index 581af988839..c3329620f23 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/WindowResolver.java
@@ -35,7 +35,7 @@ static WindowResolver title(@NonNull String key) {
/// Creates a resolver that finds a window that's not the window specified.
///
/// @param window the window to exclude from the search. Usually this is the current
- /// window.
+ /// window.
/// @return a resolver that finds any window except the specified one
static WindowResolver not(Window window) {
return () -> {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java
index abe3bc11f2e..93a70399b9c 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/effects/BaseWindowEffect.java
@@ -25,7 +25,7 @@ public sealed abstract class BaseWindowEffect permits Spotlight, FullScreenDarke
/// pane until [#attach(Node)] is called.
///
/// @param pane The pane where the effect will be applied. Usually obtained from [Window#getScene()] and
- /// [Scene#getRoot()]
+ /// [Scene#getRoot()]
protected BaseWindowEffect(@NonNull Pane pane) {
this.pane = pane;
this.debouncedUpdater = WalkthroughUtils.debounced(_ -> this.updateLayout());
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java
index b4f23d0a2c9..70d81553aa4 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/utils/WalkthroughUtils.java
@@ -63,7 +63,7 @@ public static DebouncedInvalidationListener debounced(InvalidationListener liste
/// there is a chance that this listener will run your methods after you removed it
/// from all the properties that it is attached to.
///
- /// @param listener the listener to debounce
+ /// @param listener the listener to debounce
/// @param intervalMs the minimum interval between executions in milliseconds
/// @return a debounced listener
public static DebouncedInvalidationListener debounced(InvalidationListener listener, long intervalMs) {
@@ -116,7 +116,7 @@ public static DebouncedRunnable debounced(Runnable runnable) {
/// when you clean up. Otherwise, there is a chance that this listener will run your
/// methods after you removed it from all the properties that it is attached to.
///
- /// @param runnable the runnable to debounce
+ /// @param runnable the runnable to debounce
/// @param intervalMs the minimum interval between executions in milliseconds
/// @return a debounced runnable
public static DebouncedRunnable debounced(Runnable runnable, long intervalMs) {
@@ -145,8 +145,8 @@ private static void scheduleExecution(Timeline timeline, long intervalMs, Runnab
/// until a stop condition is met.
///
/// @param stopCondition A supplier that should return true when the listener should
- /// be detached (as well as run anything interesting for the
- /// actual callee).
+ /// be detached (as well as run anything interesting for the
+ /// actual callee).
/// @return A runnable that can be used to detach the listener prematurely.
public static Runnable onWindowChangedUntil(@NonNull BooleanSupplier stopCondition) {
ListChangeListener listener = new ListChangeListener<>() {
diff --git a/jablib/src/main/java/org/jabref/model/TreeNode.java b/jablib/src/main/java/org/jabref/model/TreeNode.java
index a10c8276c54..d03754d0f2b 100644
--- a/jablib/src/main/java/org/jabref/model/TreeNode.java
+++ b/jablib/src/main/java/org/jabref/model/TreeNode.java
@@ -53,7 +53,7 @@ public abstract class TreeNode> {
/// Constructs a tree node without parent and no children.
///
/// @param derivingClass class deriving from TreeNode. It should always be "T.class".
- /// We need this parameter since it is hard to get this information by other means.
+ /// We need this parameter since it is hard to get this information by other means.
public TreeNode(Class derivingClass) {
parent = null;
children = FXCollections.observableArrayList();
@@ -88,8 +88,8 @@ public List getIndexedPathFromRoot() {
* an empty Optional will be returned.
*
* @param indexedPath sequence of child indices that describe a path from this node to one of its descendants.
- * Be aware that if indexedPath was obtained by getIndexedPathFromRoot(), this node should
- * usually be the root node.
+ * Be aware that if indexedPath was obtained by getIndexedPathFromRoot(), this node should
+ * usually be the root node.
* @return descendant found by evaluating indexedPath
*/
public Optional getDescendant(List indexedPath) {
@@ -167,9 +167,9 @@ public int getNumberOfChildren() {
* In this way the whole subtree based at this node is moved to the given node.
*
* @param target the new parent
- * @throws NullPointerException if target is null
+ * @throws NullPointerException if target is null
* @throws ArrayIndexOutOfBoundsException if targetIndex is out of bounds
- * @throws UnsupportedOperationException if target is an descendant of this node
+ * @throws UnsupportedOperationException if target is an descendant of this node
*/
public void moveTo(@NonNull T target) {
Optional oldParent = getParent();
@@ -473,11 +473,11 @@ public T addChild(@NonNull T child, int index) {
* Removes all children from this node and makes them a child of the specified node
* by adding it to the specified position in the children list.
*
- * @param target the new parent
+ * @param target the new parent
* @param targetIndex the position where the children should be inserted
- * @throws NullPointerException if target is null
+ * @throws NullPointerException if target is null
* @throws ArrayIndexOutOfBoundsException if targetIndex is out of bounds
- * @throws UnsupportedOperationException if target is an descendant of one of the children of this node
+ * @throws UnsupportedOperationException if target is an descendant of one of the children of this node
*/
public void moveAllChildrenTo(T target, int targetIndex) {
while (getNumberOfChildren() > 0) {
@@ -493,7 +493,7 @@ public void moveAllChildrenTo(T target, int targetIndex) {
* for any children {@code e1} and {@code e2} in the list).
*
* @param comparator the comparator used to compare the child nodes
- * @param recursive if true the whole subtree is sorted
+ * @param recursive if true the whole subtree is sorted
* @throws NullPointerException if the comparator is null
*/
public void sortChildren(@NonNull Comparator super T> comparator, boolean recursive) {
@@ -527,11 +527,11 @@ public void sortChildren(@NonNull Comparator super T> comparator, boolean recu
* by adding it to the specified position in the children list.
* In this way the whole subtree based at this node is moved to the given node.
*
- * @param target the new parent
+ * @param target the new parent
* @param targetIndex the position where the children should be inserted
- * @throws NullPointerException if target is null
+ * @throws NullPointerException if target is null
* @throws ArrayIndexOutOfBoundsException if targetIndex is out of bounds
- * @throws UnsupportedOperationException if target is an descendant of this node
+ * @throws UnsupportedOperationException if target is an descendant of this node
*/
public void moveTo(@NonNull T target, int targetIndex) {
// Check that the target node is not an ancestor of this node, because this would create loops in the tree
From adbaf3cdd0191767fdee6219ecd4d3a876b5cff0 Mon Sep 17 00:00:00 2001
From: jsochava <144294623+jsochava@users.noreply.github.com>
Date: Fri, 31 Oct 2025 15:02:59 -0400
Subject: [PATCH 08/18] Reformat code applied (#14085)
---
jabgui/build.gradle.kts | 546 +++++++---
.../JabRef.VisualElementsManifest.xml | 10 +-
jabgui/buildres/LICENSE_with_Privacy.md | 952 ++++++++++++++++--
jabgui/buildres/macos/README.md | 72 +-
.../firefox/org.jabref.jabref.json | 5 +-
.../java/org/jabref/gui/DialogService.java | 16 +-
.../main/java/org/jabref/gui/LibraryTab.java | 8 +-
.../gui/autosaveandbackup/BackupManager.java | 6 +-
.../jabref/gui/collab/DatabaseChangeList.java | 2 +-
.../collab/DatabaseChangesResolverDialog.java | 2 +-
.../MetadataChangeDetailsView.java | 8 +-
.../jabref/gui/desktop/os/NativeDesktop.java | 4 +-
.../CitationRelationsTab.java | 4 +-
.../gui/exporter/SaveDatabaseAction.java | 2 +-
.../externalfiles/DownloadFullTextAction.java | 4 +-
.../gui/externalfiles/PdfMergeDialog.java | 6 +-
.../jabref/gui/groups/MoveGroupChange.java | 2 +-
.../gui/groups/UndoableAddOrRemoveGroup.java | 12 +-
.../java/org/jabref/gui/icon/IconTheme.java | 4 +-
.../gui/importer/ImportEntriesDialog.java | 8 +-
.../gui/importer/ImportEntriesViewModel.java | 2 +-
.../gui/importer/NewDatabaseAction.java | 2 +-
.../gui/journals/UndoableAbbreviator.java | 6 +-
.../gui/journals/UndoableUnabbreviator.java | 4 +-
.../gui/keyboard/KeyBindingRepository.java | 4 +-
.../gui/keyboard/WalkthroughKeyBindings.java | 4 +-
.../general/GeneralPropertiesViewModel.java | 2 +-
.../maintable/ExtractReferencesAction.java | 2 +-
.../org/jabref/gui/maintable/MainTable.java | 2 +-
.../gui/maintable/MainTableColumnModel.java | 6 +-
.../MainTableFieldValueFormatter.java | 2 +-
.../gui/mergeentries/MergeEntriesHelper.java | 4 +-
.../multiwaymerge/MultiMergeEntriesView.java | 4 +-
.../org/jabref/gui/openoffice/Bootstrap.java | 4 +-
.../org/jabref/gui/openoffice/OOBibBase.java | 16 +-
.../gui/openoffice/OpenOfficePanel.java | 2 +-
.../preferences/PreferencesSearchHandler.java | 8 +-
.../CustomImporterTabViewModel.java | 2 +-
.../gui/preferences/preview/PreviewTab.java | 2 +-
.../gui/slr/ExistingStudySearchAction.java | 2 +-
.../gui/slr/ManageStudyDefinitionView.java | 2 +-
.../slr/ManageStudyDefinitionViewModel.java | 2 +-
.../org/jabref/gui/util/ControlHelper.java | 10 +-
.../jabref/gui/util/CustomLocalDragboard.java | 2 +-
.../org/jabref/gui/util/UiTaskExecutor.java | 4 +-
.../gui/walkthrough/WalkthroughRenderer.java | 8 +-
.../walkthrough/declarative/NodeResolver.java | 2 +-
.../sideeffect/SideEffectExecutor.java | 4 +-
jabgui/src/main/resources/icons/jabref.svg | 201 ++--
.../main/resources/org/jabref/gui/Base.css | 49 +-
.../main/resources/org/jabref/gui/Dark.css | 8 +-
.../ai/components/aichat/AiChatComponent.fxml | 65 +-
.../chathistory/ChatHistoryComponent.fxml | 19 +-
.../chatmessage/ChatMessageComponent.fxml | 44 +-
.../privacynotice/PrivacyNoticeComponent.fxml | 37 +-
.../summary/SummaryShowingComponent.fxml | 42 +-
.../util/errorstate/ErrorStateComponent.fxml | 54 +-
.../jabref/gui/auximport/FromAuxDialog.fxml | 57 +-
.../gui/cleanup/CleanupPresetPanel.fxml | 109 +-
.../collab/DatabaseChangesResolverDialog.fxml | 59 +-
.../CitationKeyPatternsPanel.fxml | 35 +-
.../FieldFormatterCleanupsPanel.fxml | 106 +-
.../SaveOrderConfigPanel.fxml | 70 +-
.../consistency/ConsistencyCheckDialog.fxml | 52 +-
.../consistency/ConsistencySymbolsDialog.fxml | 37 +-
.../jabref/gui/copyfiles/CopyFilesDialog.fxml | 32 +-
.../gui/documentviewer/DocumentViewer.fxml | 55 +-
.../jabref/gui/edit/ManageKeywordsDialog.fxml | 56 +-
.../org/jabref/gui/edit/ReplaceString.fxml | 140 ++-
.../AutomaticFieldEditorDialog.fxml | 21 +-
.../clearcontent/ClearContentTab.fxml | 92 +-
.../CopyOrMoveFieldContentTab.fxml | 66 +-
.../editfieldcontent/EditFieldContentTab.fxml | 39 +-
.../renamefield/RenameFieldTab.fxml | 28 +-
.../jabref/gui/entryeditor/EntryEditor.fxml | 102 +-
.../fileannotationtab/FileAnnotationTab.fxml | 47 +-
.../jabref/gui/errorconsole/ErrorConsole.fxml | 39 +-
.../exporter/CreateModifyExporterDialog.fxml | 82 +-
.../externalfiles/UnlinkedFilesDialog.fxml | 178 +++-
.../gui/fieldeditors/CitationCountEditor.fxml | 28 +-
.../gui/fieldeditors/CitationKeyEditor.fxml | 14 +-
.../jabref/gui/fieldeditors/DateEditor.fxml | 15 +-
.../gui/fieldeditors/ICORERankingEditor.fxml | 40 +-
.../jabref/gui/fieldeditors/ISSNEditor.fxml | 47 +-
.../gui/fieldeditors/JournalEditor.fxml | 22 +-
.../gui/fieldeditors/KeywordsEditor.fxml | 11 +-
.../gui/fieldeditors/LinkedEntriesEditor.fxml | 11 +-
.../gui/fieldeditors/LinkedFilesEditor.fxml | 46 +-
.../jabref/gui/fieldeditors/OwnerEditor.fxml | 18 +-
.../jabref/gui/fieldeditors/UrlEditor.fxml | 21 +-
.../identifier/IdentifierEditor.fxml | 48 +-
.../fieldeditors/journalinfo/JournalInfo.fxml | 256 +++--
.../optioneditors/OptionEditor.fxml | 16 +-
.../org/jabref/gui/git/GitCommitDialog.fxml | 22 +-
.../gui/git/GitShareToGitHubDialog.fxml | 39 +-
.../org/jabref/gui/groups/GroupDialog.fxml | 220 ++--
.../org/jabref/gui/help/AboutDialog.fxml | 140 ++-
.../importer/GenerateEntryFromIdDialog.fxml | 55 +-
.../ImportCustomEntryTypesDialog.fxml | 21 +-
.../gui/importer/ImportEntriesDialog.fxml | 117 ++-
.../gui/integrity/BibLogSettingsPane.fxml | 11 +-
.../gui/integrity/IntegrityCheckDialog.fxml | 67 +-
.../libraryproperties/LibraryProperties.fxml | 21 +-
.../constants/ConstantsProperties.fxml | 64 +-
.../contentselectors/ContentSelector.fxml | 65 +-
.../general/GeneralProperties.fxml | 179 +++-
.../keypattern/KeyPatternProperties.fxml | 36 +-
.../preamble/PreambleProperties.fxml | 18 +-
.../saving/SavingProperties.fxml | 31 +-
.../gui/linkedfile/LinkedFileEditDialog.fxml | 78 +-
.../multiwaymerge/MultiMergeEntries.fxml | 91 +-
.../toolbar/ThreeWayMergeToolbar.fxml | 139 ++-
.../org/jabref/gui/newentry/NewEntry.fxml | 218 +++-
.../gui/openoffice/AdvancedCiteDialog.fxml | 39 +-
.../gui/openoffice/ManageCitationsDialog.fxml | 32 +-
...ModifyCSLBibliographyPropertiesDialog.fxml | 46 +-
.../gui/openoffice/StyleSelectDialog.fxml | 160 ++-
.../gui/preferences/PreferencesDialog.fxml | 108 +-
.../preferences/PreferencesFilterDialog.fxml | 40 +-
.../org/jabref/gui/preferences/ai/AiTab.fxml | 147 ++-
.../autocompletion/AutoCompletionTab.fxml | 78 +-
.../CitationKeyPatternTab.fxml | 156 ++-
.../customentrytypes/CustomEntryTypesTab.fxml | 126 ++-
.../customexporter/CustomExporterTab.fxml | 54 +-
.../customimporter/CustomImporterTab.fxml | 48 +-
.../gui/preferences/entry/EntryTab.fxml | 85 +-
.../entryeditor/EntryEditorTab.fxml | 90 +-
.../gui/preferences/export/ExportTab.fxml | 18 +-
.../gui/preferences/external/ExternalTab.fxml | 196 +++-
.../EditExternalFileTypeEntryDialog.fxml | 129 ++-
.../ExternalFileTypesTab.fxml | 68 +-
.../gui/preferences/general/GeneralTab.fxml | 244 +++--
.../gui/preferences/groups/GroupsTab.fxml | 38 +-
.../journals/JournalAbbreviationsTab.fxml | 126 ++-
.../keybindings/KeyBindingsTab.fxml | 80 +-
.../linkedfiles/LinkedFilesTab.fxml | 162 ++-
.../nameformatter/NameFormatterTab.fxml | 74 +-
.../gui/preferences/network/NetworkTab.fxml | 154 ++-
.../gui/preferences/preview/PreviewTab.fxml | 136 ++-
.../protectedterms/ProtectedTermsTab.fxml | 61 +-
.../gui/preferences/table/TableTab.fxml | 171 +++-
.../preferences/websearch/ApiKeyDialog.fxml | 32 +-
.../preferences/websearch/WebSearchTab.fxml | 93 +-
.../gui/preferences/xmp/XmpPrivacyTab.fxml | 62 +-
.../gui/search/GlobalSearchResultDialog.fxml | 29 +-
.../gui/shared/SharedDatabaseLoginDialog.fxml | 265 +++--
.../jabref/gui/slr/ManageStudyDefinition.fxml | 5 +-
.../gui/texparser/ParseLatexDialog.fxml | 47 +-
.../gui/texparser/ParseLatexResult.fxml | 31 +-
.../welcome/components/ThemeWireFrame.fxml | 276 +++--
.../EntryTableConfigurationDialog.fxml | 25 +-
.../LargeLibraryOptimizationDialog.fxml | 51 +-
.../MainFileDirectoryDialog.fxml | 39 +-
.../quicksettings/OnlineServicesDialog.fxml | 67 +-
.../quicksettings/PushApplicationDialog.fxml | 40 +-
.../welcome/quicksettings/ThemeDialog.fxml | 77 +-
jabgui/src/main/resources/tinylog.properties | 29 +-
.../fieldsmerger/FileMergerTest.java | 4 +-
.../interactive/styletester/StyleTester.fxml | 717 +++++++++----
159 files changed, 7886 insertions(+), 2902 deletions(-)
diff --git a/jabgui/build.gradle.kts b/jabgui/build.gradle.kts
index 39470fea545..194f850ee03 100644
--- a/jabgui/build.gradle.kts
+++ b/jabgui/build.gradle.kts
@@ -6,242 +6,490 @@ plugins {
// id("com.redock.classpathtofile") version "0.1.0"
}
-group = "org.jabref"
-version = project.findProperty("projVersion") ?: "100.0.0"
+group =
+ "org.jabref"
+version =
+ project.findProperty(
+ "projVersion"
+ )
+ ?: "100.0.0"
// See https://javadoc.io/doc/org.mockito/mockito-core/latest/org.mockito/org/mockito/Mockito.html#0.3
-val mockitoAgent = configurations.create("mockitoAgent")
+val mockitoAgent =
+ configurations.create(
+ "mockitoAgent"
+ )
dependencies {
- implementation(project(":jablib"))
+ implementation(
+ project(
+ ":jablib"
+ )
+ )
// Following already provided by jablib
// implementation("org.openjfx:javafx-base")
// implementation("org.openjfx:javafx-controls")
// implementation("org.openjfx:javafx-fxml")
// implementation("org.openjfx:javafx-graphics")
- implementation(project(":jabls"))
- implementation(project(":jabsrv"))
+ implementation(
+ project(
+ ":jabls"
+ )
+ )
+ implementation(
+ project(
+ ":jabsrv"
+ )
+ )
- implementation("org.openjfx:javafx-swing")
- implementation("org.openjfx:javafx-web")
+ implementation(
+ "org.openjfx:javafx-swing"
+ )
+ implementation(
+ "org.openjfx:javafx-web"
+ )
- implementation("com.pixelduke:fxthemes")
+ implementation(
+ "com.pixelduke:fxthemes"
+ )
// From JavaFX25 onwards
- implementation("org.openjfx:jdk-jsobject")
+ implementation(
+ "org.openjfx:jdk-jsobject"
+ )
- implementation("org.slf4j:slf4j-api")
- implementation("org.tinylog:tinylog-api")
- implementation("org.tinylog:slf4j-tinylog")
- implementation("org.tinylog:tinylog-impl")
+ implementation(
+ "org.slf4j:slf4j-api"
+ )
+ implementation(
+ "org.tinylog:tinylog-api"
+ )
+ implementation(
+ "org.tinylog:slf4j-tinylog"
+ )
+ implementation(
+ "org.tinylog:tinylog-impl"
+ )
// route all requests to java.util.logging to SLF4J (which in turn routes to tinylog)
- implementation("org.slf4j:jul-to-slf4j")
+ implementation(
+ "org.slf4j:jul-to-slf4j"
+ )
// route all requests to log4j to SLF4J
- implementation("org.apache.logging.log4j:log4j-to-slf4j")
-
- implementation("org.jabref:afterburner.fx")
- implementation("org.kordamp.ikonli:ikonli-javafx")
- implementation("org.kordamp.ikonli:ikonli-materialdesign2-pack")
- implementation("com.github.sialcasa.mvvmFX:mvvmfx-validation:f195849ca9") //jitpack
- implementation("de.saxsys:mvvmfx")
- implementation("org.fxmisc.flowless:flowless")
- implementation("org.fxmisc.richtext:richtextfx")
- implementation("com.dlsc.gemsfx:gemsfx")
- implementation("com.dlsc.pdfviewfx:pdfviewfx")
+ implementation(
+ "org.apache.logging.log4j:log4j-to-slf4j"
+ )
+
+ implementation(
+ "org.jabref:afterburner.fx"
+ )
+ implementation(
+ "org.kordamp.ikonli:ikonli-javafx"
+ )
+ implementation(
+ "org.kordamp.ikonli:ikonli-materialdesign2-pack"
+ )
+ implementation(
+ "com.github.sialcasa.mvvmFX:mvvmfx-validation:f195849ca9"
+ ) //jitpack
+ implementation(
+ "de.saxsys:mvvmfx"
+ )
+ implementation(
+ "org.fxmisc.flowless:flowless"
+ )
+ implementation(
+ "org.fxmisc.richtext:richtextfx"
+ )
+ implementation(
+ "com.dlsc.gemsfx:gemsfx"
+ )
+ implementation(
+ "com.dlsc.pdfviewfx:pdfviewfx"
+ )
// Required by gemsfx
- implementation("tech.units:indriya")
+ implementation(
+ "tech.units:indriya"
+ )
// Required by gemsfx and langchain4j
- implementation ("com.squareup.retrofit2:retrofit")
+ implementation(
+ "com.squareup.retrofit2:retrofit"
+ )
- implementation("org.controlsfx:controlsfx")
- implementation("org.jabref:easybind")
+ implementation(
+ "org.controlsfx:controlsfx"
+ )
+ implementation(
+ "org.jabref:easybind"
+ )
- implementation("org.apache.lucene:lucene-core")
- implementation("org.apache.lucene:lucene-queryparser")
- implementation("org.apache.lucene:lucene-queries")
- implementation("org.apache.lucene:lucene-analysis-common")
- implementation("org.apache.lucene:lucene-highlighter")
+ implementation(
+ "org.apache.lucene:lucene-core"
+ )
+ implementation(
+ "org.apache.lucene:lucene-queryparser"
+ )
+ implementation(
+ "org.apache.lucene:lucene-queries"
+ )
+ implementation(
+ "org.apache.lucene:lucene-analysis-common"
+ )
+ implementation(
+ "org.apache.lucene:lucene-highlighter"
+ )
- implementation("org.jsoup:jsoup")
+ implementation(
+ "org.jsoup:jsoup"
+ )
// Because of GraalVM quirks, we need to ship that. See https://github.com/jspecify/jspecify/issues/389#issuecomment-1661130973 for details
- implementation("org.jspecify:jspecify")
+ implementation(
+ "org.jspecify:jspecify"
+ )
- implementation("com.google.guava:guava")
+ implementation(
+ "com.google.guava:guava"
+ )
- implementation("dev.langchain4j:langchain4j")
+ implementation(
+ "dev.langchain4j:langchain4j"
+ )
- implementation("io.github.java-diff-utils:java-diff-utils")
+ implementation(
+ "io.github.java-diff-utils:java-diff-utils"
+ )
- implementation("org.jooq:jool")
+ implementation(
+ "org.jooq:jool"
+ )
- implementation("commons-io:commons-io")
+ implementation(
+ "commons-io:commons-io"
+ )
- implementation ("org.apache.pdfbox:pdfbox")
+ implementation(
+ "org.apache.pdfbox:pdfbox"
+ )
- implementation("net.java.dev.jna:jna-jpms")
- implementation("net.java.dev.jna:jna-platform")
+ implementation(
+ "net.java.dev.jna:jna-jpms"
+ )
+ implementation(
+ "net.java.dev.jna:jna-platform"
+ )
- implementation("org.eclipse.jgit:org.eclipse.jgit")
+ implementation(
+ "org.eclipse.jgit:org.eclipse.jgit"
+ )
- implementation("com.konghq:unirest-java-core")
+ implementation(
+ "com.konghq:unirest-java-core"
+ )
- implementation("org.apache.httpcomponents.client5:httpclient5")
+ implementation(
+ "org.apache.httpcomponents.client5:httpclient5"
+ )
- implementation("com.vladsch.flexmark:flexmark-html2md-converter")
+ implementation(
+ "com.vladsch.flexmark:flexmark-html2md-converter"
+ )
- implementation("io.github.adr:e-adr")
+ implementation(
+ "io.github.adr:e-adr"
+ )
- implementation("org.libreoffice:unoloader")
- implementation("org.libreoffice:libreoffice")
+ implementation(
+ "org.libreoffice:unoloader"
+ )
+ implementation(
+ "org.libreoffice:libreoffice"
+ )
- implementation("com.github.javakeyring:java-keyring")
+ implementation(
+ "com.github.javakeyring:java-keyring"
+ )
- implementation("info.picocli:picocli")
- annotationProcessor("info.picocli:picocli-codegen")
+ implementation(
+ "info.picocli:picocli"
+ )
+ annotationProcessor(
+ "info.picocli:picocli-codegen"
+ )
- implementation("de.undercouch:citeproc-java")
+ implementation(
+ "de.undercouch:citeproc-java"
+ )
- testImplementation(project(":test-support"))
+ testImplementation(
+ project(
+ ":test-support"
+ )
+ )
- testImplementation("io.github.classgraph:classgraph")
- testImplementation("org.testfx:testfx-core")
- testImplementation("org.testfx:testfx-junit5")
+ testImplementation(
+ "io.github.classgraph:classgraph"
+ )
+ testImplementation(
+ "org.testfx:testfx-core"
+ )
+ testImplementation(
+ "org.testfx:testfx-junit5"
+ )
- testImplementation("org.mockito:mockito-core")
- mockitoAgent("org.mockito:mockito-core:5.18.0") { isTransitive = false }
- testImplementation("net.bytebuddy:byte-buddy")
+ testImplementation(
+ "org.mockito:mockito-core"
+ )
+ mockitoAgent(
+ "org.mockito:mockito-core:5.18.0"
+ ) {
+ isTransitive =
+ false
+ }
+ testImplementation(
+ "net.bytebuddy:byte-buddy"
+ )
- testImplementation("org.hamcrest:hamcrest")
+ testImplementation(
+ "org.hamcrest:hamcrest"
+ )
- testImplementation("org.wiremock:wiremock") {
- exclude(group = "net.sf.jopt-simple", module = "jopt-simple")
+ testImplementation(
+ "org.wiremock:wiremock"
+ ) {
+ exclude(
+ group = "net.sf.jopt-simple",
+ module = "jopt-simple"
+ )
}
- testImplementation("com.github.javaparser:javaparser-symbol-solver-core")
- testImplementation("org.ow2.asm:asm")
+ testImplementation(
+ "com.github.javaparser:javaparser-symbol-solver-core"
+ )
+ testImplementation(
+ "org.ow2.asm:asm"
+ )
- testImplementation("com.tngtech.archunit:archunit")
- testImplementation("com.tngtech.archunit:archunit-junit5-api")
- testRuntimeOnly("com.tngtech.archunit:archunit-junit5-engine")
+ testImplementation(
+ "com.tngtech.archunit:archunit"
+ )
+ testImplementation(
+ "com.tngtech.archunit:archunit-junit5-api"
+ )
+ testRuntimeOnly(
+ "com.tngtech.archunit:archunit-junit5-engine"
+ )
}
application {
- mainClass.set("org.jabref.Launcher")
- mainModule.set("org.jabref")
-
- application.applicationDefaultJvmArgs = listOf(
- "--enable-native-access=ai.djl.tokenizers,ai.djl.pytorch_engine,com.sun.jna,javafx.graphics,javafx.media,javafx.web,org.apache.lucene.core",
- "--add-opens", "java.base/java.nio=org.apache.pdfbox.io",
- // https://github.com/uncomplicate/neanderthal/issues/55
- "--add-opens", "java.base/jdk.internal.ref=org.apache.pdfbox.io",
- "--add-modules", "jdk.incubator.vector",
-
- "-XX:+UnlockExperimentalVMOptions",
- "-XX:+UseCompactObjectHeaders",
- "-XX:+UseZGC",
- "-XX:+ZUncommit",
- "-XX:+UseStringDeduplication"
+ mainClass.set(
+ "org.jabref.Launcher"
+ )
+ mainModule.set(
+ "org.jabref"
)
+
+ application.applicationDefaultJvmArgs =
+ listOf(
+ "--enable-native-access=ai.djl.tokenizers,ai.djl.pytorch_engine,com.sun.jna,javafx.graphics,javafx.media,javafx.web,org.apache.lucene.core",
+ "--add-opens",
+ "java.base/java.nio=org.apache.pdfbox.io",
+ // https://github.com/uncomplicate/neanderthal/issues/55
+ "--add-opens",
+ "java.base/jdk.internal.ref=org.apache.pdfbox.io",
+ "--add-modules",
+ "jdk.incubator.vector",
+
+ "-XX:+UnlockExperimentalVMOptions",
+ "-XX:+UseCompactObjectHeaders",
+ "-XX:+UseZGC",
+ "-XX:+ZUncommit",
+ "-XX:+UseStringDeduplication"
+ )
}
-tasks.named("run") {
+tasks.named(
+ "run"
+) {
// "assert" statements in the code should activated when running using gradle
- enableAssertions = true
+ enableAssertions =
+ true
}
// Below should eventually replace the 'jlink {}' and doLast-copy configurations above
javaModulePackaging {
- applicationName = "JabRef"
- jpackageResources = layout.projectDirectory.dir("buildres")
- verbose = true
- addModules.add("jdk.incubator.vector")
- targetsWithOs("windows") {
+ applicationName =
+ "JabRef"
+ jpackageResources =
+ layout.projectDirectory.dir(
+ "buildres"
+ )
+ verbose =
+ true
+ addModules.add(
+ "jdk.incubator.vector"
+ )
+ targetsWithOs(
+ "windows"
+ ) {
options.addAll(
- "--win-upgrade-uuid", "d636b4ee-6f10-451e-bf57-c89656780e36",
+ "--win-upgrade-uuid",
+ "d636b4ee-6f10-451e-bf57-c89656780e36",
"--win-dir-chooser",
"--win-shortcut",
"--win-menu",
- "--win-menu-group", "JabRef",
- "--license-file", "$projectDir/buildres/LICENSE_with_Privacy.md",
- "--file-associations", "$projectDir/buildres/windows/bibtexAssociations.properties"
+ "--win-menu-group",
+ "JabRef",
+ "--license-file",
+ "$projectDir/buildres/LICENSE_with_Privacy.md",
+ "--file-associations",
+ "$projectDir/buildres/windows/bibtexAssociations.properties"
)
- targetResources.from(layout.projectDirectory.dir("buildres/windows").asFileTree.matching {
- include("jabref-firefox.json")
- include("jabref-chrome.json")
- include("JabRefHost.bat")
- include("JabRefHost.ps1")
- })
+ targetResources.from(
+ layout.projectDirectory.dir(
+ "buildres/windows"
+ ).asFileTree.matching {
+ include(
+ "jabref-firefox.json"
+ )
+ include(
+ "jabref-chrome.json"
+ )
+ include(
+ "JabRefHost.bat"
+ )
+ include(
+ "JabRefHost.ps1"
+ )
+ })
}
- targetsWithOs("linux") {
+ targetsWithOs(
+ "linux"
+ ) {
options.addAll(
- "--linux-menu-group", "Office;",
- "--linux-rpm-license-type", "MIT",
- "--description", "JabRef is an open source bibliography reference manager. Simplifies reference management and literature organization for academic researchers by leveraging BibTeX, native file format for LaTeX.",
- "--icon", "$projectDir/src/main/resources/icons/JabRef-linux-icon-64.png",
+ "--linux-menu-group",
+ "Office;",
+ "--linux-rpm-license-type",
+ "MIT",
+ "--description",
+ "JabRef is an open source bibliography reference manager. Simplifies reference management and literature organization for academic researchers by leveraging BibTeX, native file format for LaTeX.",
+ "--icon",
+ "$projectDir/src/main/resources/icons/JabRef-linux-icon-64.png",
"--linux-shortcut",
- "--file-associations", "$projectDir/buildres/linux/bibtexAssociations.properties"
+ "--file-associations",
+ "$projectDir/buildres/linux/bibtexAssociations.properties"
)
- targetResources.from(layout.projectDirectory.dir("buildres/linux").asFileTree.matching {
- include("native-messaging-host/**")
- include("jabrefHost.py")
- })
+ targetResources.from(
+ layout.projectDirectory.dir(
+ "buildres/linux"
+ ).asFileTree.matching {
+ include(
+ "native-messaging-host/**"
+ )
+ include(
+ "jabrefHost.py"
+ )
+ })
}
- targetsWithOs("macos") {
+ targetsWithOs(
+ "macos"
+ ) {
options.addAll(
- "--icon", "$projectDir/src/main/resources/icons/jabref.icns",
- "--mac-package-identifier", "JabRef",
- "--mac-package-name", "JabRef",
- "--file-associations", "$projectDir/buildres/macos/bibtexAssociations.properties",
+ "--icon",
+ "$projectDir/src/main/resources/icons/jabref.icns",
+ "--mac-package-identifier",
+ "JabRef",
+ "--mac-package-name",
+ "JabRef",
+ "--file-associations",
+ "$projectDir/buildres/macos/bibtexAssociations.properties",
)
- if (providers.environmentVariable("OSXCERT").orNull?.isNotBlank() ?: false) {
+ if (providers.environmentVariable(
+ "OSXCERT"
+ ).orNull?.isNotBlank()
+ ?: false
+ ) {
options.addAll(
"--mac-sign",
- "--mac-signing-key-user-name", "JabRef e.V. (6792V39SK3)",
- "--mac-package-signing-prefix", "org.jabref",
+ "--mac-signing-key-user-name",
+ "JabRef e.V. (6792V39SK3)",
+ "--mac-package-signing-prefix",
+ "org.jabref",
)
}
- targetResources.from(layout.projectDirectory.dir("buildres/macos").asFileTree.matching {
- include("Resources/**")
- })
+ targetResources.from(
+ layout.projectDirectory.dir(
+ "buildres/macos"
+ ).asFileTree.matching {
+ include(
+ "Resources/**"
+ )
+ })
}
}
-javaModuleTesting.whitebox(testing.suites["test"]) {
- requires.add("org.jabref.testsupport")
+javaModuleTesting.whitebox(
+ testing.suites["test"]
+) {
+ requires.add(
+ "org.jabref.testsupport"
+ )
// Not sure why there is no dependency for jabgui normal running for this dependency
// requires.add("javafx.graphics")
- requires.add("com.github.javaparser.core")
- requires.add("org.junit.jupiter.api")
- requires.add("org.junit.jupiter.params")
- requires.add("org.mockito")
+ requires.add(
+ "com.github.javaparser.core"
+ )
+ requires.add(
+ "org.junit.jupiter.api"
+ )
+ requires.add(
+ "org.junit.jupiter.params"
+ )
+ requires.add(
+ "org.mockito"
+ )
- requires.add("org.testfx")
- requires.add("org.testfx.junit5")
+ requires.add(
+ "org.testfx"
+ )
+ requires.add(
+ "org.testfx.junit5"
+ )
- requires.add("wiremock")
- requires.add("wiremock.slf4j.spi.shim")
+ requires.add(
+ "wiremock"
+ )
+ requires.add(
+ "wiremock.slf4j.spi.shim"
+ )
- requires.add("com.tngtech.archunit")
- requires.add("com.tngtech.archunit.junit5.api")
+ requires.add(
+ "com.tngtech.archunit"
+ )
+ requires.add(
+ "com.tngtech.archunit.junit5.api"
+ )
}
tasks.test {
- jvmArgs = listOf(
- "-javaagent:${mockitoAgent.asPath}",
-
- // Source: https://github.com/TestFX/TestFX/issues/638#issuecomment-433744765
- "--add-opens", "javafx.graphics/com.sun.javafx.application=org.testfx",
-
- "--add-opens", "java.base/jdk.internal.ref=org.apache.pdfbox.io",
- "--add-opens", "java.base/java.nio=org.apache.pdfbox.io",
- "--enable-native-access=javafx.graphics,javafx.web,com.sun.jna"
-
- // "--add-reads", "org.mockito=java.prefs",
- // "--add-reads", "org.jabref=wiremock"
- )
+ jvmArgs =
+ listOf(
+ "-javaagent:${mockitoAgent.asPath}",
+
+ // Source: https://github.com/TestFX/TestFX/issues/638#issuecomment-433744765
+ "--add-opens",
+ "javafx.graphics/com.sun.javafx.application=org.testfx",
+
+ "--add-opens",
+ "java.base/jdk.internal.ref=org.apache.pdfbox.io",
+ "--add-opens",
+ "java.base/java.nio=org.apache.pdfbox.io",
+ "--enable-native-access=javafx.graphics,javafx.web,com.sun.jna"
+
+ // "--add-reads", "org.mockito=java.prefs",
+ // "--add-reads", "org.jabref=wiremock"
+ )
}
diff --git a/jabgui/buildres/JabRef.VisualElementsManifest.xml b/jabgui/buildres/JabRef.VisualElementsManifest.xml
index 6d28051ba84..bb0152525fa 100644
--- a/jabgui/buildres/JabRef.VisualElementsManifest.xml
+++ b/jabgui/buildres/JabRef.VisualElementsManifest.xml
@@ -1,4 +1,8 @@
-
-
-
\ No newline at end of file
+
+
+
diff --git a/jabgui/buildres/LICENSE_with_Privacy.md b/jabgui/buildres/LICENSE_with_Privacy.md
index cb14445fbdf..0ea853e1e7e 100644
--- a/jabgui/buildres/LICENSE_with_Privacy.md
+++ b/jabgui/buildres/LICENSE_with_Privacy.md
@@ -1,66 +1,553 @@
-MIT License
-
-Copyright © 2003-2025 JabRef Authors
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+MIT
+License
+
+Copyright
+©
+2003-2025
+JabRef
+Authors
+
+Permission
+is
+hereby
+granted,
+free
+of
+charge,
+to
+any
+person
+obtaining
+a
+copy
+of
+this
+software
+and
+associated
+documentation
+files (
+the "
+Software"),
+to
+deal
+in
+the
+Software
+without
+restriction,
+including
+without
+limitation
+the
+rights
+to
+use,
+copy,
+modify,
+merge,
+publish,
+distribute,
+sublicense,
+and/or
+sell
+copies
+of
+the
+Software,
+and
+to
+permit
+persons
+to
+whom
+the
+Software
+is
+furnished
+to
+do
+so,
+subject
+to
+the
+following
+conditions:
+
+The
+above
+copyright
+notice
+and
+this
+permission
+notice
+shall
+be
+included
+in
+all
+copies
+or
+substantial
+portions
+of
+the
+Software.
+
+THE
+SOFTWARE
+IS
+PROVIDED "
+AS
+IS",
+WITHOUT
+WARRANTY
+OF
+ANY
+KIND,
+EXPRESS
+OR
+IMPLIED,
+INCLUDING
+BUT
+NOT
+LIMITED
+TO
+THE
+WARRANTIES
+OF
+MERCHANTABILITY,
+FITNESS
+FOR
+A
+PARTICULAR
+PURPOSE
+AND
+NONINFRINGEMENT.
+IN
+NO
+EVENT
+SHALL
+THE
+AUTHORS
+OR
+COPYRIGHT
+HOLDERS
+BE
+LIABLE
+FOR
+ANY
+CLAIM,
+DAMAGES
+OR
+OTHER
+LIABILITY,
+WHETHER
+IN
+AN
+ACTION
+OF
+CONTRACT,
+TORT
+OR
+OTHERWISE,
+ARISING
+FROM,
+OUT
+OF
+OR
+IN
+CONNECTION
+WITH
+THE
+SOFTWARE
+OR
+THE
+USE
+OR
+OTHER
+DEALINGS
+IN
+THE
SOFTWARE.
---- Privacy Policy ----
+---
+Privacy
+Policy ----
# Privacy Policy
-Last updated: 2024-08-06
-
-Your privacy is a fundamental right JabRef e.V. respects and supports.
-By using JabRef and its related online services, you choose to share some of your personal information.
-In this Privacy Policy we explain how we collect, use, and share information about you, along with the choices you have.
-
-The term 'Personal information' in this policy means any information that either directly identifies you or can be somehow linked to you. 'JabRef' refers to the desktop application that is provided by JabRef e.V.
-
-Please remember that no method of transmission over the Internet, or method of electronic storage is absolute secure.
-While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.
-Also, whenever you communicate through the internet, your IP-Address will always be transmitted and retained by third parties for technical and in some cases for legal reasons.
+Last
+updated:
+2024-08-06
+
+Your
+privacy
+is
+a
+fundamental
+right
+JabRef
+e.V.
+respects
+and
+supports.
+By
+using
+JabRef
+and
+its
+related
+online
+services,
+you
+choose
+to
+share
+some
+of
+your
+personal
+information.
+In
+this
+Privacy
+Policy
+we
+explain
+how
+we
+collect,
+use,
+and
+share
+information
+about
+you,
+along
+with
+the
+choices
+you
+have.
+
+The
+term '
+Personal
+information'
+in
+this
+policy
+means
+any
+information
+that
+either
+directly
+identifies
+you
+or
+can
+be
+somehow
+linked
+to
+you. '
+JabRef'
+refers
+to
+the
+desktop
+application
+that
+is
+provided
+by
+JabRef
+e.V.
+
+Please
+remember
+that
+no
+method
+of
+transmission
+over
+the
+Internet,
+or
+method
+of
+electronic
+storage
+is
+absolute
+secure.
+While
+we
+strive
+to
+use
+commercially
+acceptable
+means
+to
+protect
+your
+Personal
+Data,
+we
+cannot
+guarantee
+its
+absolute
+security.
+Also,
+whenever
+you
+communicate
+through
+the
+internet,
+your
+IP-Address
+will
+always
+be
+transmitted
+and
+retained
+by
+third
+parties
+for
+technical
+and
+in
+some
+cases
+for
+legal
+reasons.
## JabRef Desktop Application
### Collecting information
-JabRef does not collect any personal information directly linked to you.
-However, on certain occasions JabRef will send some information to the online services of JabRef e.V.:
-
-- On application start, JabRef will check for the latest version online (by default *enabled*).
-- Information about a journal you are citing when looking for more information about this journal, using our journal database (by default *enabled*).
-- A pdf document you automatically want to extract citation information from, using our GROBID service (by default *disabled*).
-- Anonymized statistical data on the use of the graphical user interface for internal analysis purposes (by default *disabled*).
+JabRef
+does
+not
+collect
+any
+personal
+information
+directly
+linked
+to
+you.
+However,
+on
+certain
+occasions
+JabRef
+will
+send
+some
+information
+to
+the
+online
+services
+of
+JabRef
+e.V.:
+
+-
+On
+application
+start,
+JabRef
+will
+check
+for
+the
+latest
+version
+online (
+by
+default
+*enabled*).
+-
+Information
+about
+a
+journal
+you
+are
+citing
+when
+looking
+for
+more
+information
+about
+this
+journal,
+using
+our
+journal
+database (
+by
+default
+*enabled*).
+-
+A
+pdf
+document
+you
+automatically
+want
+to
+extract
+citation
+information
+from,
+using
+our
+GROBID
+service (
+by
+default
+*disabled*).
+-
+Anonymized
+statistical
+data
+on
+the
+use
+of
+the
+graphical
+user
+interface
+for
+internal
+analysis
+purposes (
+by
+default
+*disabled*).
### Storing information
-JabRef only stores the following personal information locally on your computer:
-
-- Your proxy username and password, if you decide to store them (by default *disabled*).
-- Any personal API key you use to access third party online services (by default *disabled*).
+JabRef
+only
+stores
+the
+following
+personal
+information
+locally
+on
+your
+computer:
+
+-
+Your
+proxy
+username
+and
+password,
+if
+you
+decide
+to
+store
+them (
+by
+default
+*disabled*).
+-
+Any
+personal
+API
+key
+you
+use
+to
+access
+third
+party
+online
+services (
+by
+default
+*disabled*).
### Sharing information
-Certain operations you perform in JabRef may trigger requests to public third-party services such as Zotero, Crossref or the Library of Congress for metadata retrieval.
-These third parties may log additional information besides your IP address and the search terms (e.g., DOI, ISBN or the current URL) according to their privacy policies.
-
-These third-party services are the following:
+Certain
+operations
+you
+perform
+in
+JabRef
+may
+trigger
+requests
+to
+public
+third-party
+services
+such
+as
+Zotero,
+Crossref
+or
+the
+Library
+of
+Congress
+for
+metadata
+retrieval.
+These
+third
+parties
+may
+log
+additional
+information
+besides
+your
+IP
+address
+and
+the
+search
+terms (
+e.g.,
+DOI,
+ISBN
+or
+the
+current
+URL)
+according
+to
+their
+privacy
+policies.
+
+These
+third-party
+services
+are
+the
+following:
| Service | Privacy Policy |
|------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------|
@@ -85,7 +572,7 @@ These third-party services are the following:
| [IACR](https://www.iacr.org/) | |
| [IEEEXplore](https://ieeexplore.ieee.org/Xplore/home.jsp) | |
| [INSPIRE](https://inspirehep.net/) | |
-| [ISIDORE](https://isidore.science/) | |
+| [ISIDORE](https://isidore.science/) | |
| [JSTOR](https://www.jstor.org/) | |
| [Library of Congress](https://lccn.loc.gov/) | |
| [Mistral AI](https://mistral.ai/) | |
@@ -103,48 +590,371 @@ These third-party services are the following:
| [Unpaywall](https://unpaywall.org/) | |
| [zbMATH Open](https://www.zbmath.org) | |
-[1]: *Note: The Mr. DLib service is used for the related articles tab in the entry editor and collects also your language, your browser and operating system (*disabled* by default).*
+[1]:
+*Note:
+The
+Mr.
+DLib
+service
+is
+used
+for
+the
+related
+articles
+tab
+in
+the
+entry
+editor
+and
+collects
+also
+your
+language,
+your
+browser
+and
+operating
+system (
+*disabled*
+by
+default).*
## JabRef Browser Extension
-No personal data (like name, email address, billing address or credit card) is collected by the Browser Extension itself.
-But be aware that the browser Extension uses Zotero services, where [Zotero's Privacy Policy](https://www.zotero.org/support/privacy) applies.
+No
+personal
+data (
+like
+name,
+email
+address,
+billing
+address
+or
+credit
+card)
+is
+collected
+by
+the
+Browser
+Extension
+itself.
+But
+be
+aware
+that
+the
+browser
+Extension
+uses
+Zotero
+services,
+where [Zotero's Privacy Policy](https://www.zotero.org/support/privacy)
+applies.
### Collecting information
-When actively used, the extension has access to the current website and its content to process citation information. In particular, the following information is used:
-
-- the url of the current website you are visiting,
-- the content of the current website.
+When
+actively
+used,
+the
+extension
+has
+access
+to
+the
+current
+website
+and
+its
+content
+to
+process
+citation
+information.
+In
+particular,
+the
+following
+information
+is
+used:
+
+-
+the
+url
+of
+the
+current
+website
+you
+are
+visiting,
+-
+the
+content
+of
+the
+current
+website.
### Storing information
-No data will be stored by the Browser Extension.
+No
+data
+will
+be
+stored
+by
+the
+Browser
+Extension.
### Sharing information
-The Browser Extension does not share any data except with the local instance of the JabRef software application, which stores the citation data as a new entry in its library.
+The
+Browser
+Extension
+does
+not
+share
+any
+data
+except
+with
+the
+local
+instance
+of
+the
+JabRef
+software
+application,
+which
+stores
+the
+citation
+data
+as
+a
+new
+entry
+in
+its
+library.
## Links to other Websites
-Our Service may contain links to other websites that are not operated by us. If you click on a third party link, you will be directed to that third party's site. We strongly advise you to review the Privacy Policy of every site you visit.
-
-We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.
+Our
+Service
+may
+contain
+links
+to
+other
+websites
+that
+are
+not
+operated
+by
+us.
+If
+you
+click
+on
+a
+third
+party
+link,
+you
+will
+be
+directed
+to
+that
+third
+party's
+site.
+We
+strongly
+advise
+you
+to
+review
+the
+Privacy
+Policy
+of
+every
+site
+you
+visit.
+
+We
+have
+no
+control
+over
+and
+assume
+no
+responsibility
+for
+the
+content,
+privacy
+policies
+or
+practices
+of
+any
+third
+party
+sites
+or
+services.
## Changes to this Privacy Policy
-This privacy policy may be changed eventually.
-We encourage you to check this Privacy Policy periodically for any changes.
-Any material change will be mentioned in the changelog of the desktop application and in our [blog](https://blog.jabref.org/).
-
-This privacy policy is in effect as of the day mentioned as "last updated" above and will remain in effect except with respect to any changes in its provisions in the future, which will be in effect immediately after being posted on this page.
+This
+privacy
+policy
+may
+be
+changed
+eventually.
+We
+encourage
+you
+to
+check
+this
+Privacy
+Policy
+periodically
+for
+any
+changes.
+Any
+material
+change
+will
+be
+mentioned
+in
+the
+changelog
+of
+the
+desktop
+application
+and
+in
+our [blog](https://blog.jabref.org/).
+
+This
+privacy
+policy
+is
+in
+effect
+as
+of
+the
+day
+mentioned
+as "
+last
+updated"
+above
+and
+will
+remain
+in
+effect
+except
+with
+respect
+to
+any
+changes
+in
+its
+provisions
+in
+the
+future,
+which
+will
+be
+in
+effect
+immediately
+after
+being
+posted
+on
+this
+page.
## Contact
-If you get in touch with us, we may ask you to provide us with certain personal information (e.g. name and email address) to stay in contact with you.
-For any questions or concerns regarding the privacy policy, please send us an email to or write to
-
-JabRef e.V.
-Josef-Lanner-Str. 9
-71069 Sindelfingen
+If
+you
+get
+in
+touch
+with
+us,
+we
+may
+ask
+you
+to
+provide
+us
+with
+certain
+personal
+information (
+e.g.
+name
+and
+email
+address)
+to
+stay
+in
+contact
+with
+you.
+For
+any
+questions
+or
+concerns
+regarding
+the
+privacy
+policy,
+please
+send
+us
+an
+email
+to
+or
+write
+to
+
+JabRef
+e.V.
+Josef-Lanner-Str.
+9
+71069
+Sindelfingen
Germany
diff --git a/jabgui/buildres/macos/README.md b/jabgui/buildres/macos/README.md
index 495b5742d73..1df075ddbba 100644
--- a/jabgui/buildres/macos/README.md
+++ b/jabgui/buildres/macos/README.md
@@ -2,11 +2,73 @@
## Modifying DMG Setup scpt
-Rename `JabRef-dmg-setup.scpt script` to `JabRef-dmg-setup.applescript`.
-Only modify the `JabRef-dmg-setup.applescript` in the macOS Script Editor. Afterwards copy over the file and rename it to `JabRef-dmg-setup.scpt`.
-Normally the `scpt` file is a binary compiled variant and the `.applescript` the uncompiled format but jpackage expects the sctp in uncompiled format
+Rename
+`JabRef-dmg-setup.scpt script`
+to
+`JabRef-dmg-setup.applescript`.
+Only
+modify
+the
+`JabRef-dmg-setup.applescript`
+in
+the
+macOS
+Script
+Editor.
+Afterwards
+copy
+over
+the
+file
+and
+rename
+it
+to
+`JabRef-dmg-setup.scpt`.
+Normally
+the
+`scpt`
+file
+is
+a
+binary
+compiled
+variant
+and
+the
+`.applescript`
+the
+uncompiled
+format
+but
+jpackage
+expects
+the
+sctp
+in
+uncompiled
+format
## Generate iconsets
-To generate icns files use the script under `src/main/resources/icons`
-Install [svg2png](https://formulae.brew.sh/formula/svg2png) and call the script with the svg filename as first argument.
+To
+generate
+icns
+files
+use
+the
+script
+under
+`src/main/resources/icons`
+Install [svg2png](https://formulae.brew.sh/formula/svg2png)
+and
+call
+the
+script
+with
+the
+svg
+filename
+as
+first
+argument.
diff --git a/jabgui/buildres/macos/Resources/native-messaging-host/firefox/org.jabref.jabref.json b/jabgui/buildres/macos/Resources/native-messaging-host/firefox/org.jabref.jabref.json
index 66177c6349e..df296d37c84 100644
--- a/jabgui/buildres/macos/Resources/native-messaging-host/firefox/org.jabref.jabref.json
+++ b/jabgui/buildres/macos/Resources/native-messaging-host/firefox/org.jabref.jabref.json
@@ -3,5 +3,8 @@
"description": "JabRef",
"path": "/Applications/JabRef.app/Contents/Resources/jabrefHost.py",
"type": "stdio",
- "allowed_extensions": ["browserextension@jabref.org", "@jabfox"]
+ "allowed_extensions": [
+ "browserextension@jabref.org",
+ "@jabfox"
+ ]
}
diff --git a/jabgui/src/main/java/org/jabref/gui/DialogService.java b/jabgui/src/main/java/org/jabref/gui/DialogService.java
index 6ac9708018a..788fc20f839 100644
--- a/jabgui/src/main/java/org/jabref/gui/DialogService.java
+++ b/jabgui/src/main/java/org/jabref/gui/DialogService.java
@@ -91,7 +91,7 @@ default Optional showEditableChoiceDialogAndWait(String title, String con
/**
* Create and display error dialog displaying the given exception.
*
- * @param message the error message
+ * @param message the error message
* @param exception the exception causing the error
*/
void showErrorDialogAndWait(String message, Throwable exception);
@@ -233,7 +233,7 @@ Optional showCustomButtonDialogWithTooltipsAndWait(Alert.AlertType t
* Shows a custom dialog and returns the result.
*
* @param dialog dialog to show
- * @param type of result
+ * @param type of result
*/
Optional showCustomDialogAndWait(Dialog dialog);
@@ -241,9 +241,9 @@ Optional showCustomButtonDialogWithTooltipsAndWait(Alert.AlertType t
* Constructs and shows a cancelable {@link ProgressDialog}.
* Clicking cancel will cancel the underlying service and close the dialog
*
- * @param title title of the dialog
+ * @param title title of the dialog
* @param content message to show above the progress bar
- * @param task The {@link Task} which executes the work and for which to show the dialog
+ * @param task The {@link Task} which executes the work and for which to show the dialog
*/
void showProgressDialog(String title, String content, Task task);
@@ -252,9 +252,9 @@ Optional showCustomButtonDialogWithTooltipsAndWait(Alert.AlertType t
* Clicking cancel will cancel the underlying service and close the dialog,
* otherwise will wait for the task to finish.
*
- * @param title title of the dialog
+ * @param title title of the dialog
* @param content message to show above the progress bar
- * @param task The {@link Task} which executes the work and for which to show the dialog
+ * @param task The {@link Task} which executes the work and for which to show the dialog
*/
void showProgressDialogAndWait(String title, String content, Task task);
@@ -263,8 +263,8 @@ Optional showCustomButtonDialogWithTooltipsAndWait(Alert.AlertType t
* Clicking cancel will cancel the underlying service and close the dialog.
* The dialog will exit as soon as none of the background tasks are running
*
- * @param title title of the dialog
- * @param content message to show below the list of background tasks
+ * @param title title of the dialog
+ * @param content message to show below the list of background tasks
* @param stateManager The {@link StateManager} which contains the background tasks
*/
Optional showBackgroundProgressDialogAndWait(String title, String content, StateManager stateManager);
diff --git a/jabgui/src/main/java/org/jabref/gui/LibraryTab.java b/jabgui/src/main/java/org/jabref/gui/LibraryTab.java
index 9a05f0190c3..a8fd2e6e8f6 100644
--- a/jabgui/src/main/java/org/jabref/gui/LibraryTab.java
+++ b/jabgui/src/main/java/org/jabref/gui/LibraryTab.java
@@ -168,9 +168,9 @@ public class LibraryTab extends Tab implements CommandSelectionTab {
/**
* @param isDummyContext Indicates whether the database context is a dummy. A dummy context is used to display a progress indicator while parsing the database.
- * If the context is a dummy, the Lucene index should not be created, as both the dummy context and the actual context share the same index path {@link BibDatabaseContext#getFulltextIndexPath()}.
- * If the index is created for the dummy context, the actual context will not be able to open the index until it is closed by the dummy context.
- * Closing the index takes time and will slow down opening the library.
+ * If the context is a dummy, the Lucene index should not be created, as both the dummy context and the actual context share the same index path {@link BibDatabaseContext#getFulltextIndexPath()}.
+ * If the index is created for the dummy context, the actual context will not be able to open the index until it is closed by the dummy context.
+ * Closing the index takes time and will slow down opening the library.
*/
private LibraryTab(@NonNull BibDatabaseContext bibDatabaseContext,
@NonNull LibraryTabContainer tabContainer,
@@ -1023,7 +1023,7 @@ public void updateNavigationState() {
* Creates a new library tab. Contents are loaded by the {@code dataLoadingTask}. Most of the other parameters are required by {@code resetChangeMonitor()}.
*
* @param dataLoadingTask The task to execute to load the data asynchronously.
- * @param file the path to the file (loaded by the dataLoadingTask)
+ * @param file the path to the file (loaded by the dataLoadingTask)
*/
public static LibraryTab createLibraryTab(BackgroundTask dataLoadingTask,
Path file,
diff --git a/jabgui/src/main/java/org/jabref/gui/autosaveandbackup/BackupManager.java b/jabgui/src/main/java/org/jabref/gui/autosaveandbackup/BackupManager.java
index 983948d5edc..5b8c7c28dbc 100644
--- a/jabgui/src/main/java/org/jabref/gui/autosaveandbackup/BackupManager.java
+++ b/jabgui/src/main/java/org/jabref/gui/autosaveandbackup/BackupManager.java
@@ -126,8 +126,8 @@ public static void discardBackup(BibDatabaseContext bibDatabaseContext, Path bac
* Shuts down the BackupManager which is associated with the given {@link BibDatabaseContext}.
*
* @param bibDatabaseContext Associated {@link BibDatabaseContext}
- * @param backupDir The path to the backup directory
- * @param createBackup True, if a backup should be created
+ * @param backupDir The path to the backup directory
+ * @param createBackup True, if a backup should be created
*/
public static void shutdown(BibDatabaseContext bibDatabaseContext, Path backupDir, boolean createBackup) {
RUNNING_INSTANCES.stream().filter(instance -> instance.bibDatabaseContext == bibDatabaseContext).forEach(backupManager -> backupManager.shutdown(backupDir, createBackup));
@@ -369,7 +369,7 @@ private void fillQueue(Path backupDir) {
* Unregisters the BackupManager from the eventBus of {@link BibDatabaseContext}.
* This method should only be used when closing a database/JabRef in a normal way.
*
- * @param backupDir The backup directory
+ * @param backupDir The backup directory
* @param createBackup If the backup manager should still perform a backup
*/
private void shutdown(Path backupDir, boolean createBackup) {
diff --git a/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangeList.java b/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangeList.java
index be4969d1e52..adcecd87c8d 100644
--- a/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangeList.java
+++ b/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangeList.java
@@ -27,7 +27,7 @@ private DatabaseChangeList() {
* Compares the given two databases, and returns the list of changes required to change the {@code originalDatabase} into the {@code otherDatabase}
*
* @param originalDatabase This is the original database
- * @param otherDatabase This is the other database.
+ * @param otherDatabase This is the other database.
* @return an unmodifiable list of {@code DatabaseChange} required to change {@code originalDatabase} into {@code otherDatabase}
*/
public static List compareAndGetChanges(BibDatabaseContext originalDatabase, BibDatabaseContext otherDatabase, DatabaseChangeResolverFactory databaseChangeResolverFactory) {
diff --git a/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangesResolverDialog.java b/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangesResolverDialog.java
index e6330344814..4e1906c4e8a 100644
--- a/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangesResolverDialog.java
+++ b/jabgui/src/main/java/org/jabref/gui/collab/DatabaseChangesResolverDialog.java
@@ -66,7 +66,7 @@ public class DatabaseChangesResolverDialog extends BaseDialog {
* A dialog going through given changes, which are diffs to the provided database.
* Each accepted change is written to the provided database.
*
- * @param changes The list of changes
+ * @param changes The list of changes
* @param database The database to apply the changes to
*/
public DatabaseChangesResolverDialog(List changes, BibDatabaseContext database, String dialogTitle) {
diff --git a/jabgui/src/main/java/org/jabref/gui/collab/metedatachange/MetadataChangeDetailsView.java b/jabgui/src/main/java/org/jabref/gui/collab/metedatachange/MetadataChangeDetailsView.java
index 4700361558e..15f8242060b 100644
--- a/jabgui/src/main/java/org/jabref/gui/collab/metedatachange/MetadataChangeDetailsView.java
+++ b/jabgui/src/main/java/org/jabref/gui/collab/metedatachange/MetadataChangeDetailsView.java
@@ -38,8 +38,8 @@ public MetadataChangeDetailsView(MetadataChange metadataChange, GlobalCitationKe
* Adds a view for a specific metadata difference to the container.
* Default view if not a group diff.
*
- * @param container The parent container to add the difference view to
- * @param diff The metadata difference to display
+ * @param container The parent container to add the difference view to
+ * @param diff The metadata difference to display
* @param metadataChange The metadata change object containing all changes
*/
private void addDifferenceView(VBox container, MetaDataDiff.Difference diff, MetadataChange metadataChange) {
@@ -176,9 +176,9 @@ private String convertGroupTreeToString(GroupTreeNode node) {
/**
* Recursively appends a group tree node to the string builder.
*
- * @param node The current node to append
+ * @param node The current node to append
* @param builder The string builder to append to
- * @param level The current depth level in the tree (for indentation)
+ * @param level The current depth level in the tree (for indentation)
*/
private void appendGroupTreeNode(GroupTreeNode node, StringBuilder builder, int level) {
builder.append("| ".repeat(level))
diff --git a/jabgui/src/main/java/org/jabref/gui/desktop/os/NativeDesktop.java b/jabgui/src/main/java/org/jabref/gui/desktop/os/NativeDesktop.java
index af7dea79214..56f4db3918d 100644
--- a/jabgui/src/main/java/org/jabref/gui/desktop/os/NativeDesktop.java
+++ b/jabgui/src/main/java/org/jabref/gui/desktop/os/NativeDesktop.java
@@ -172,7 +172,7 @@ private static void openIsbn(String isbn, GuiPreferences preferences) throws IOE
* If the "file" is an online link, instead open it with the browser
*
* @param databaseContext The database this file belongs to.
- * @param link The filename.
+ * @param link The filename.
* @return false if the link couldn't be resolved, true otherwise.
*/
public static boolean openExternalFileAnyFormat(final BibDatabaseContext databaseContext,
@@ -337,7 +337,7 @@ public static NativeDesktop get() {
/**
* Opens a file on an Operating System, using the given application.
*
- * @param filePath The filename.
+ * @param filePath The filename.
* @param application Link to the app that opens the file.
*/
public abstract void openFileWithApplication(String filePath, String application) throws IOException;
diff --git a/jabgui/src/main/java/org/jabref/gui/entryeditor/citationrelationtab/CitationRelationsTab.java b/jabgui/src/main/java/org/jabref/gui/entryeditor/citationrelationtab/CitationRelationsTab.java
index 408b161e615..b06638e62c6 100644
--- a/jabgui/src/main/java/org/jabref/gui/entryeditor/citationrelationtab/CitationRelationsTab.java
+++ b/jabgui/src/main/java/org/jabref/gui/entryeditor/citationrelationtab/CitationRelationsTab.java
@@ -583,7 +583,7 @@ private void showEntrySourceDialog(BibEntry entry) {
/**
* Method to style heading labels
*
- * @param label label to style
+ * @param label label to style
* @param tooltipText tooltip text
*/
private void styleLabel(Label label, String tooltipText) {
@@ -813,7 +813,7 @@ private void importEntries(List entriesToImport, CitationF
* Function to open possible duplicate entries window to compare duplicate entries
*
* @param citationRelationItem duplicate in the citation relations tab
- * @param listView CheckListView to display citations
+ * @param listView CheckListView to display citations
*/
private void openPossibleDuplicateEntriesWindow(CitationRelationItem citationRelationItem, CheckListView listView) {
BibEntry libraryEntry = citationRelationItem.localEntry();
diff --git a/jabgui/src/main/java/org/jabref/gui/exporter/SaveDatabaseAction.java b/jabgui/src/main/java/org/jabref/gui/exporter/SaveDatabaseAction.java
index 882502bdd11..cea77e1c6e3 100644
--- a/jabgui/src/main/java/org/jabref/gui/exporter/SaveDatabaseAction.java
+++ b/jabgui/src/main/java/org/jabref/gui/exporter/SaveDatabaseAction.java
@@ -134,7 +134,7 @@ public void saveSelectedAsPlain() {
/**
* @param file the new file name to save the database to. This is stored in the database context of the panel upon
- * successful save.
+ * successful save.
* @return true on successful save
*/
boolean saveAs(Path file, SaveDatabaseMode mode) {
diff --git a/jabgui/src/main/java/org/jabref/gui/externalfiles/DownloadFullTextAction.java b/jabgui/src/main/java/org/jabref/gui/externalfiles/DownloadFullTextAction.java
index 48d321b1d81..235ad93c04f 100644
--- a/jabgui/src/main/java/org/jabref/gui/externalfiles/DownloadFullTextAction.java
+++ b/jabgui/src/main/java/org/jabref/gui/externalfiles/DownloadFullTextAction.java
@@ -125,8 +125,8 @@ private void downloadFullTexts(Map> downloads, BibDataba
* from the findFullTexts map and then downloads the file into the given targetDirectory
*
* @param databaseContext the active database
- * @param url the url "key"
- * @param entry the entry "value"
+ * @param url the url "key"
+ * @param entry the entry "value"
*/
private void addLinkedFileFromURL(BibDatabaseContext databaseContext, URL url, BibEntry entry) {
LinkedFile newLinkedFile = new LinkedFile(url, "");
diff --git a/jabgui/src/main/java/org/jabref/gui/externalfiles/PdfMergeDialog.java b/jabgui/src/main/java/org/jabref/gui/externalfiles/PdfMergeDialog.java
index 3dd1f38c118..6ea1b65568c 100644
--- a/jabgui/src/main/java/org/jabref/gui/externalfiles/PdfMergeDialog.java
+++ b/jabgui/src/main/java/org/jabref/gui/externalfiles/PdfMergeDialog.java
@@ -28,9 +28,9 @@ public class PdfMergeDialog {
* Thus, JabRef provides this merge dialog that collects the results of all {@link PdfImporter}s
* and gives user a choice between field values.
*
- * @param entry the entry to merge with
- * @param filePath the path to the PDF file. This PDF is used as the source for the {@link PdfImporter}s.
- * @param preferences the preferences to use. Full preference object is required, because of current implementation of {@link MultiMergeEntriesView}.
+ * @param entry the entry to merge with
+ * @param filePath the path to the PDF file. This PDF is used as the source for the {@link PdfImporter}s.
+ * @param preferences the preferences to use. Full preference object is required, because of current implementation of {@link MultiMergeEntriesView}.
* @param taskExecutor the task executor to use when the multi merge dialog executes the importers.
*/
public static MultiMergeEntriesView createMergeDialog(BibEntry entry, Path filePath, GuiPreferences preferences, TaskExecutor taskExecutor) {
diff --git a/jabgui/src/main/java/org/jabref/gui/groups/MoveGroupChange.java b/jabgui/src/main/java/org/jabref/gui/groups/MoveGroupChange.java
index e52f9cbef8d..6dfb6d9fa0e 100644
--- a/jabgui/src/main/java/org/jabref/gui/groups/MoveGroupChange.java
+++ b/jabgui/src/main/java/org/jabref/gui/groups/MoveGroupChange.java
@@ -10,7 +10,7 @@ public class MoveGroupChange {
private int newChildIndex;
/**
- * @param newParent The new parent node to which the node will be moved.
+ * @param newParent The new parent node to which the node will be moved.
* @param newChildIndex The child index at newParent to which the node will be moved.
*/
public MoveGroupChange(GroupTreeNode oldParent, int oldChildIndex, GroupTreeNode newParent, int newChildIndex) {
diff --git a/jabgui/src/main/java/org/jabref/gui/groups/UndoableAddOrRemoveGroup.java b/jabgui/src/main/java/org/jabref/gui/groups/UndoableAddOrRemoveGroup.java
index b95108400a2..3b5634d4d59 100644
--- a/jabgui/src/main/java/org/jabref/gui/groups/UndoableAddOrRemoveGroup.java
+++ b/jabgui/src/main/java/org/jabref/gui/groups/UndoableAddOrRemoveGroup.java
@@ -52,13 +52,13 @@ public class UndoableAddOrRemoveGroup extends AbstractUndoableJabRefEdit {
* Creates an object that can undo/redo an edit event.
*
* @param groupsRoot The global groups root.
- * @param editType The type of editing (ADD_NODE, REMOVE_NODE_KEEP_CHILDREN,
- * REMOVE_NODE_AND_CHILDREN)
+ * @param editType The type of editing (ADD_NODE, REMOVE_NODE_KEEP_CHILDREN,
+ * REMOVE_NODE_AND_CHILDREN)
* @param editedNode The edited node (which was added or will be removed). The node
- * must be a descendant of node groupsRoot ! This means
- * that, in case of adding, you first have to add it to the tree,
- * then call this constructor. When removing, you first have to
- * call this constructor, then remove the node.
+ * must be a descendant of node groupsRoot ! This means
+ * that, in case of adding, you first have to add it to the tree,
+ * then call this constructor. When removing, you first have to
+ * call this constructor, then remove the node.
*/
public UndoableAddOrRemoveGroup(GroupTreeNodeViewModel groupsRoot,
GroupTreeNodeViewModel editedNode, int editType) {
diff --git a/jabgui/src/main/java/org/jabref/gui/icon/IconTheme.java b/jabgui/src/main/java/org/jabref/gui/icon/IconTheme.java
index ebab124881f..d5441aabb3f 100644
--- a/jabgui/src/main/java/org/jabref/gui/icon/IconTheme.java
+++ b/jabgui/src/main/java/org/jabref/gui/icon/IconTheme.java
@@ -118,9 +118,9 @@ public static URL getIconUrl(@NonNull String name) {
* of the '=' character - it simply looks for the first '=' to determine where the key ends.
* Both the key and the value is trimmed for whitespace at the ends.
*
- * @param url The URL to read information from.
+ * @param url The URL to read information from.
* @param prefix A String to prefix to all values read. Can represent e.g. the directory where icon files are to be
- * found.
+ * found.
* @return A Map containing all key-value pairs found.
*/
// FIXME: prefix can be removed?!
diff --git a/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesDialog.java b/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesDialog.java
index 91452fcbed3..b0a6fd8e2b0 100644
--- a/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesDialog.java
+++ b/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesDialog.java
@@ -99,7 +99,7 @@ public class ImportEntriesDialog extends BaseDialog {
* or other file-based sources that don't require pagination or search functionality.
*
* @param database the database to import into
- * @param task the task executed for parsing the selected files(s).
+ * @param task the task executed for parsing the selected files(s).
*/
public ImportEntriesDialog(BibDatabaseContext database, BackgroundTask task) {
this.database = database;
@@ -115,9 +115,9 @@ public ImportEntriesDialog(BibDatabaseContext database, BackgroundTask task, SearchBasedFetcher fetcher, String query) {
this.database = database;
diff --git a/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java b/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java
index 0a39f06c331..09dfc0bbbed 100644
--- a/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java
+++ b/jabgui/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java
@@ -75,7 +75,7 @@ public class ImportEntriesViewModel extends AbstractViewModel {
/**
* @param databaseContext the database to import into
- * @param task the task executed for parsing the selected files(s).
+ * @param task the task executed for parsing the selected files(s).
*/
public ImportEntriesViewModel(BackgroundTask task,
TaskExecutor taskExecutor,
diff --git a/jabgui/src/main/java/org/jabref/gui/importer/NewDatabaseAction.java b/jabgui/src/main/java/org/jabref/gui/importer/NewDatabaseAction.java
index cf446898cee..c25b2c3dda4 100644
--- a/jabgui/src/main/java/org/jabref/gui/importer/NewDatabaseAction.java
+++ b/jabgui/src/main/java/org/jabref/gui/importer/NewDatabaseAction.java
@@ -17,7 +17,7 @@ public class NewDatabaseAction extends SimpleCommand {
* Constructs a command to create a new library of the default type
*
* @param tabContainer the ui container for libraries
- * @param preferences the preferencesService of JabRef
+ * @param preferences the preferencesService of JabRef
*/
public NewDatabaseAction(LibraryTabContainer tabContainer, CliPreferences preferences) {
this.tabContainer = tabContainer;
diff --git a/jabgui/src/main/java/org/jabref/gui/journals/UndoableAbbreviator.java b/jabgui/src/main/java/org/jabref/gui/journals/UndoableAbbreviator.java
index e64b90b879d..14118bb2dcf 100644
--- a/jabgui/src/main/java/org/jabref/gui/journals/UndoableAbbreviator.java
+++ b/jabgui/src/main/java/org/jabref/gui/journals/UndoableAbbreviator.java
@@ -28,9 +28,9 @@ public UndoableAbbreviator(JournalAbbreviationRepository journalAbbreviationRepo
/**
* Abbreviate the journal name of the given entry.
*
- * @param database The database the entry belongs to, or null if no database.
- * @param entry The entry to be treated.
- * @param fieldName The field name (e.g. "journal")
+ * @param database The database the entry belongs to, or null if no database.
+ * @param entry The entry to be treated.
+ * @param fieldName The field name (e.g. "journal")
* @param compoundEdit If the entry is changed, add an edit to this compound.
* @return true if the entry was changed, false otherwise.
*/
diff --git a/jabgui/src/main/java/org/jabref/gui/journals/UndoableUnabbreviator.java b/jabgui/src/main/java/org/jabref/gui/journals/UndoableUnabbreviator.java
index 71e6aee6f3e..ea68d564bd1 100644
--- a/jabgui/src/main/java/org/jabref/gui/journals/UndoableUnabbreviator.java
+++ b/jabgui/src/main/java/org/jabref/gui/journals/UndoableUnabbreviator.java
@@ -22,8 +22,8 @@ public UndoableUnabbreviator(JournalAbbreviationRepository journalAbbreviationRe
/**
* Unabbreviate the journal name of the given entry.
*
- * @param entry The entry to be treated.
- * @param field The field
+ * @param entry The entry to be treated.
+ * @param field The field
* @param compoundEdit If the entry is changed, add an edit to this compound.
* @return true if the entry was changed, false otherwise.
*/
diff --git a/jabgui/src/main/java/org/jabref/gui/keyboard/KeyBindingRepository.java b/jabgui/src/main/java/org/jabref/gui/keyboard/KeyBindingRepository.java
index ce6fece4fda..4aba65b5f03 100644
--- a/jabgui/src/main/java/org/jabref/gui/keyboard/KeyBindingRepository.java
+++ b/jabgui/src/main/java/org/jabref/gui/keyboard/KeyBindingRepository.java
@@ -57,7 +57,7 @@ public KeyBindingRepository(List bindNames, List bindings) {
* Check if the given keyCombination equals the given keyEvent
*
* @param combination as KeyCombination
- * @param keyEvent as KeEvent
+ * @param keyEvent as KeEvent
* @return true if matching, else false
*/
public static boolean checkKeyCombinationEquality(KeyCombination combination, KeyEvent keyEvent) {
@@ -165,7 +165,7 @@ public Optional getKeyCombination(KeyBinding bindName) {
/**
* Check if the given KeyBinding equals the given keyEvent
*
- * @param binding as KeyBinding
+ * @param binding as KeyBinding
* @param keyEvent as KeEvent
* @return true if matching, else false
*/
diff --git a/jabgui/src/main/java/org/jabref/gui/keyboard/WalkthroughKeyBindings.java b/jabgui/src/main/java/org/jabref/gui/keyboard/WalkthroughKeyBindings.java
index ef25cfd3830..37f5b8b1ca9 100644
--- a/jabgui/src/main/java/org/jabref/gui/keyboard/WalkthroughKeyBindings.java
+++ b/jabgui/src/main/java/org/jabref/gui/keyboard/WalkthroughKeyBindings.java
@@ -9,8 +9,8 @@ public class WalkthroughKeyBindings {
/// Handles ESC key to quit active walkthrough with confirmation.
///
- /// @param event the key event
- /// @param stateManager the state manager
+ /// @param event the key event
+ /// @param stateManager the state manager
/// @param keyBindingRepository the key binding repository
public static void call(KeyEvent event, StateManager stateManager, KeyBindingRepository keyBindingRepository) {
keyBindingRepository.mapToKeyBinding(event).ifPresent(binding -> {
diff --git a/jabgui/src/main/java/org/jabref/gui/libraryproperties/general/GeneralPropertiesViewModel.java b/jabgui/src/main/java/org/jabref/gui/libraryproperties/general/GeneralPropertiesViewModel.java
index 4a7e9c15021..84082f94a9b 100644
--- a/jabgui/src/main/java/org/jabref/gui/libraryproperties/general/GeneralPropertiesViewModel.java
+++ b/jabgui/src/main/java/org/jabref/gui/libraryproperties/general/GeneralPropertiesViewModel.java
@@ -287,7 +287,7 @@ public void togglePath(StringProperty fileDirectory) {
/**
* For a saved library, any directory relative to the library path will be set as relative; otherwise, it will be set as absolute.
*
- * @param fileDirectory file directory to be updated (lib/user/laTex)
+ * @param fileDirectory file directory to be updated (lib/user/laTex)
* @param selectedDirPath path of directory (selected by user)
*/
private void setDirectory(StringProperty fileDirectory, Path selectedDirPath) {
diff --git a/jabgui/src/main/java/org/jabref/gui/maintable/ExtractReferencesAction.java b/jabgui/src/main/java/org/jabref/gui/maintable/ExtractReferencesAction.java
index 02474b59304..b962eb1f6a2 100644
--- a/jabgui/src/main/java/org/jabref/gui/maintable/ExtractReferencesAction.java
+++ b/jabgui/src/main/java/org/jabref/gui/maintable/ExtractReferencesAction.java
@@ -59,7 +59,7 @@ public ExtractReferencesAction(DialogService dialogService,
/**
* Can be used to bind the action on a context menu in the linked file view (future work)
*
- * @param entry the entry to handle (can be null)
+ * @param entry the entry to handle (can be null)
* @param linkedFile the linked file (can be null)
*/
private ExtractReferencesAction(@NonNull DialogService dialogService,
diff --git a/jabgui/src/main/java/org/jabref/gui/maintable/MainTable.java b/jabgui/src/main/java/org/jabref/gui/maintable/MainTable.java
index 1c4b34cd2a6..71803bfec1d 100644
--- a/jabgui/src/main/java/org/jabref/gui/maintable/MainTable.java
+++ b/jabgui/src/main/java/org/jabref/gui/maintable/MainTable.java
@@ -276,7 +276,7 @@ public MainTable(MainTableDataModel model,
* If the user presses any other special key as well, e.g. alt or shift we don't jump
*
* @param sortedColumn The sorted column in {@link MainTable}
- * @param keyEvent The pressed character
+ * @param keyEvent The pressed character
*/
private void jumpToSearchKey(TableColumn sortedColumn, KeyEvent keyEvent) {
if (keyEvent.isAltDown() || keyEvent.isControlDown() || keyEvent.isMetaDown() || keyEvent.isShiftDown()) {
diff --git a/jabgui/src/main/java/org/jabref/gui/maintable/MainTableColumnModel.java b/jabgui/src/main/java/org/jabref/gui/maintable/MainTableColumnModel.java
index c9ff44a3865..14fe2f9b025 100644
--- a/jabgui/src/main/java/org/jabref/gui/maintable/MainTableColumnModel.java
+++ b/jabgui/src/main/java/org/jabref/gui/maintable/MainTableColumnModel.java
@@ -102,7 +102,7 @@ public String toString() {
/**
* This is used by the preferences dialog, to initialize available columns the user can add to the table.
*
- * @param type the {@code MainTableColumnModel.Type} of the column, e.g. "NORMALFIELD" or "EXTRAFILE"
+ * @param type the {@code MainTableColumnModel.Type} of the column, e.g. "NORMALFIELD" or "EXTRAFILE"
* @param qualifier the stored qualifier of the column, e.g. "author/editor"
*/
public MainTableColumnModel(@NonNull Type type, @NonNull String qualifier) {
@@ -131,9 +131,9 @@ public MainTableColumnModel(Type type) {
/**
* This is used by the preference migrations.
*
- * @param type the {@code MainTableColumnModel.Type} of the column, e.g. "NORMALFIELD" or "GROUPS"
+ * @param type the {@code MainTableColumnModel.Type} of the column, e.g. "NORMALFIELD" or "GROUPS"
* @param qualifier the stored qualifier of the column, e.g. "author/editor"
- * @param width the stored width of the column
+ * @param width the stored width of the column
*/
public MainTableColumnModel(Type type, String qualifier, double width) {
this(type, qualifier);
diff --git a/jabgui/src/main/java/org/jabref/gui/maintable/MainTableFieldValueFormatter.java b/jabgui/src/main/java/org/jabref/gui/maintable/MainTableFieldValueFormatter.java
index a2838f709c4..afcadc86de0 100644
--- a/jabgui/src/main/java/org/jabref/gui/maintable/MainTableFieldValueFormatter.java
+++ b/jabgui/src/main/java/org/jabref/gui/maintable/MainTableFieldValueFormatter.java
@@ -29,7 +29,7 @@ public MainTableFieldValueFormatter(NameDisplayPreferences nameDisplayPreference
* unicode if possible.
*
* @param fields the fields argument of {@link BibEntryTableViewModel#getFields(OrFields)}.
- * @param entry the BibEntry of {@link BibEntryTableViewModel}.
+ * @param entry the BibEntry of {@link BibEntryTableViewModel}.
* @return The formatted name field.
*/
public String formatFieldsValues(final OrFields fields, final BibEntry entry) {
diff --git a/jabgui/src/main/java/org/jabref/gui/mergeentries/MergeEntriesHelper.java b/jabgui/src/main/java/org/jabref/gui/mergeentries/MergeEntriesHelper.java
index 6061ee7a2b7..4ca43f857e3 100644
--- a/jabgui/src/main/java/org/jabref/gui/mergeentries/MergeEntriesHelper.java
+++ b/jabgui/src/main/java/org/jabref/gui/mergeentries/MergeEntriesHelper.java
@@ -29,8 +29,8 @@ private MergeEntriesHelper() {
/// Merges two BibEntry objects with undo support.
///
- /// @param entryFromFetcher The entry containing new information (source, from the fetcher)
- /// @param entryFromLibrary The entry to be updated (target, from the library)
+ /// @param entryFromFetcher The entry containing new information (source, from the fetcher)
+ /// @param entryFromLibrary The entry to be updated (target, from the library)
/// @param namedCompoundEdit Compound edit to collect undo information
public static boolean mergeEntries(BibEntry entryFromFetcher, BibEntry entryFromLibrary, NamedCompoundEdit namedCompoundEdit) {
LOGGER.debug("Entry from fetcher: {}", entryFromFetcher);
diff --git a/jabgui/src/main/java/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntriesView.java b/jabgui/src/main/java/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntriesView.java
index a5b88d0f1cf..f2499e26c99 100644
--- a/jabgui/src/main/java/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntriesView.java
+++ b/jabgui/src/main/java/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntriesView.java
@@ -217,7 +217,7 @@ private ToggleButton generateEntryHeader(MultiMergeEntriesViewModel.EntrySource
* Adds ToggleButtons for all fields that are set for this BibEntry
*
* @param entrySourceColumn the entry to write
- * @param columnIndex the index of the column to write this entry to
+ * @param columnIndex the index of the column to write this entry to
*/
private void writeBibEntryToColumn(MultiMergeEntriesViewModel.EntrySource entrySourceColumn, int columnIndex) {
for (Map.Entry entry : entrySourceColumn.entryProperty().get().getFieldsObservable().entrySet()) {
@@ -233,7 +233,7 @@ private void writeBibEntryToColumn(MultiMergeEntriesViewModel.EntrySource entryS
* selected.
*
* @param sourceButton the header button to setup
- * @param column the column this button is heading
+ * @param column the column this button is heading
*/
private void setupSourceButtonAction(ToggleButton sourceButton, int column) {
sourceButton.selectedProperty().addListener((observable, oldValue, newValue) -> {
diff --git a/jabgui/src/main/java/org/jabref/gui/openoffice/Bootstrap.java b/jabgui/src/main/java/org/jabref/gui/openoffice/Bootstrap.java
index cccaf6243c7..e21f0710d2f 100644
--- a/jabgui/src/main/java/org/jabref/gui/openoffice/Bootstrap.java
+++ b/jabgui/src/main/java/org/jabref/gui/openoffice/Bootstrap.java
@@ -188,7 +188,7 @@ public static XComponentContext defaultBootstrap_InitialComponentContext() {
/**
* Backwards compatibility stub.
*
- * @param ini_file ini_file (may be null: uno.rc besides cppuhelper lib)
+ * @param ini_file ini_file (may be null: uno.rc besides cppuhelper lib)
* @param bootstrap_parameters bootstrap parameters (maybe null)
* @return a freshly bootstrapped component context.
* @throws Exception if things go awry.
@@ -203,7 +203,7 @@ public static XComponentContext defaultBootstrap_InitialComponentContext(String
* See also
* cppuhelper/defaultBootstrap_InitialComponentContext().
*
- * @param ini_file ini_file (may be null: uno.rc besides cppuhelper lib)
+ * @param ini_file ini_file (may be null: uno.rc besides cppuhelper lib)
* @param bootstrap_parameters bootstrap parameters (maybe null)
* @return a freshly bootstrapped component context.
* @throws Exception if things go awry.
diff --git a/jabgui/src/main/java/org/jabref/gui/openoffice/OOBibBase.java b/jabgui/src/main/java/org/jabref/gui/openoffice/OOBibBase.java
index 7a4e45d18cc..834cb0c3c72 100644
--- a/jabgui/src/main/java/org/jabref/gui/openoffice/OOBibBase.java
+++ b/jabgui/src/main/java/org/jabref/gui/openoffice/OOBibBase.java
@@ -531,14 +531,14 @@ public void guiActionApplyCitationEntries(List citationEntries) {
*
* Note: Undo does not remove or reestablish custom properties.
*
- * @param entries The entries to cite.
+ * @param entries The entries to cite.
* @param bibDatabaseContext The database the entries belong to (all of them). Used when creating the citation mark.
- *
- * Consistency: for each entry in {@code entries}: looking it up in {@code syncOptions.get().databases} (if present) should yield {@code database}.
- * @param style The bibliography style we are using.
- * @param citationType Indicates whether it is an in-text citation, a citation in parenthesis or an invisible citation.
- * @param pageInfo A single page-info for these entries. Attributed to the last entry.
- * @param syncOptions Indicates whether in-text citations should be refreshed in the document. Optional.empty() indicates no refresh. Otherwise provides options for refreshing the reference list.
+ *
+ * Consistency: for each entry in {@code entries}: looking it up in {@code syncOptions.get().databases} (if present) should yield {@code database}.
+ * @param style The bibliography style we are using.
+ * @param citationType Indicates whether it is an in-text citation, a citation in parenthesis or an invisible citation.
+ * @param pageInfo A single page-info for these entries. Attributed to the last entry.
+ * @param syncOptions Indicates whether in-text citations should be refreshed in the document. Optional.empty() indicates no refresh. Otherwise provides options for refreshing the reference list.
*/
public void guiActionInsertEntry(List entries,
BibDatabaseContext bibDatabaseContext,
@@ -841,7 +841,7 @@ public Optional exportCitedHelper(List databases, bool
* GUI action, refreshes citation markers and bibliography.
*
* @param databases Must have at least one.
- * @param style Style.
+ * @param style Style.
*/
public void guiActionUpdateDocument(List databases, OOStyle style) {
final String errorTitle = Localization.lang("Unable to synchronize bibliography");
diff --git a/jabgui/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java b/jabgui/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java
index de8bc8b8b0f..f6f18e84c35 100644
--- a/jabgui/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java
+++ b/jabgui/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java
@@ -509,7 +509,7 @@ private OOBibBase createBibBase(Path loPath) throws BootstrapException, Creation
/**
* Given the withText and inParenthesis options, return the corresponding citationType.
*
- * @param withText False means invisible citation (no text).
+ * @param withText False means invisible citation (no text).
* @param inParenthesis True means "(Au and Thor 2000)". False means "Au and Thor (2000)".
*/
private static CitationType citationTypeFromOptions(boolean withText, boolean inParenthesis) {
diff --git a/jabgui/src/main/java/org/jabref/gui/preferences/PreferencesSearchHandler.java b/jabgui/src/main/java/org/jabref/gui/preferences/PreferencesSearchHandler.java
index 002a87f690e..f188c84700a 100644
--- a/jabgui/src/main/java/org/jabref/gui/preferences/PreferencesSearchHandler.java
+++ b/jabgui/src/main/java/org/jabref/gui/preferences/PreferencesSearchHandler.java
@@ -65,7 +65,7 @@ public void filterTabs(String query) {
/**
* Checks if a tab matches the given search query either by its name or by its controls.
*
- * @param tab The preferences tab to check.
+ * @param tab The preferences tab to check.
* @param query The search query.
* @return True if the tab matches the query.
*/
@@ -93,7 +93,7 @@ private boolean tabMatchesQuery(PreferencesTab tab, String query) {
*
*
* @param control The control to check.
- * @param query The search query.
+ * @param query The search query.
* @return true if the control contains the query, otherwise false.
*/
private boolean controlMatchesQuery(Control control, String query) {
@@ -161,9 +161,9 @@ private ArrayListMultimap getPreferenceTabsControlsMap(
/**
* Recursively scans nodes and collects all controls.
*
- * @param node The current node being scanned.
+ * @param node The current node being scanned.
* @param controlMap Map storing tabs and their corresponding controls.
- * @param tab The PreferencesTab associated with the current node.
+ * @param tab The PreferencesTab associated with the current node.
*/
private void scanControls(Node node, ArrayListMultimap controlMap, PreferencesTab tab) {
if (node instanceof Control control) {
diff --git a/jabgui/src/main/java/org/jabref/gui/preferences/customimporter/CustomImporterTabViewModel.java b/jabgui/src/main/java/org/jabref/gui/preferences/customimporter/CustomImporterTabViewModel.java
index 7bdfc1d01c4..a1053298cc5 100644
--- a/jabgui/src/main/java/org/jabref/gui/preferences/customimporter/CustomImporterTabViewModel.java
+++ b/jabgui/src/main/java/org/jabref/gui/preferences/customimporter/CustomImporterTabViewModel.java
@@ -60,7 +60,7 @@ public void storeSettings() {
* Converts a path relative to a base-path into a class name.
*
* @param basePath base path
- * @param path path that includes base-path as a prefix
+ * @param path path that includes base-path as a prefix
* @return class name
*/
private static String pathToClass(String basePath, Path path) {
diff --git a/jabgui/src/main/java/org/jabref/gui/preferences/preview/PreviewTab.java b/jabgui/src/main/java/org/jabref/gui/preferences/preview/PreviewTab.java
index d27d8a9dd3d..116d3db7f99 100644
--- a/jabgui/src/main/java/org/jabref/gui/preferences/preview/PreviewTab.java
+++ b/jabgui/src/main/java/org/jabref/gui/preferences/preview/PreviewTab.java
@@ -223,7 +223,7 @@ public void initialize() {
* This is called, if a user starts typing some characters into the keyboard with focus on one ListView. The
* ListView will scroll to the next cell with the name of the PreviewLayout fitting those characters.
*
- * @param list The ListView currently focused
+ * @param list The ListView currently focused
* @param keypressed The pressed character
*/
diff --git a/jabgui/src/main/java/org/jabref/gui/slr/ExistingStudySearchAction.java b/jabgui/src/main/java/org/jabref/gui/slr/ExistingStudySearchAction.java
index e1d66d6e074..809d7ba7a76 100644
--- a/jabgui/src/main/java/org/jabref/gui/slr/ExistingStudySearchAction.java
+++ b/jabgui/src/main/java/org/jabref/gui/slr/ExistingStudySearchAction.java
@@ -41,7 +41,7 @@ public class ExistingStudySearchAction extends SimpleCommand {
private final Supplier openDatabaseActionSupplier;
/**
- * @param tabContainer Required to close the tab before the study is updated
+ * @param tabContainer Required to close the tab before the study is updated
* @param openDatabaseActionSupplier Required to open the tab after the study is executed
*/
public ExistingStudySearchAction(
diff --git a/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionView.java b/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionView.java
index c7fe540cccf..fa466e81166 100644
--- a/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionView.java
+++ b/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionView.java
@@ -103,7 +103,7 @@ public ManageStudyDefinitionView(Path pathToStudyDataDirectory) {
/**
* This is used to edit an existing study.
*
- * @param study the study to edit
+ * @param study the study to edit
* @param studyDirectory the directory of the study
*/
public ManageStudyDefinitionView(Study study, Path studyDirectory) {
diff --git a/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionViewModel.java b/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionViewModel.java
index 24a09867f2a..7b8e14ff8a2 100644
--- a/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionViewModel.java
+++ b/jabgui/src/main/java/org/jabref/gui/slr/ManageStudyDefinitionViewModel.java
@@ -89,7 +89,7 @@ public ManageStudyDefinitionViewModel(ImportFormatPreferences importFormatPrefer
/**
* Constructor for an existing study
*
- * @param study The study to initialize the UI from
+ * @param study The study to initialize the UI from
* @param studyDirectory The path where the study resides
*/
public ManageStudyDefinitionViewModel(@NonNull Study study,
diff --git a/jabgui/src/main/java/org/jabref/gui/util/ControlHelper.java b/jabgui/src/main/java/org/jabref/gui/util/ControlHelper.java
index ba392ec62ae..530e555c1d9 100644
--- a/jabgui/src/main/java/org/jabref/gui/util/ControlHelper.java
+++ b/jabgui/src/main/java/org/jabref/gui/util/ControlHelper.java
@@ -103,11 +103,11 @@ public static void removeDroppingPseudoClasses(Cell> cell) {
/**
* If needed, truncates a given string to maxCharacters, adding ellipsisString instead.
*
- * @param text text which should be truncated, if needed
- * @param maxCharacters maximum amount of characters which the resulting text should have, including the
- * ellipsisString; if set to -1, then the default length of 75 characters will be
- * used
- * @param ellipsisString string which should be used for indicating the truncation
+ * @param text text which should be truncated, if needed
+ * @param maxCharacters maximum amount of characters which the resulting text should have, including the
+ * ellipsisString; if set to -1, then the default length of 75 characters will be
+ * used
+ * @param ellipsisString string which should be used for indicating the truncation
* @param ellipsisPosition location in the given text where the truncation should be performed
* @return the new, truncated string
*/
diff --git a/jabgui/src/main/java/org/jabref/gui/util/CustomLocalDragboard.java b/jabgui/src/main/java/org/jabref/gui/util/CustomLocalDragboard.java
index e0d790f85db..6ffdbc2779e 100644
--- a/jabgui/src/main/java/org/jabref/gui/util/CustomLocalDragboard.java
+++ b/jabgui/src/main/java/org/jabref/gui/util/CustomLocalDragboard.java
@@ -22,7 +22,7 @@ public class CustomLocalDragboard {
/**
* Puts the value of the concrete class in a map. All previous content stored in the map is removed
*
- * @param type The Type of the class
+ * @param type The Type of the class
* @param value The value to store
*/
public void putValue(Class type, T value) {
diff --git a/jabgui/src/main/java/org/jabref/gui/util/UiTaskExecutor.java b/jabgui/src/main/java/org/jabref/gui/util/UiTaskExecutor.java
index 4d123477042..a5d82f86029 100644
--- a/jabgui/src/main/java/org/jabref/gui/util/UiTaskExecutor.java
+++ b/jabgui/src/main/java/org/jabref/gui/util/UiTaskExecutor.java
@@ -101,7 +101,7 @@ public static void runInJavaFXThread(Runnable runnable) {
* The JavaFX task executes the call method a background thread and the onFailed onSucceed on the FX UI thread
*
* @param task the BackgroundTask to run
- * @param The background task type
+ * @param The background task type
* @return Future of a JavaFX Task which will execute the call method a background thread
*/
@Override
@@ -125,7 +125,7 @@ public Future execute(BackgroundTask task) {
* Runs the given task and returns a Future representing that task. Usually, you want to use the other method {@link
* #execute(BackgroundTask)}.
*
- * @param type of return value of the task
+ * @param type of return value of the task
* @param task the task to run
*/
public Future execute(Task task) {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughRenderer.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughRenderer.java
index 622686b045d..947da98fae7 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughRenderer.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/WalkthroughRenderer.java
@@ -25,8 +25,8 @@
public class WalkthroughRenderer {
/// Renders a tooltip step into a JavaFX node.
///
- /// @param step The tooltip step to render
- /// @param walkthrough The walkthrough context for navigation
+ /// @param step The tooltip step to render
+ /// @param walkthrough The walkthrough context for navigation
/// @param beforeNavigate Runnable to execute before any navigation action
/// @return The rendered tooltip content node
public Node render(TooltipStep step, Walkthrough walkthrough, Runnable beforeNavigate) {
@@ -56,8 +56,8 @@ public Node render(TooltipStep step, Walkthrough walkthrough, Runnable beforeNav
/// Renders a panel step into a JavaFX node.
///
- /// @param step The panel step to render
- /// @param walkthrough The walkthrough context for navigation
+ /// @param step The panel step to render
+ /// @param walkthrough The walkthrough context for navigation
/// @param beforeNavigate Runnable to execute before any navigation action
/// @return The rendered panel node
public Node render(PanelStep step, Walkthrough walkthrough, Runnable beforeNavigate) {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/NodeResolver.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/NodeResolver.java
index e26445e19b8..71f39814543 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/NodeResolver.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/NodeResolver.java
@@ -131,7 +131,7 @@ static NodeResolver buttonType(@NonNull ButtonType buttonType) {
/// content in the node and the node's LabeledText children. The returned node is
/// guaranteed to be visible.
///
- /// @param selector the style class to match
+ /// @param selector the style class to match
/// @param textMatcher predicate to match text content in LabeledText children
/// @return a resolver that finds the node by style class and text content
static NodeResolver selectorWithText(@NonNull String selector, @NonNull Predicate textMatcher) {
diff --git a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/sideeffect/SideEffectExecutor.java b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/sideeffect/SideEffectExecutor.java
index d6f0c2b5cdd..8c4db4229da 100644
--- a/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/sideeffect/SideEffectExecutor.java
+++ b/jabgui/src/main/java/org/jabref/gui/walkthrough/declarative/sideeffect/SideEffectExecutor.java
@@ -32,7 +32,7 @@ public class SideEffectExecutor {
/// Executes a side effect's forward action, waiting for the expected condition if
/// necessary.
///
- /// @param sideEffect the side effect to execute
+ /// @param sideEffect the side effect to execute
/// @param walkthrough the walkthrough context
/// @return true if the side effect was executed successfully, false otherwise
public boolean executeForward(@NonNull WalkthroughSideEffect sideEffect, @NonNull Walkthrough walkthrough) {
@@ -41,7 +41,7 @@ public boolean executeForward(@NonNull WalkthroughSideEffect sideEffect, @NonNul
/// Executes a side effect's backward action.
///
- /// @param sideEffect the side effect to execute
+ /// @param sideEffect the side effect to execute
/// @param walkthrough the walkthrough context
/// @return true if the side effect was executed successfully, false otherwise
public boolean executeBackward(@NonNull WalkthroughSideEffect sideEffect, @NonNull Walkthrough walkthrough) {
diff --git a/jabgui/src/main/resources/icons/jabref.svg b/jabgui/src/main/resources/icons/jabref.svg
index 35b4d563b8c..109bbaeb0bf 100644
--- a/jabgui/src/main/resources/icons/jabref.svg
+++ b/jabgui/src/main/resources/icons/jabref.svg
@@ -2,51 +2,52 @@
image/svg+xml
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+
+ id="defs3017">
+ height="350.02399"
+ width="350.02399"
+ id="SVGID_1_"
+ x="0"
+ y="0"/>
-
+
+ id="use3021"
+ overflow="visible"
+ xlink:href="#SVGID_1_"
+ style="overflow:visible"
+ x="0"
+ y="0"
+ width="350.02399"
+ height="350.02399"/>
@@ -55,67 +56,73 @@
-
-
+
+
+ style="fill:#4f5f8f;fill-opacity:1" />
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/Base.css b/jabgui/src/main/resources/org/jabref/gui/Base.css
index 953aa5e0bab..302ab094ba2 100644
--- a/jabgui/src/main/resources/org/jabref/gui/Base.css
+++ b/jabgui/src/main/resources/org/jabref/gui/Base.css
@@ -1102,7 +1102,7 @@ TextFlow > .tooltip-text-monospaced {
.mainToolbar .glyph-icon,
.mainToolbar .ikonli-font-icon {
/* `!important` is override library's default font size */
- -fx-font-size: 1.7em!important;
+ -fx-font-size: 1.7em !important;
-fx-fill: -jr-theme-text;
-fx-text-fill: -jr-theme-text;
-fx-icon-color: -jr-theme-text;
@@ -1590,35 +1590,45 @@ We want to have a look that matches our icons in the tool-bar */
.main-table .table-row-cell:matching-search-and-groups {
-fx-background-color: -jr-match-1-even;
}
+
.main-table .table-row-cell:matching-search-and-groups > .table-cell {
-fx-text-fill: -jr-match-1-text-color;
}
+
.main-table .table-row-cell:matching-search-and-groups:focused > .table-cell {
-fx-text-fill: -fx-focused-text-base-color;
}
+
.main-table .table-row-cell:matching-search-and-groups:focused:hover > .table-cell {
-fx-text-fill: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:matching-search-and-groups:focused:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:matching-search-and-groups:hover > .table-cell {
-fx-text-fill: -jr-hover-text;
}
+
.main-table .table-row-cell:matching-search-and-groups > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-match-1-text-color;
}
+
.main-table .table-row-cell:matching-search-and-groups:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-hover-text;
}
+
.main-table .table-row-cell:matching-search-and-groups:odd {
-fx-background-color: -jr-match-1-odd;
}
+
.main-table .table-row-cell:matching-search-and-groups:selected,
.main-table .table-row-cell:matching-search-and-groups:focused,
.main-table .table-row-cell:matching-search-and-groups:focused:hover {
-fx-background-color: -jr-selected;
}
+
.main-table .table-row-cell:matching-search-and-groups:hover {
-fx-background-color: -jr-hover;
}
@@ -1626,36 +1636,46 @@ We want to have a look that matches our icons in the tool-bar */
.main-table .table-row-cell:matching-search-not-groups {
-fx-background-color: -jr-match-2-even;
}
+
.main-table .table-row-cell:matching-search-not-groups > .table-cell {
-fx-text-fill: -jr-match-2-text-color;
}
+
.main-table .table-row-cell:matching-search-not-groups:focused > .table-cell {
-fx-text-fill: -fx-focused-text-base-color;
}
+
.main-table .table-row-cell:matching-search-not-groups:focused:hover > .table-cell {
-fx-text-fill: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:matching-search-not-groups:focused:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:matching-search-not-groups:hover > .table-cell {
-fx-text-fill: -jr-hover-text;
}
+
.main-table .table-row-cell:matching-search-not-groups > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-match-2-text-color;
}
+
.main-table .table-row-cell:matching-search-not-groups:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-hover-text;
}
+
.main-table .table-row-cell:matching-search-not-groups:odd {
-fx-background-color: -jr-match-2-odd;
}
+
.main-table .table-row-cell:matching-search-not-groups:selected,
.main-table .table-row-cell:matching-search-not-groups:focused,
.main-table .table-row-cell:matching-search-not-groups:focused:hover,
.main-table .table-row-cell:matching-search-not-groups:hover {
-fx-background-color: -jr-selected;
}
+
.main-table .table-row-cell:matching-search-not-groups:hover {
-fx-background-color: -jr-hover;
}
@@ -1663,36 +1683,46 @@ We want to have a look that matches our icons in the tool-bar */
.main-table .table-row-cell:matching-groups-not-search {
-fx-background-color: -jr-match-3-even;
}
+
.main-table .table-row-cell:matching-groups-not-search > .table-cell {
-fx-text-fill: -jr-match-3-text-color;
}
+
.main-table .table-row-cell:matching-groups-not-search:focused > .table-cell {
-fx-text-fill: -fx-focused-text-base-color;
}
+
.main-table .table-row-cell:matching-groups-not-search:focused:hover > .table-cell {
-fx-text-fill: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:matching-groups-not-search:focused:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:matching-groups-not-search:hover > .table-cell {
-fx-text-fill: -jr-hover-text;
}
+
.main-table .table-row-cell:matching-groups-not-search > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-match-3-text-color;
}
+
.main-table .table-row-cell:matching-groups-not-search:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-hover-text;
}
+
.main-table .table-row-cell:matching-groups-not-search:odd {
-fx-background-color: -jr-match-3-odd;
}
+
.main-table .table-row-cell:matching-groups-not-search:selected,
.main-table .table-row-cell:matching-groups-not-search:focused,
.main-table .table-row-cell:matching-groups-not-search:focused:hover,
.main-table .table-row-cell:matching-groups-not-search:hover {
-fx-background-color: -jr-selected;
}
+
.main-table .table-row-cell:matching-groups-not-search:hover {
-fx-background-color: -jr-hover;
}
@@ -1700,35 +1730,45 @@ We want to have a look that matches our icons in the tool-bar */
.main-table .table-row-cell:not-matching-search-and-groups {
-fx-background-color: -jr-match-4-even;
}
+
.main-table .table-row-cell:not-matching-search-and-groups > .table-cell {
-fx-text-fill: -jr-match-4-text-color;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:focused > .table-cell {
-fx-text-fill: -fx-focused-text-base-color;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:focused:hover > .table-cell {
-fx-text-fill: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:focused:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-maintable-focused-hover-text;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:hover > .table-cell {
-fx-text-fill: -jr-hover-text;
}
+
.main-table .table-row-cell:not-matching-search-and-groups > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-match-4-text-color;
}
+
.main-table.table-row-cell:not-matching-search-and-groups:hover > .table-cell > .ikonli-font-icon {
-fx-icon-color: -jr-hover-text;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:odd {
-fx-background-color: -jr-match-4-odd;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:selected,
.main-table .table-row-cell:not-matching-search-and-groups:focused,
.main-table .table-row-cell:not-matching-search-and-groups:focused:hover {
-fx-background-color: -jr-selected;
}
+
.main-table .table-row-cell:not-matching-search-and-groups:hover {
-fx-background-color: -jr-hover;
}
@@ -2192,8 +2232,7 @@ We want to have a look that matches our icons in the tool-bar */
#errorConsole .info-section .glyph-icon,
#errorConsole .exception .glyph-icon,
#errorConsole .output .glyph-icon,
-#errorConsole .log .glyph-icon
-{
+#errorConsole .log .glyph-icon {
-fx-font-size: 1.5em;
}
@@ -2990,8 +3029,8 @@ journalInfo .grid-cell-b {
.walkthrough-tooltip-title > *,
.walkthrough-title > * {
- -fx-text-fill: -jr-theme!important;
- -fx-fill: -jr-theme!important;
+ -fx-text-fill: -jr-theme !important;
+ -fx-fill: -jr-theme !important;
-fx-font-weight: bold;
-fx-font-size: 1.75em;
-fx-line-spacing: -0.25em;
diff --git a/jabgui/src/main/resources/org/jabref/gui/Dark.css b/jabgui/src/main/resources/org/jabref/gui/Dark.css
index b14371fceca..70d2e748157 100644
--- a/jabgui/src/main/resources/org/jabref/gui/Dark.css
+++ b/jabgui/src/main/resources/org/jabref/gui/Dark.css
@@ -60,7 +60,7 @@
-jr-drag-target-hover: -jr-accent;
-js-summary-text-color: derive(-fx-light-text-color, 70%);
- -js-summary-text-color-selected: derive( -fx-dark-text-color, 70%);
+ -js-summary-text-color-selected: derive(-fx-dark-text-color, 70%);
-jr-ai-message-user: derive(-jr-theme, -50%);
-jr-ai-message-ai: derive(-jr-theme, -75%);
@@ -105,11 +105,11 @@
-fx-background-color: -fx-control-inner-background;
}
-.table-row-cell:odd{
- -fx-background-color:#272b38;
+.table-row-cell:odd {
+ -fx-background-color: #272b38;
}
-.table-row-cell:even{
+.table-row-cell:even {
-fx-background-color: #212330;
}
diff --git a/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/AiChatComponent.fxml b/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/AiChatComponent.fxml
index 49a9123084a..bb12d52bf1a 100644
--- a/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/AiChatComponent.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/AiChatComponent.fxml
@@ -2,6 +2,7 @@
+
@@ -11,24 +12,44 @@
-
-
+
-
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
@@ -37,12 +58,16 @@
styleClass="icon-button,narrow"
textAlignment="CENTER">
-
+
-
+
-
+
@@ -51,10 +76,12 @@
styleClass="icon-button,narrow"
textAlignment="CENTER">
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chathistory/ChatHistoryComponent.fxml b/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chathistory/ChatHistoryComponent.fxml
index 0c6adb56cb9..5f61daaeb14 100644
--- a/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chathistory/ChatHistoryComponent.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chathistory/ChatHistoryComponent.fxml
@@ -3,14 +3,19 @@
-
-
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chatmessage/ChatMessageComponent.fxml b/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chatmessage/ChatMessageComponent.fxml
index 481f2c8d90b..8ddc2d64eab 100644
--- a/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chatmessage/ChatMessageComponent.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/ai/components/aichat/chatmessage/ChatMessageComponent.fxml
@@ -5,33 +5,49 @@
+
-
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/ai/components/privacynotice/PrivacyNoticeComponent.fxml b/jabgui/src/main/resources/org/jabref/gui/ai/components/privacynotice/PrivacyNoticeComponent.fxml
index 485a1a3f545..41cf97b49be 100644
--- a/jabgui/src/main/resources/org/jabref/gui/ai/components/privacynotice/PrivacyNoticeComponent.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/ai/components/privacynotice/PrivacyNoticeComponent.fxml
@@ -8,19 +8,36 @@
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/ai/components/summary/SummaryShowingComponent.fxml b/jabgui/src/main/resources/org/jabref/gui/ai/components/summary/SummaryShowingComponent.fxml
index e0e0bfb6c66..90222cf4657 100644
--- a/jabgui/src/main/resources/org/jabref/gui/ai/components/summary/SummaryShowingComponent.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/ai/components/summary/SummaryShowingComponent.fxml
@@ -1,26 +1,48 @@
-
-
+
-
+
-
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/ai/components/util/errorstate/ErrorStateComponent.fxml b/jabgui/src/main/resources/org/jabref/gui/ai/components/util/errorstate/ErrorStateComponent.fxml
index 79353bcae55..4e4a6641414 100644
--- a/jabgui/src/main/resources/org/jabref/gui/ai/components/util/errorstate/ErrorStateComponent.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/ai/components/util/errorstate/ErrorStateComponent.fxml
@@ -5,24 +5,38 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/auximport/FromAuxDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/auximport/FromAuxDialog.fxml
index f8cc349381c..5f1bca0c9ec 100644
--- a/jabgui/src/main/resources/org/jabref/gui/auximport/FromAuxDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/auximport/FromAuxDialog.fxml
@@ -13,26 +13,41 @@
-
+
-
-
+
+
+ minWidth="20.0"
+ minHeight="20.0"
+ prefHeight="20.0"
+ prefWidth="20.0">
-
+
-
+
-
+
@@ -40,18 +55,32 @@
-
+
-
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/cleanup/CleanupPresetPanel.fxml b/jabgui/src/main/resources/org/jabref/gui/cleanup/CleanupPresetPanel.fxml
index f6421d75a4d..fd498aa2640 100644
--- a/jabgui/src/main/resources/org/jabref/gui/cleanup/CleanupPresetPanel.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/cleanup/CleanupPresetPanel.fxml
@@ -6,47 +6,82 @@
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/collab/DatabaseChangesResolverDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/collab/DatabaseChangesResolverDialog.fxml
index d1cf7444138..4a51a68e28e 100644
--- a/jabgui/src/main/resources/org/jabref/gui/collab/DatabaseChangesResolverDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/collab/DatabaseChangesResolverDialog.fxml
@@ -11,30 +11,66 @@
-
+
-
+
-
+
-
+
-
-
-
+
+
+
+ maxWidth="Infinity"
+ onAction="#askUserToResolveChange"
+ text="Merge.."/>
-
+
-
+
@@ -42,5 +78,6 @@
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/CitationKeyPatternsPanel.fxml b/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/CitationKeyPatternsPanel.fxml
index 5f050fe5716..1ad8fa7187f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/CitationKeyPatternsPanel.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/CitationKeyPatternsPanel.fxml
@@ -2,16 +2,35 @@
-
+
-
-
-
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/FieldFormatterCleanupsPanel.fxml b/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/FieldFormatterCleanupsPanel.fxml
index 76b69546367..23cac6db02f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/FieldFormatterCleanupsPanel.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/FieldFormatterCleanupsPanel.fxml
@@ -10,59 +10,107 @@
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/SaveOrderConfigPanel.fxml b/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/SaveOrderConfigPanel.fxml
index 01a277628ba..e0d5d7a8191 100644
--- a/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/SaveOrderConfigPanel.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/commonfxcontrols/SaveOrderConfigPanel.fxml
@@ -7,42 +7,70 @@
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencyCheckDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencyCheckDialog.fxml
index 8aedf900583..504537bb009 100644
--- a/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencyCheckDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencyCheckDialog.fxml
@@ -4,43 +4,65 @@
-
-
+
-
+
-
+
-
+
-
+
-
-
-
-
+
+
+
+
+ styleClass="icon-button"
+ prefHeight="20.0"
+ prefWidth="20.0"
+ alignment="CENTER_RIGHT">
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencySymbolsDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencySymbolsDialog.fxml
index bebeeb263eb..c141307bc11 100644
--- a/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencySymbolsDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/consistency/ConsistencySymbolsDialog.fxml
@@ -5,25 +5,36 @@
-
+
-
-
-
-
-
-
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/copyfiles/CopyFilesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/copyfiles/CopyFilesDialog.fxml
index 26571396eca..d4c926084bf 100644
--- a/jabgui/src/main/resources/org/jabref/gui/copyfiles/CopyFilesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/copyfiles/CopyFilesDialog.fxml
@@ -4,20 +4,36 @@
-
+
-
+
-
-
-
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/documentviewer/DocumentViewer.fxml b/jabgui/src/main/resources/org/jabref/gui/documentviewer/DocumentViewer.fxml
index 668181e7438..3130842f660 100644
--- a/jabgui/src/main/resources/org/jabref/gui/documentviewer/DocumentViewer.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/documentviewer/DocumentViewer.fxml
@@ -2,36 +2,59 @@
-
-
+
-
+
-
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/ManageKeywordsDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/ManageKeywordsDialog.fxml
index 609c6655bb9..bbb394518b7 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/ManageKeywordsDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/ManageKeywordsDialog.fxml
@@ -8,35 +8,63 @@
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/ReplaceString.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/ReplaceString.fxml
index 1800ac172fa..f725d5b9a58 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/ReplaceString.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/ReplaceString.fxml
@@ -11,56 +11,130 @@
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.fxml
index ad0af7f0039..6f19d0969a8 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.fxml
@@ -3,12 +3,21 @@
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/clearcontent/ClearContentTab.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/clearcontent/ClearContentTab.fxml
index 9a76ada3a3c..473491b6d8d 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/clearcontent/ClearContentTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/clearcontent/ClearContentTab.fxml
@@ -11,24 +11,54 @@
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
+ maxHeight="1.7976931348623157E308"
+ maxWidth="1.7976931348623157E308"
+ minHeight="-Infinity"
+ minWidth="-Infinity"
+ GridPane.hgrow="ALWAYS"
+ GridPane.rowSpan="2"
+ GridPane.vgrow="ALWAYS">
@@ -36,16 +66,30 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml
index e1224762e4a..46f6a4ab2e9 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml
@@ -9,31 +9,61 @@
-
-
-
-
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/editfieldcontent/EditFieldContentTab.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/editfieldcontent/EditFieldContentTab.fxml
index 72ddd2de3f1..b0dac3f1cb1 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/editfieldcontent/EditFieldContentTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/editfieldcontent/EditFieldContentTab.fxml
@@ -8,19 +8,38 @@
-
-
+
+
-
-
+
+
-
+
-
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml
index ebd5968f9b4..d945ff10757 100644
--- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml
@@ -6,14 +6,26 @@
-
-
-
+
+
-
-
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/entryeditor/EntryEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/entryeditor/EntryEditor.fxml
index bc5add45b73..e236f99caf7 100644
--- a/jabgui/src/main/resources/org/jabref/gui/entryeditor/EntryEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/entryeditor/EntryEditor.fxml
@@ -11,89 +11,123 @@
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/entryeditor/fileannotationtab/FileAnnotationTab.fxml b/jabgui/src/main/resources/org/jabref/gui/entryeditor/fileannotationtab/FileAnnotationTab.fxml
index 77091fba84e..c1829bfa10d 100644
--- a/jabgui/src/main/resources/org/jabref/gui/entryeditor/fileannotationtab/FileAnnotationTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/entryeditor/fileannotationtab/FileAnnotationTab.fxml
@@ -13,20 +13,32 @@
-
-
+
+
-
-
-
+
+
+
-
+
@@ -35,19 +47,28 @@
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/errorconsole/ErrorConsole.fxml b/jabgui/src/main/resources/org/jabref/gui/errorconsole/ErrorConsole.fxml
index 69a34914e3e..a593e42e2be 100644
--- a/jabgui/src/main/resources/org/jabref/gui/errorconsole/ErrorConsole.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/errorconsole/ErrorConsole.fxml
@@ -5,23 +5,40 @@
-
+
-
+
-
-
-
-
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/exporter/CreateModifyExporterDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/exporter/CreateModifyExporterDialog.fxml
index e01fb6c255c..b48ca2f1d72 100644
--- a/jabgui/src/main/resources/org/jabref/gui/exporter/CreateModifyExporterDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/exporter/CreateModifyExporterDialog.fxml
@@ -12,44 +12,84 @@
-
+
-
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
-
+
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/externalfiles/UnlinkedFilesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/externalfiles/UnlinkedFilesDialog.fxml
index c6ed1dbea01..9adde27feb5 100644
--- a/jabgui/src/main/resources/org/jabref/gui/externalfiles/UnlinkedFilesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/externalfiles/UnlinkedFilesDialog.fxml
@@ -22,88 +22,174 @@
-
+
-
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
-
+
+
+
-
-
+
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationCountEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationCountEditor.fxml
index 89f7f29bffa..fd605100035 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationCountEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationCountEditor.fxml
@@ -2,21 +2,31 @@
-
-
-
-
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationKeyEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationKeyEditor.fxml
index fcb4b34414c..80589840c07 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationKeyEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/CitationKeyEditor.fxml
@@ -3,8 +3,14 @@
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/DateEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/DateEditor.fxml
index 66e5a9f23f0..0cb8063dd60 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/DateEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/DateEditor.fxml
@@ -2,8 +2,15 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ICORERankingEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ICORERankingEditor.fxml
index a6c22cc1958..166008a4d99 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ICORERankingEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ICORERankingEditor.fxml
@@ -4,21 +4,27 @@
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ISSNEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ISSNEditor.fxml
index 7358de4c2b1..490559d11c0 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ISSNEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/ISSNEditor.fxml
@@ -5,24 +5,31 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/JournalEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/JournalEditor.fxml
index 3e510e84fd9..df7a57a1dba 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/JournalEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/JournalEditor.fxml
@@ -6,27 +6,35 @@
-
-
+
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/KeywordsEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/KeywordsEditor.fxml
index 0f96aca52a8..9e91603edaf 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/KeywordsEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/KeywordsEditor.fxml
@@ -2,7 +2,12 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedEntriesEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedEntriesEditor.fxml
index 10d87fdc46e..793f7291d0e 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedEntriesEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedEntriesEditor.fxml
@@ -2,7 +2,12 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedFilesEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedFilesEditor.fxml
index cbe2d08cc96..827a74ad63c 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedFilesEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/LinkedFilesEditor.fxml
@@ -8,35 +8,55 @@
-
-
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/OwnerEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/OwnerEditor.fxml
index ee178badcb9..f75fe6d9c56 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/OwnerEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/OwnerEditor.fxml
@@ -5,16 +5,24 @@
-
-
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/UrlEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/UrlEditor.fxml
index 99f8b179e7d..72d0f95e6fe 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/UrlEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/UrlEditor.fxml
@@ -5,16 +5,25 @@
-
-
-
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/identifier/IdentifierEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/identifier/IdentifierEditor.fxml
index 03643fa2e03..ccc973a4901 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/identifier/IdentifierEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/identifier/IdentifierEditor.fxml
@@ -7,46 +7,64 @@
-
-
-
+
+
-
+
-
-
+
-
+
-
-
-
+
+
-
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/journalinfo/JournalInfo.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/journalinfo/JournalInfo.fxml
index e822c9d6632..cb680e34dae 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/journalinfo/JournalInfo.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/journalinfo/JournalInfo.fxml
@@ -10,136 +10,266 @@
-
-
+
+
-
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/optioneditors/OptionEditor.fxml b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/optioneditors/OptionEditor.fxml
index 52f4979fb6b..7dc0448dd08 100644
--- a/jabgui/src/main/resources/org/jabref/gui/fieldeditors/optioneditors/OptionEditor.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/fieldeditors/optioneditors/OptionEditor.fxml
@@ -2,8 +2,16 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/git/GitCommitDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/git/GitCommitDialog.fxml
index 3fe7de19dc5..4147fcb8f33 100644
--- a/jabgui/src/main/resources/org/jabref/gui/git/GitCommitDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/git/GitCommitDialog.fxml
@@ -15,17 +15,25 @@
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/git/GitShareToGitHubDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/git/GitShareToGitHubDialog.fxml
index 9be9bc20f08..522d8626844 100644
--- a/jabgui/src/main/resources/org/jabref/gui/git/GitShareToGitHubDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/git/GitShareToGitHubDialog.fxml
@@ -25,12 +25,18 @@
vgap="10.0"
prefWidth="568.0">
-
+
-
-
-
+
+
+
-
-
+
@@ -56,11 +65,21 @@
GridPane.rowIndex="1"
GridPane.columnIndex="1"/>
-
-
-
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/groups/GroupDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/groups/GroupDialog.fxml
index 324ed9ca48a..613c9945bc7 100644
--- a/jabgui/src/main/resources/org/jabref/gui/groups/GroupDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/groups/GroupDialog.fxml
@@ -16,127 +16,198 @@
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+ layoutX="10.0"
+ layoutY="10.0"
+ minWidth="130.0"
+ maxWidth="130.0"
+ prefWidth="130.0"
+ spacing="10.0">
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
@@ -144,43 +215,59 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
@@ -188,6 +275,9 @@
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/help/AboutDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/help/AboutDialog.fxml
index 6e0cbfa4bf8..fe2f7da2059 100644
--- a/jabgui/src/main/resources/org/jabref/gui/help/AboutDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/help/AboutDialog.fxml
@@ -15,83 +15,151 @@
-
+
-
+
-
-
+
+
-
+
-
-
+
-
-
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/importer/GenerateEntryFromIdDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/importer/GenerateEntryFromIdDialog.fxml
index 24567376a72..53a8585e021 100644
--- a/jabgui/src/main/resources/org/jabref/gui/importer/GenerateEntryFromIdDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/importer/GenerateEntryFromIdDialog.fxml
@@ -5,12 +5,51 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/importer/ImportCustomEntryTypesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/importer/ImportCustomEntryTypesDialog.fxml
index 37a5a1ba3db..64eb567b4c0 100644
--- a/jabgui/src/main/resources/org/jabref/gui/importer/ImportCustomEntryTypesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/importer/ImportCustomEntryTypesDialog.fxml
@@ -5,20 +5,27 @@
-
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/importer/ImportEntriesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/importer/ImportEntriesDialog.fxml
index cfd2c561185..19b9cd09318 100644
--- a/jabgui/src/main/resources/org/jabref/gui/importer/ImportEntriesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/importer/ImportEntriesDialog.fxml
@@ -13,63 +13,118 @@
-
+
-
-
+
+
-
-
+
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/integrity/BibLogSettingsPane.fxml b/jabgui/src/main/resources/org/jabref/gui/integrity/BibLogSettingsPane.fxml
index 5b9355a5730..c51301c0d07 100644
--- a/jabgui/src/main/resources/org/jabref/gui/integrity/BibLogSettingsPane.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/integrity/BibLogSettingsPane.fxml
@@ -4,7 +4,6 @@
-
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/integrity/IntegrityCheckDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/integrity/IntegrityCheckDialog.fxml
index eec9f3946c9..078083981c3 100644
--- a/jabgui/src/main/resources/org/jabref/gui/integrity/IntegrityCheckDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/integrity/IntegrityCheckDialog.fxml
@@ -3,34 +3,69 @@
-
-
-
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/LibraryProperties.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/LibraryProperties.fxml
index b3eaec62c19..5f4bee2a079 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/LibraryProperties.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/LibraryProperties.fxml
@@ -3,12 +3,21 @@
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/constants/ConstantsProperties.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/constants/ConstantsProperties.fxml
index 0ea11f1d4c9..5cd01cfef3e 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/constants/ConstantsProperties.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/constants/ConstantsProperties.fxml
@@ -8,38 +8,66 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/contentselectors/ContentSelector.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/contentselectors/ContentSelector.fxml
index 382da4d7050..a6d4202e8c9 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/contentselectors/ContentSelector.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/contentselectors/ContentSelector.fxml
@@ -6,39 +6,64 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/general/GeneralProperties.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/general/GeneralProperties.fxml
index c99dd92bca4..c2060d1901a 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/general/GeneralProperties.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/general/GeneralProperties.fxml
@@ -10,13 +10,19 @@
-
-
+
+
-
+
@@ -29,107 +35,172 @@
-
+
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="1"/>
+
-
+
-
+
-
+
-
+
+ styleClass="icon-button,narrow"
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="3"
+ GridPane.rowIndex="1">
-
+
-
+
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="2"/>
+
-
+
-
+
-
+
-
+
+ styleClass="icon-button,narrow"
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="3"
+ GridPane.rowIndex="2">
-
+
-
+
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="3"/>
+
-
+
-
+
-
+
-
+
+ styleClass="icon-button,narrow"
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="3"
+ GridPane.rowIndex="3">
-
+
-
+
-
+
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="5"/>
+
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="6"/>
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/keypattern/KeyPatternProperties.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/keypattern/KeyPatternProperties.fxml
index c8fcc23c723..7bdc313f913 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/keypattern/KeyPatternProperties.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/keypattern/KeyPatternProperties.fxml
@@ -7,19 +7,31 @@
-
-
-
-
+
+
+
+
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/preamble/PreambleProperties.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/preamble/PreambleProperties.fxml
index 1b0af2fe228..31561fac296 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/preamble/PreambleProperties.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/preamble/PreambleProperties.fxml
@@ -3,9 +3,17 @@
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/saving/SavingProperties.fxml b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/saving/SavingProperties.fxml
index 03d828fb2ec..26179db1ebf 100644
--- a/jabgui/src/main/resources/org/jabref/gui/libraryproperties/saving/SavingProperties.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/libraryproperties/saving/SavingProperties.fxml
@@ -6,19 +6,28 @@
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/linkedfile/LinkedFileEditDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/linkedfile/LinkedFileEditDialog.fxml
index e0f29378b21..de924dac0af 100644
--- a/jabgui/src/main/resources/org/jabref/gui/linkedfile/LinkedFileEditDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/linkedfile/LinkedFileEditDialog.fxml
@@ -10,15 +10,27 @@
-
+
-
+
-
-
-
+
+
+
@@ -28,30 +40,52 @@
-
-
+
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="2">
-
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntries.fxml b/jabgui/src/main/resources/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntries.fxml
index 37c26bc136e..88898873817 100644
--- a/jabgui/src/main/resources/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntries.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/mergeentries/multiwaymerge/MultiMergeEntries.fxml
@@ -10,45 +10,88 @@
-
+
-
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/mergeentries/threewaymerge/toolbar/ThreeWayMergeToolbar.fxml b/jabgui/src/main/resources/org/jabref/gui/mergeentries/threewaymerge/toolbar/ThreeWayMergeToolbar.fxml
index 1b78da8e6cf..30f7259ee63 100644
--- a/jabgui/src/main/resources/org/jabref/gui/mergeentries/threewaymerge/toolbar/ThreeWayMergeToolbar.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/mergeentries/threewaymerge/toolbar/ThreeWayMergeToolbar.fxml
@@ -11,45 +11,102 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/newentry/NewEntry.fxml b/jabgui/src/main/resources/org/jabref/gui/newentry/NewEntry.fxml
index b778bbc45a5..0501ae86582 100644
--- a/jabgui/src/main/resources/org/jabref/gui/newentry/NewEntry.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/newentry/NewEntry.fxml
@@ -14,127 +14,241 @@
+
-
-
+
-
-
+
+
-
-
+
+
-
+
+
+
-
-
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
+
+
-
-
+
+
+
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
-
+
+
+
+
+
+
+
-
-
+
+
+
+
-
+
-
+
+
+
-
-
+
+
+
+
+
+
-
-
+
+
-
+
-
+
-
+
+
+
-
+
+
+
-
+
-
+
+
+
-
-
+
+
+
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/openoffice/AdvancedCiteDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/openoffice/AdvancedCiteDialog.fxml
index 582431c5913..85e48fadc9f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/openoffice/AdvancedCiteDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/openoffice/AdvancedCiteDialog.fxml
@@ -7,25 +7,42 @@
-
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/openoffice/ManageCitationsDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/openoffice/ManageCitationsDialog.fxml
index b76aabee96e..4d6fccf48e7 100644
--- a/jabgui/src/main/resources/org/jabref/gui/openoffice/ManageCitationsDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/openoffice/ManageCitationsDialog.fxml
@@ -4,19 +4,35 @@
-
+
-
+
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/openoffice/ModifyCSLBibliographyPropertiesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/openoffice/ModifyCSLBibliographyPropertiesDialog.fxml
index 76938fa567a..b27050ae4ce 100644
--- a/jabgui/src/main/resources/org/jabref/gui/openoffice/ModifyCSLBibliographyPropertiesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/openoffice/ModifyCSLBibliographyPropertiesDialog.fxml
@@ -5,18 +5,42 @@
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/openoffice/StyleSelectDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/openoffice/StyleSelectDialog.fxml
index ec629bedada..96863b35cf6 100644
--- a/jabgui/src/main/resources/org/jabref/gui/openoffice/StyleSelectDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/openoffice/StyleSelectDialog.fxml
@@ -12,77 +12,155 @@
-
+
-
-
-
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
+
+
-
+
-
+
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesDialog.fxml
index 76088a729df..53617ad9224 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesDialog.fxml
@@ -13,69 +13,119 @@
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesFilterDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesFilterDialog.fxml
index eae2550fb5e..0123a06577d 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesFilterDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/PreferencesFilterDialog.fxml
@@ -11,8 +11,12 @@
-
+
@@ -23,21 +27,34 @@
-
+
-
+
-
+
-
-
-
-
+
+
+
+
@@ -46,5 +63,6 @@
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/ai/AiTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/ai/AiTab.fxml
index d32fe92c2ce..7e1079bbd32 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/ai/AiTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/ai/AiTab.fxml
@@ -12,15 +12,14 @@
+
+
-
-
-
-
+
-
-
+
+
@@ -110,21 +113,25 @@
+ GridPane.rowIndex="0"
+ GridPane.columnIndex="0"/>
+ GridPane.rowIndex="0"
+ GridPane.columnIndex="1"/>
+ GridPane.rowIndex="1"
+ GridPane.columnIndex="0"/>
+ GridPane.rowIndex="1"
+ GridPane.columnIndex="1"/>
@@ -144,7 +151,8 @@
-
+
-
+
-
-
+
+
-
+
@@ -191,7 +207,9 @@
HBox.hgrow="ALWAYS"/>
-
+
@@ -200,7 +218,9 @@
HBox.hgrow="ALWAYS"/>
-
+
@@ -209,7 +229,9 @@
HBox.hgrow="ALWAYS"/>
-
+
@@ -218,7 +240,9 @@
HBox.hgrow="ALWAYS"/>
-
+
@@ -227,7 +251,9 @@
HBox.hgrow="ALWAYS"/>
-
+
@@ -259,57 +285,76 @@
prefWidth="20.0"/>
-
+
-
+ text="%System message for chatting"
+ closable="false">
+
-
+ text="%User message for chatting"
+ closable="false">
+
-
+ text="%System message for summarization of a chunk"
+ closable="false">
+
-
+ text="%User message for summarization of a chunk"
+ closable="false">
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
@@ -319,15 +364,17 @@
maxWidth="Infinity"
HBox.hgrow="ALWAYS"/>
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/autocompletion/AutoCompletionTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/autocompletion/AutoCompletionTab.fxml
index 09ac50e21ee..767258157e0 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/autocompletion/AutoCompletionTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/autocompletion/AutoCompletionTab.fxml
@@ -8,40 +8,72 @@
-
+
-
-
+
+
-
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.fxml
index f280eca3167..7237bbb57d8 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.fxml
@@ -13,81 +13,137 @@
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+ GridPane.columnIndex="0"
+ GridPane.columnSpan="3"
+ GridPane.rowIndex="2">
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="7"/>
+
+
-
+
-
+
-
+ GridPane.columnIndex="0"
+ GridPane.rowIndex="8"/>
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/customentrytypes/CustomEntryTypesTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/customentrytypes/CustomEntryTypesTab.fxml
index 5dbb82e844b..1990561768d 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/customentrytypes/CustomEntryTypesTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/customentrytypes/CustomEntryTypesTab.fxml
@@ -11,74 +11,122 @@
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
+
-
+
+ prefHeight="20.0"
+ prefWidth="20.0"
+ styleClass="icon-button,narrow"
+ onAction="#addEntryType">
-
+
-
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
+
-
-
+
+
+ prefHeight="20.0"
+ prefWidth="20.0"
+ styleClass="icon-button,narrow"
+ onAction="#addNewField">
-
+
-
+
-
-
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/customexporter/CustomExporterTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/customexporter/CustomExporterTab.fxml
index 504d4adbb7f..1b57c1af66a 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/customexporter/CustomExporterTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/customexporter/CustomExporterTab.fxml
@@ -7,37 +7,59 @@
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/customimporter/CustomImporterTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/customimporter/CustomImporterTab.fxml
index bddf9d4ed68..c9b12fcd336 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/customimporter/CustomImporterTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/customimporter/CustomImporterTab.fxml
@@ -7,32 +7,52 @@
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/entry/EntryTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/entry/EntryTab.fxml
index a7f212cf8fc..ba89a21af2d 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/entry/EntryTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/entry/EntryTab.fxml
@@ -9,23 +9,39 @@
-
-
+
+
-
+
-
+
-
+
-
-
-
-
+
+
+
+
@@ -35,25 +51,44 @@
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/entryeditor/EntryEditorTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/entryeditor/EntryEditorTab.fxml
index 84d8d5836dd..7c0b7e974b2 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/entryeditor/EntryEditorTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/entryeditor/EntryEditorTab.fxml
@@ -10,54 +10,94 @@
-
-
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/export/ExportTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/export/ExportTab.fxml
index c5b107c39c9..35da503d09f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/export/ExportTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/export/ExportTab.fxml
@@ -3,11 +3,17 @@
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/external/ExternalTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/external/ExternalTab.fxml
index 8db73e2b093..15b6c1e413f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/external/ExternalTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/external/ExternalTab.fxml
@@ -12,109 +12,197 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
+
-
+
-
-
+
+
-
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="2"
+ GridPane.rowIndex="2"/>
+
-
+
-
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
+
-
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="2">
-
+
-
+
-
-
+
+
-
+
-
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="2"
+ GridPane.rowIndex="1">
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/EditExternalFileTypeEntryDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/EditExternalFileTypeEntryDialog.fxml
index d197a829648..ca5f5ca3879 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/EditExternalFileTypeEntryDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/EditExternalFileTypeEntryDialog.fxml
@@ -10,42 +10,119 @@
-
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/ExternalFileTypesTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/ExternalFileTypesTab.fxml
index 040bb446dc7..7ac24bb5ccb 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/ExternalFileTypesTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/externalfiletypes/ExternalFileTypesTab.fxml
@@ -7,33 +7,65 @@
-
-
-
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/general/GeneralTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/general/GeneralTab.fxml
index 6a4f71c5a36..9453b7595dd 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/general/GeneralTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/general/GeneralTab.fxml
@@ -14,38 +14,75 @@
-
-
-
+
+
+
-
-
-
+
+
+
-
+
-
+ GridPane.rowIndex="1"
+ GridPane.columnIndex="0"/>
+
-
-
-
-
-
+ GridPane.rowIndex="2"
+ GridPane.columnIndex="0"/>
+
+
+
+
+
-
+
-
+
@@ -53,80 +90,151 @@
-
-
+
+
-
+
-
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="2">
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/groups/GroupsTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/groups/GroupsTab.fxml
index dafe1478ab5..863a0c97fc1 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/groups/GroupsTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/groups/GroupsTab.fxml
@@ -5,19 +5,33 @@
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/journals/JournalAbbreviationsTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/journals/JournalAbbreviationsTab.fxml
index f909ee6a3d6..5e61d63a372 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/journals/JournalAbbreviationsTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/journals/JournalAbbreviationsTab.fxml
@@ -13,76 +13,134 @@
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/keybindings/KeyBindingsTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/keybindings/KeyBindingsTab.fxml
index f063249290b..852e00fb56f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/keybindings/KeyBindingsTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/keybindings/KeyBindingsTab.fxml
@@ -10,42 +10,82 @@
-
+
-
+
-
-
+
+
-
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.fxml
index 947d1bdb7ae..51e95631e73 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.fxml
@@ -14,77 +14,145 @@
-
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+ prefHeight="20.0"
+ prefWidth="20.0"
+ GridPane.columnIndex="2">
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/nameformatter/NameFormatterTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/nameformatter/NameFormatterTab.fxml
index 065fa80fae7..467a9eef8a3 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/nameformatter/NameFormatterTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/nameformatter/NameFormatterTab.fxml
@@ -9,40 +9,74 @@
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/network/NetworkTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/network/NetworkTab.fxml
index 01a70fd72ec..b7416f3a059 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/network/NetworkTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/network/NetworkTab.fxml
@@ -14,43 +14,111 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
@@ -125,14 +193,19 @@
prefWidth="136.0"
text="%Version"/>
-
-
-
+
+
+
-
-
-
+
+
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/preview/PreviewTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/preview/PreviewTab.fxml
index 7cd8b8ae2c3..e3533737385 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/preview/PreviewTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/preview/PreviewTab.fxml
@@ -15,81 +15,137 @@
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
+
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/protectedterms/ProtectedTermsTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/protectedterms/ProtectedTermsTab.fxml
index 2e9f4383c88..66e35465e3f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/protectedterms/ProtectedTermsTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/protectedterms/ProtectedTermsTab.fxml
@@ -7,33 +7,62 @@
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/table/TableTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/table/TableTab.fxml
index 0ff264f489f..e5bab38600a 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/table/TableTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/table/TableTab.fxml
@@ -13,105 +13,180 @@
-
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
+
-
-
+
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
-
+
+
-
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/ApiKeyDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/ApiKeyDialog.fxml
index c1243bccf28..1f82853b7c3 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/ApiKeyDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/ApiKeyDialog.fxml
@@ -10,20 +10,30 @@
-
-
+
-
+
-
+
-
-
+
+
-
+
@@ -31,6 +41,8 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/WebSearchTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/WebSearchTab.fxml
index cf9d45183de..dc30566355c 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/WebSearchTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/websearch/WebSearchTab.fxml
@@ -7,46 +7,83 @@
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/preferences/xmp/XmpPrivacyTab.fxml b/jabgui/src/main/resources/org/jabref/gui/preferences/xmp/XmpPrivacyTab.fxml
index 0dcf73c33d9..68a5720ca3a 100644
--- a/jabgui/src/main/resources/org/jabref/gui/preferences/xmp/XmpPrivacyTab.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/preferences/xmp/XmpPrivacyTab.fxml
@@ -10,34 +10,60 @@
-
-
-
-
+
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/search/GlobalSearchResultDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/search/GlobalSearchResultDialog.fxml
index 7d96e864305..c1181ef5d18 100644
--- a/jabgui/src/main/resources/org/jabref/gui/search/GlobalSearchResultDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/search/GlobalSearchResultDialog.fxml
@@ -7,20 +7,33 @@
-
+
-
-
+
+
-
+
-
+
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/shared/SharedDatabaseLoginDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/shared/SharedDatabaseLoginDialog.fxml
index ed0ca01a216..33f5707eb3f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/shared/SharedDatabaseLoginDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/shared/SharedDatabaseLoginDialog.fxml
@@ -13,76 +13,183 @@
-
+
-
+
-
+
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
@@ -91,21 +198,43 @@
-
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
@@ -115,7 +244,11 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/slr/ManageStudyDefinition.fxml b/jabgui/src/main/resources/org/jabref/gui/slr/ManageStudyDefinition.fxml
index e5ca0032d28..3e2e8f32de7 100644
--- a/jabgui/src/main/resources/org/jabref/gui/slr/ManageStudyDefinition.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/slr/ManageStudyDefinition.fxml
@@ -271,7 +271,10 @@
-
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexDialog.fxml
index 05f86c531ed..d45cd77b916 100644
--- a/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexDialog.fxml
@@ -9,33 +9,56 @@
-
+
-
-
-
+
+
+
-
+
-
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexResult.fxml b/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexResult.fxml
index bcdf3818af4..45c0dddec40 100644
--- a/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexResult.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/texparser/ParseLatexResult.fxml
@@ -7,16 +7,29 @@
-
+
-
-
-
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/components/ThemeWireFrame.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/components/ThemeWireFrame.fxml
index 250e8e4126a..18980ec24d7 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/components/ThemeWireFrame.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/components/ThemeWireFrame.fxml
@@ -1,130 +1,228 @@
+
-
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
-
+
+
+
-
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/EntryTableConfigurationDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/EntryTableConfigurationDialog.fxml
index 6955eabb4b6..337af0ec25b 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/EntryTableConfigurationDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/EntryTableConfigurationDialog.fxml
@@ -7,20 +7,29 @@
-
+
-
+
-
+ wrapText="true"
+ HBox.hgrow="ALWAYS"/>
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/LargeLibraryOptimizationDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/LargeLibraryOptimizationDialog.fxml
index d80ba6596ee..93899341e83 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/LargeLibraryOptimizationDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/LargeLibraryOptimizationDialog.fxml
@@ -7,31 +7,48 @@
-
+
-
+
-
+ wrapText="true"
+ HBox.hgrow="ALWAYS"/>
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/MainFileDirectoryDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/MainFileDirectoryDialog.fxml
index 411acd8b32e..ae42fa47d5b 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/MainFileDirectoryDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/MainFileDirectoryDialog.fxml
@@ -1,7 +1,7 @@
-
+
@@ -10,32 +10,43 @@
-
-
+
-
+
-
+ wrapText="true"
+ HBox.hgrow="ALWAYS"/>
+
-
-
+
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/OnlineServicesDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/OnlineServicesDialog.fxml
index ebf305245e2..8a3383bae5f 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/OnlineServicesDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/OnlineServicesDialog.fxml
@@ -1,6 +1,6 @@
-
+
@@ -9,42 +9,63 @@
-
-
+
-
+
-
+ wrapText="true"
+ HBox.hgrow="ALWAYS"/>
+
-
-
-
-
+
+
+
+
-
+
-
-
+
+
-
+
-
+
-
-
+
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/PushApplicationDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/PushApplicationDialog.fxml
index ca19237461c..b76d5d547d6 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/PushApplicationDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/PushApplicationDialog.fxml
@@ -11,38 +11,50 @@
-
+
-
+
-
+ wrapText="true"
+ HBox.hgrow="ALWAYS"/>
+
-
+
-
+
-
+
-
+
-
-
+
+
diff --git a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/ThemeDialog.fxml b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/ThemeDialog.fxml
index d33970f058a..f55672078c8 100644
--- a/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/ThemeDialog.fxml
+++ b/jabgui/src/main/resources/org/jabref/gui/welcome/quicksettings/ThemeDialog.fxml
@@ -13,50 +13,73 @@
-
+
-
+
-
+ wrapText="true"
+ HBox.hgrow="ALWAYS"/>
+
-
-
+
+
-
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
@@ -64,6 +87,8 @@
-
-
+
+
diff --git a/jabgui/src/main/resources/tinylog.properties b/jabgui/src/main/resources/tinylog.properties
index b3106ac889d..394eb1c56b2 100644
--- a/jabgui/src/main/resources/tinylog.properties
+++ b/jabgui/src/main/resources/tinylog.properties
@@ -1,22 +1,17 @@
-level = info
-writer = gui
-writerConsole = console
-
-writerConsole.format = {date} [{thread}] {class}.{method}()\n{level}: {message}\n
-
+level=info
+writer=gui
+writerConsole=console
+writerConsole.format={date} [{thread}] {class}.{method}()\n{level}: {message}\n
# More shrunk exception logs. See https://tinylog.org/v2/configuration/#strip-stack-trace-elements for details
-exception = strip: jdk.internal
-
-level@org.apache.pdfbox.pdmodel.font = error
-level@org.apache.pdfbox.pdmodel.PDSimpleFont = error
-level@org.apache.fontbox.util.autodetect.FontFileFinder = warn
-level@org.apache.fontbox.ttf = warn
-level@ai.djl = info
-level@io.zonky.test.db.postgres.embedded = warn
-level@org.freedesktop.dbus.connections.transports.TransportBuilder = warn
-
+exception=strip: jdk.internal
+level@org.apache.pdfbox.pdmodel.font=error
+level@org.apache.pdfbox.pdmodel.PDSimpleFont=error
+level@org.apache.fontbox.util.autodetect.FontFileFinder=warn
+level@org.apache.fontbox.ttf=warn
+level@ai.djl=info
+level@io.zonky.test.db.postgres.embedded=warn
+level@org.freedesktop.dbus.connections.transports.TransportBuilder=warn
#level@org.jabref.gui.JabRefGUI = debug
-
# AI debugging
#level@ai.djl = debug
#level@org.jabref.gui.entryeditor.aichattab.AiChat = trace
diff --git a/jabgui/src/test/java/org/jabref/gui/mergeentries/threewaymerge/fieldsmerger/FileMergerTest.java b/jabgui/src/test/java/org/jabref/gui/mergeentries/threewaymerge/fieldsmerger/FileMergerTest.java
index 0ee34ba2c70..653806fa1ce 100644
--- a/jabgui/src/test/java/org/jabref/gui/mergeentries/threewaymerge/fieldsmerger/FileMergerTest.java
+++ b/jabgui/src/test/java/org/jabref/gui/mergeentries/threewaymerge/fieldsmerger/FileMergerTest.java
@@ -16,8 +16,8 @@ class FileMergerTest {
* FileA and FileB are valid strings and are separated by semicolon
*
* @param expect Expected value
- * @param fileA File string a
- * @param fileB File String b
+ * @param fileA File string a
+ * @param fileB File String b
*/
@ParameterizedTest
@CsvSource(textBlock = """
diff --git a/jabgui/src/test/java/org/jabref/testutils/interactive/styletester/StyleTester.fxml b/jabgui/src/test/java/org/jabref/testutils/interactive/styletester/StyleTester.fxml
index 69b59a87a7e..c3149a4a31f 100644
--- a/jabgui/src/test/java/org/jabref/testutils/interactive/styletester/StyleTester.fxml
+++ b/jabgui/src/test/java/org/jabref/testutils/interactive/styletester/StyleTester.fxml
@@ -36,130 +36,238 @@
-
-
+
+
-
- Normal buttons:
-
+
+
+ Normal
+ buttons:
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
- Text buttons:
-
+
+ Text
+ buttons:
+
+
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
- Contained buttons:
-
+
+ Contained
+ buttons:
+
+
-
+
-
-
+
-
+
-
+
-
+
-
+
-
-
+
-
-
+
-
-
+
@@ -182,251 +290,456 @@
-
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
-
-
+
-
+
-
-
-
+
+
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
@@ -435,25 +748,40 @@
-
+
-
+
-
+
-
+
@@ -462,14 +790,20 @@
-
+
-
+
@@ -478,7 +812,10 @@
-
+
From b1a239d2bb6b00451a07d95533a7d172076335ed Mon Sep 17 00:00:00 2001
From: jsochava <144294623+jsochava@users.noreply.github.com>
Date: Sat, 1 Nov 2025 13:06:38 -0400
Subject: [PATCH 09/18] Reformat code applied to jablib folder(previous commit
was jabgui folder) (#14085)
---
jablib/README.md | 41 +-
jablib/build.gradle.kts | 1173 ++++--
.../com/ibm/icu/icu4j/72.0.1/icu4j-72.0.1.pom | 16 +-
.../logic/ai/ingestion/LowLevelIngestor.java | 2 +-
.../logic/auxparser/DefaultAuxParser.java | 4 +-
.../jabref/logic/bibtex/BibEntryWriter.java | 8 +-
.../org/jabref/logic/bibtex/FieldWriter.java | 16 +-
.../comparator/BibtexStringComparator.java | 4 +-
.../bibtex/comparator/EntryComparator.java | 6 +-
.../FieldValuePlausibilityComparator.java | 2 +-
.../YearFieldValuePlausibilityComparator.java | 2 +-
.../main/java/org/jabref/logic/bst/BstVM.java | 2 +-
.../jabref/logic/bst/util/BstCaseChanger.java | 4 +-
.../logic/bst/util/BstNameFormatter.java | 4 +-
.../citationkeypattern/BracketedPattern.java | 44 +-
.../CitationKeyGenerator.java | 2 +-
.../logic/citationstyle/CSLAdapter.java | 2 +-
.../logic/citationstyle/CSLStyleUtils.java | 2 +-
.../logic/cleanup/FieldFormatterCleanup.java | 2 +-
.../jabref/logic/crawler/StudyRepository.java | 8 +-
.../jabref/logic/database/DatabaseMerger.java | 4 +-
.../jabref/logic/database/DuplicateCheck.java | 2 +-
.../exporter/AtomicFileOutputStream.java | 2 +-
.../exporter/EmbeddedBibFilePdfExporter.java | 4 +-
.../org/jabref/logic/exporter/Exporter.java | 18 +-
.../logic/exporter/TemplateExporter.java | 28 +-
.../jabref/logic/exporter/XmpExporter.java | 4 +-
.../NormalizeWhitespaceFormatter.java | 4 +-
.../bibtexfields/RegexFormatter.java | 2 +-
.../conflicts/SemanticConflictDetector.java | 10 +-
.../jabref/logic/git/io/RevisionTriple.java | 4 +-
.../merge/planning/util/ConflictRules.java | 4 +-
.../planning/util/FieldPatchComputer.java | 4 +-
.../org/jabref/logic/git/model/MergePlan.java | 2 +-
.../jabref/logic/icore/ConferenceUtils.java | 2 +-
.../logic/importer/AuthorListParser.java | 12 +-
.../logic/importer/FulltextFetcher.java | 4 +-
.../logic/importer/IdParserFetcher.java | 4 +-
.../logic/importer/ImportFormatReader.java | 2 +-
.../importer/PagedSearchBasedFetcher.java | 4 +-
.../PagedSearchBasedParserFetcher.java | 2 +-
.../logic/importer/fetcher/ArXivFetcher.java | 14 +-
.../importer/fetcher/ComplexSearchQuery.java | 2 +-
.../logic/importer/fetcher/LOBIDFetcher.java | 2 +-
.../logic/importer/fetcher/ResearchGate.java | 2 +-
.../fetcher/ScholarArchiveFetcher.java | 2 +-
.../importer/fetcher/SemanticScholar.java | 2 +-
.../fetcher/SpringerNatureWebFetcher.java | 2 +-
.../fileformat/PdfMergeMetadataImporter.java | 8 +-
.../fileformat/pdf/PdfContentImporter.java | 6 +-
.../logic/importer/util/MetaDataParser.java | 2 +-
.../logic/journals/AbbreviationWriter.java | 2 +-
.../JournalAbbreviationRepository.java | 2 +-
.../jabref/logic/journals/ltwa/LtwaEntry.java | 12 +-
.../org/jabref/logic/l10n/Localization.java | 4 +-
.../jabref/logic/layout/format/RTFChars.java | 4 +-
.../org/jabref/logic/msbib/MSBibDatabase.java | 2 +-
.../org/jabref/logic/net/URLDownload.java | 2 +-
.../logic/openoffice/ReferenceMark.java | 8 +-
.../logic/openoffice/action/EditInsert.java | 2 +-
.../logic/openoffice/action/EditMerge.java | 4 +-
.../logic/openoffice/backend/Backend52.java | 6 +-
.../logic/openoffice/backend/Codec52.java | 10 +-
.../logic/openoffice/backend/GetContext.java | 2 +-
.../backend/NamedRangeReferenceMark.java | 2 +-
.../logic/openoffice/frontend/OOFrontend.java | 8 +-
.../frontend/UpdateCitationMarkers.java | 6 +-
.../openoffice/oocsltext/CSLFormatUtils.java | 2 +-
.../jabref/logic/openoffice/style/JStyle.java | 18 +-
.../style/JStyleGetCitationMarker.java | 102 +-
.../style/JStyleGetNumCitationMarker.java | 30 +-
.../style/OOFormatBibliography.java | 6 +-
.../org/jabref/logic/pdf/TextExtractor.java | 2 +-
.../preferences/JabRefCliPreferences.java | 4 +-
.../org/jabref/logic/push/PushToTeXworks.java | 2 +-
.../jabref/logic/shared/DBMSSynchronizer.java | 4 +-
.../shared/event/UpdateRefusedEvent.java | 2 +-
.../logic/shared/security/Password.java | 2 +-
.../org/jabref/logic/util/BackgroundTask.java | 4 +-
.../org/jabref/logic/util/TaskExecutor.java | 6 +-
.../java/org/jabref/logic/util/URLUtil.java | 2 +-
.../org/jabref/logic/util/io/FileFinder.java | 4 +-
.../logic/util/io/FileNameUniqueness.java | 6 +-
.../org/jabref/logic/util/io/FileUtil.java | 32 +-
.../logic/util/io/RegExpBasedFileFinder.java | 12 +-
.../util/strings/QuotedStringTokenizer.java | 4 +-
.../logic/util/strings/StringManipulator.java | 22 +-
.../jabref/logic/xmp/DublinCoreExtractor.java | 2 +-
.../org/jabref/logic/xmp/XmpUtilReader.java | 2 +-
.../org/jabref/logic/xmp/XmpUtilWriter.java | 26 +-
.../main/java/org/jabref/model/ChainNode.java | 4 +-
.../jabref/model/database/BibDatabase.java | 18 +-
.../database/event/EntriesAddedEvent.java | 2 +-
.../database/event/EntriesRemovedEvent.java | 2 +-
.../java/org/jabref/model/entry/Author.java | 8 +-
.../org/jabref/model/entry/AuthorList.java | 4 +-
.../java/org/jabref/model/entry/BibEntry.java | 20 +-
.../org/jabref/model/entry/BibEntryType.java | 4 +-
.../java/org/jabref/model/entry/Date.java | 2 +-
.../org/jabref/model/entry/KeywordList.java | 2 +-
.../model/entry/event/EntriesEvent.java | 2 +-
.../model/entry/event/FieldChangedEvent.java | 4 +-
.../jabref/model/entry/identifier/DOI.java | 2 +-
.../jabref/model/entry/identifier/SSRN.java | 2 +-
.../jabref/model/groups/GroupTreeNode.java | 8 +-
.../org/jabref/model/metadata/SaveOrder.java | 2 +-
.../model/openoffice/DocumentAnnotation.java | 6 +-
.../model/openoffice/ootext/OOFormat.java | 12 +-
.../model/openoffice/ootext/OOTextIntoOO.java | 2 +-
.../rangesort/RangeOverlapWithin.java | 10 +-
.../openoffice/rangesort/RangeSortVisual.java | 2 +-
.../jabref/model/openoffice/uno/UnoNamed.java | 4 +-
.../openoffice/uno/UnoReferenceMark.java | 4 +-
.../uno/UnoUserDefinedProperty.java | 10 +-
.../org/jabref/model/pdf/FileAnnotation.java | 12 +-
.../org/jabref/model/strings/StringUtil.java | 12 +-
.../org/jabref/model/util/TreeCollector.java | 2 +-
.../main/resources/l10n/JabRef_ar.properties | 733 +---
.../main/resources/l10n/JabRef_da.properties | 683 ----
.../main/resources/l10n/JabRef_de.properties | 691 +---
.../main/resources/l10n/JabRef_el.properties | 685 +---
.../main/resources/l10n/JabRef_en.properties | 692 +---
.../main/resources/l10n/JabRef_es.properties | 687 +---
.../main/resources/l10n/JabRef_fa.properties | 747 +---
.../main/resources/l10n/JabRef_fi.properties | 685 +---
.../main/resources/l10n/JabRef_fr.properties | 692 +---
.../main/resources/l10n/JabRef_id.properties | 685 +---
.../main/resources/l10n/JabRef_it.properties | 692 +---
.../main/resources/l10n/JabRef_ja.properties | 687 +---
.../main/resources/l10n/JabRef_ko.properties | 687 +---
.../main/resources/l10n/JabRef_nl.properties | 687 +---
.../main/resources/l10n/JabRef_no.properties | 683 ----
.../main/resources/l10n/JabRef_pl.properties | 691 +---
.../main/resources/l10n/JabRef_pt.properties | 685 +---
.../resources/l10n/JabRef_pt_BR.properties | 692 +---
.../main/resources/l10n/JabRef_ru.properties | 689 +---
.../main/resources/l10n/JabRef_sv.properties | 685 +---
.../main/resources/l10n/JabRef_tl.properties | 683 ----
.../main/resources/l10n/JabRef_tr.properties | 687 +---
.../main/resources/l10n/JabRef_uk.properties | 747 +---
.../main/resources/l10n/JabRef_vi.properties | 683 ----
.../resources/l10n/JabRef_zh_CN.properties | 693 +---
.../resources/l10n/JabRef_zh_TW.properties | 683 ----
.../main/resources/resource/ods/manifest.xml | 25 +-
.../src/main/resources/resource/ods/meta.xml | 33 +-
.../main/resources/resource/ods/settings.xml | 4 +-
.../resource/openoffice/manifest.xml | 21 +-
.../resources/resource/openoffice/meta.xml | 19 +-
.../resources/xslt/mathml_latex/cmarkup.xsl | 2836 ++++++++-----
.../resources/xslt/mathml_latex/entities.xsl | 2771 +++++++++++--
.../resources/xslt/mathml_latex/glayout.xsl | 451 ++-
.../resources/xslt/mathml_latex/mmltex.xsl | 102 +-
.../resources/xslt/mathml_latex/scripts.xsl | 664 +--
.../resources/xslt/mathml_latex/tables.xsl | 276 +-
.../resources/xslt/mathml_latex/tokens.xsl | 715 ++--
.../fetcher/IacrEprintFetcherTest.java | 2 +-
.../model/entry/identifier/SSRNTest.java | 2 +-
.../test/resources/junit-platform.properties | 3 +-
.../logic/exporter/Docbook5ExportFormat.xml | 106 +-
.../EndnoteXmlExportTestMultipleEntries.xml | 288 +-
.../EndnoteXmlExportTestSingleBookEntry.xml | 57 +-
.../jabref/logic/exporter/MSBibXmlTest.xml | 29 +-
.../ModsExportFormatTestAllFields.xml | 185 +-
.../exporter/ModsExportFormatTestBook.xml | 44 +-
.../ModsExportFormatTestMultipleEntries.xml | 189 +-
...ModsExportFormatTestOnlyRequiredFields.xml | 83 +-
.../ModsExportFormatTestTotalPages.xml | 40 +-
.../logic/exporter/MsBibExportFormatTest1.xml | 118 +-
.../MsBibExportFormatTest1BibTexString.xml | 39 +-
.../logic/exporter/MsBibExportFormatTest2.xml | 69 +-
.../logic/exporter/MsBibExportFormatTest3.xml | 85 +-
.../logic/exporter/MsBibExportFormatTest4.xml | 62 +-
.../logic/exporter/MsBibExportFormatTest5.xml | 90 +-
.../logic/exporter/MsBibExportFormatTest6.xml | 82 +-
.../logic/exporter/MsBibExportFormatTest7.xml | 78 +-
...BibExportFormatTestAddressWithoutComma.xml | 27 +-
.../MsBibExportFormatTestCorporateAuthor.xml | 34 +-
.../MsBibExportFormatTestDateAcessed.xml | 53 +-
.../exporter/MsBibExportFormatTestDay.xml | 38 +-
.../MsBibExportFormatTestDayBiblatex.xml | 38 +-
.../MsBibExportFormatTestLatexFree.xml | 107 +-
.../exporter/MsBibExportFormatUmlauts.xml | 23 +-
.../jabref/logic/exporter/MsBibKeyTest.xml | 29 +-
.../org/jabref/logic/exporter/MsBibLCID.xml | 17 +-
.../logic/exporter/MsBibLocationTest.xml | 25 +-
.../logic/exporter/MsBibMultiAddressTest.xml | 33 +-
.../org/jabref/logic/exporter/MsBibPatent.xml | 39 +-
.../jabref/logic/exporter/MsBibShorttitle.xml | 17 +-
.../jabref/logic/exporter/MsBibUrlDate.xml | 105 +-
...ficeCalcExportFormatContentSingleEntry.xml | 614 ++-
...er_science_bibliographies_empty_result.xml | 87 +-
...cience_bibliographies_multiple_results.xml | 192 +-
...r_science_bibliographies_single_result.xml | 183 +-
.../fetcher/gvk_artificial_subtitle_test.xml | 215 +-
.../gvk_empty_result_because_of_bad_query.xml | 42 +-
.../jabref/logic/importer/fetcher/gvk_gmp.xml | 2225 +++++++---
.../fetcher/gvk_result_for_797485368.xml | 523 ++-
.../EndnoteXmlImporterTestArticle.xml | 249 +-
.../EndnoteXmlImporterTestArticle2.xml | 321 +-
...dnoteXmlImporterTestLabelAndMultiTitle.xml | 445 +-
.../EndnoteXmlImporterTestReport.xml | 131 +-
...dnoteXmlImporterTest_EmptyKeywordStyle.xml | 141 +-
...EndnoteXmlImporterTest_WithoutUrlStyle.xml | 248 +-
...ndnoteXmlImporterTest_WithoutUrlStyle2.xml | 313 +-
.../fileformat/MODSImporterTestAllFields.xml | 231 +-
.../MODSImporterTestGenreMapping.xml | 20 +-
.../fileformat/MODSImporterTestMinimal.xml | 10 +-
.../fileformat/MODSImporterTestMods.xml | 268 +-
.../MODSImporterTestModsCollection.xml | 798 ++--
.../MarcXMLParserTestInProceedings.xml | 360 +-
.../fileformat/MarcXmlParserTestArticle.xml | 299 +-
.../fileformat/MarcXmlParserTestBook.xml | 1454 ++++++-
.../MarcXmlParserTestBookSeries.xml | 1356 +++++--
.../fileformat/MarcXmlParserTestNotes.xml | 563 ++-
.../MarcXmlParserTestSummaryAndKeywords.xml | 965 ++++-
.../fileformat/MarcXmlParserTestThesis.xml | 379 +-
.../MedlineImporterTestArticleID.xml | 919 +++--
.../MedlineImporterTestArticleItalics.xml | 3565 +++++++++++++++--
.../MedlineImporterTestArticleNoISSN.xml | 303 +-
.../MedlineImporterTestBookArticleSet.xml | 284 +-
.../MedlineImporterTestKeywordSingleEntry.xml | 305 +-
.../MedlineImporterTestMalformedEntry.xml | 7 +-
.../fileformat/MedlineImporterTestMathML.xml | 983 ++++-
.../MedlineImporterTestMinimalEntry.xml | 6 +-
.../fileformat/MedlineImporterTestNbib.xml | 1354 +++++--
.../MedlineImporterTestPubmedBook.xml | 429 +-
.../MedlinePlainImporterTestInvalidFormat.xml | 4 +-
.../fileformat/MsBibExportFormatUmlauts.xml | 29 +-
.../fileformat/MsBibImporterInvalidMonth.xml | 109 +-
.../MsBibImporterMsBibFieldsTest.xml | 99 +-
.../fileformat/MsBibImporterTest3.xml | 104 +-
.../fileformat/MsBibImporterTest4.xml | 80 +-
.../fileformat/MsBibImporterTest5.xml | 78 +-
.../fileformat/MsBibImporterTest6.xml | 78 +-
.../fileformat/MsBibImporterTest7.xml | 109 +-
.../MsBibImporterTestTranslator.xml | 71 +-
.../fileformat/MsBibImporterTitleTest.xml | 30 +-
.../logic/importer/fileformat/MsBibLCID.xml | 17 +-
.../importer/fileformat/MsBibLocationTest.xml | 49 +-
.../MsBibMultiLocationAddressTest.xml | 53 +-
.../logic/importer/fileformat/MsBibPatent.xml | 55 +-
.../importer/fileformat/MsBibShorttitle.xml | 23 +-
.../pdfs/PdfContentImporter/README.md | 10 +-
jablib/src/test/resources/pdfs/README.md | 73 +-
jablib/src/test/resources/testbib/README.md | 77 +-
.../resources/testbib/issue-12274/README.md | 140 +-
.../test/resources/tinylog-test.properties | 4 +-
247 files changed, 26767 insertions(+), 25541 deletions(-)
diff --git a/jablib/README.md b/jablib/README.md
index f69715fc13c..1beef45913a 100644
--- a/jablib/README.md
+++ b/jablib/README.md
@@ -1,13 +1,42 @@
-# `jablib`
+#
+`jablib`
## Development information
### Publish on Maven Central
1. [Get API username and password](https://central.sonatype.org/publish/generate-portal-token/)
-2. Modify `~/.gradle/gradle.properties` to contain your secrets. See .
- Especially have your private key stored in `singing.key`. [Hints are available](https://github.com/gradle/gradle/issues/15718#issuecomment-886246583).
-3. Publish a snapshot: `./gradlew :jablib:publishAllPublicationsToMavenCentralRepository`
-4. You will find the upload at
+2.
+Modify
+`~/.gradle/gradle.properties`
+to
+contain
+your
+secrets.
+See .
+Especially
+have
+your
+private
+key
+stored
+in
+`singing.key`. [Hints are available](https://github.com/gradle/gradle/issues/15718#issuecomment-886246583).
+3.
+Publish
+a
+snapshot:
+`./gradlew :jablib:publishAllPublicationsToMavenCentralRepository`
+4.
+You
+will
+find
+the
+upload
+at
-The [Vanniktech Gradle Maven Publish Plugin](https://vanniktech.github.io/gradle-maven-publish-plugin/central/) is used for it.
+The [Vanniktech Gradle Maven Publish Plugin](https://vanniktech.github.io/gradle-maven-publish-plugin/central/)
+is
+used
+for
+it.
diff --git a/jablib/build.gradle.kts b/jablib/build.gradle.kts
index b5f35241ad3..8a2dee68cb7 100644
--- a/jablib/build.gradle.kts
+++ b/jablib/build.gradle.kts
@@ -26,36 +26,64 @@ plugins {
id("net.ltgt.nullaway") version "2.3.0"
}
-var version: String = project.findProperty("projVersion")?.toString() ?: "0.1.0"
-if (project.findProperty("tagbuild")?.toString() != "true") {
+var version: String =
+ project.findProperty(
+ "projVersion"
+ )
+ ?.toString()
+ ?: "0.1.0"
+if (project.findProperty(
+ "tagbuild"
+ )
+ ?.toString() != "true"
+) {
version += "-SNAPSHOT"
}
configurations.antlr {
- extendsFrom(configurations.internal.get())
+ extendsFrom(
+ configurations.internal.get()
+ )
}
configurations {
// Treat the ANTLR compiler as a separate tool that should not end up on the compile/runtime
// classpath of our runtime.
// https://github.com/gradle/gradle/issues/820
- api { setExtendsFrom(extendsFrom.filterNot { it == antlr.get() }) }
+ api {
+ setExtendsFrom(
+ extendsFrom.filterNot { it == antlr.get() })
+ }
// Get ANTLR version from 'hiero-dependency-versions'
- antlr { extendsFrom(configurations["internal"]) }
-}
-tasks.withType().configureEach {
- dependsOn(tasks.withType())
+ antlr {
+ extendsFrom(
+ configurations["internal"]
+ )
+ }
}
+tasks.withType()
+ .configureEach {
+ dependsOn(
+ tasks.withType()
+ )
+ }
// See https://javadoc.io/doc/org.mockito/mockito-core/latest/org.mockito/org/mockito/Mockito.html#0.3
-val mockitoAgent = configurations.create("mockitoAgent")
+val mockitoAgent =
+ configurations.create(
+ "mockitoAgent"
+ )
dependencies {
// api(platform(project(":versions")))
- implementation("org.openjfx:javafx-base")
+ implementation(
+ "org.openjfx:javafx-base"
+ )
- implementation("com.ibm.icu:icu4j")
+ implementation(
+ "com.ibm.icu:icu4j"
+ )
// Fix "error: module not found: javafx.controls" during compilation
// implementation("org.openjfx:javafx-controls:$javafxVersion")
@@ -63,177 +91,383 @@ dependencies {
// We do not use [Version Catalogs](https://docs.gradle.org/current/userguide/version_catalogs.html#sec:dependency-bundles), because
// exclusions are not supported
- implementation("org.jabref:afterburner.fx")
+ implementation(
+ "org.jabref:afterburner.fx"
+ )
// Required by afterburner.fx
- implementation("org.openjfx:javafx-fxml")
+ implementation(
+ "org.openjfx:javafx-fxml"
+ )
- implementation("org.jabref:easybind")
+ implementation(
+ "org.jabref:easybind"
+ )
- implementation ("org.apache.pdfbox:pdfbox")
- implementation ("org.apache.pdfbox:fontbox")
- implementation ("org.apache.pdfbox:xmpbox")
+ implementation(
+ "org.apache.pdfbox:pdfbox"
+ )
+ implementation(
+ "org.apache.pdfbox:fontbox"
+ )
+ implementation(
+ "org.apache.pdfbox:xmpbox"
+ )
- implementation("org.apache.lucene:lucene-core")
- implementation("org.apache.lucene:lucene-queryparser")
- implementation("org.apache.lucene:lucene-queries")
- implementation("org.apache.lucene:lucene-analysis-common")
- implementation("org.apache.lucene:lucene-highlighter")
+ implementation(
+ "org.apache.lucene:lucene-core"
+ )
+ implementation(
+ "org.apache.lucene:lucene-queryparser"
+ )
+ implementation(
+ "org.apache.lucene:lucene-queries"
+ )
+ implementation(
+ "org.apache.lucene:lucene-analysis-common"
+ )
+ implementation(
+ "org.apache.lucene:lucene-highlighter"
+ )
- implementation("org.apache.commons:commons-csv")
- implementation("org.apache.commons:commons-lang3")
- implementation("org.apache.commons:commons-text")
- implementation("commons-logging:commons-logging")
+ implementation(
+ "org.apache.commons:commons-csv"
+ )
+ implementation(
+ "org.apache.commons:commons-lang3"
+ )
+ implementation(
+ "org.apache.commons:commons-text"
+ )
+ implementation(
+ "commons-logging:commons-logging"
+ )
- implementation("com.h2database:h2-mvstore")
+ implementation(
+ "com.h2database:h2-mvstore"
+ )
// required for reading write-protected PDFs - see https://github.com/JabRef/jabref/pull/942#issuecomment-209252635
- implementation("org.bouncycastle:bcprov-jdk18on")
+ implementation(
+ "org.bouncycastle:bcprov-jdk18on"
+ )
// region: LibreOffice
- implementation("org.libreoffice:unoloader")
- implementation("org.libreoffice:libreoffice")
+ implementation(
+ "org.libreoffice:unoloader"
+ )
+ implementation(
+ "org.libreoffice:libreoffice"
+ )
// Required for ID generation
- implementation("io.github.thibaultmeyer:cuid")
+ implementation(
+ "io.github.thibaultmeyer:cuid"
+ )
// endregion
- implementation("io.github.java-diff-utils:java-diff-utils")
- implementation("info.debatty:java-string-similarity")
+ implementation(
+ "io.github.java-diff-utils:java-diff-utils"
+ )
+ implementation(
+ "info.debatty:java-string-similarity"
+ )
- implementation("com.github.javakeyring:java-keyring")
+ implementation(
+ "com.github.javakeyring:java-keyring"
+ )
- implementation("org.eclipse.jgit:org.eclipse.jgit")
+ implementation(
+ "org.eclipse.jgit:org.eclipse.jgit"
+ )
- implementation("com.fasterxml.jackson.dataformat:jackson-dataformat-yaml")
- implementation("com.fasterxml.jackson.datatype:jackson-datatype-jsr310")
+ implementation(
+ "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml"
+ )
+ implementation(
+ "com.fasterxml.jackson.datatype:jackson-datatype-jsr310"
+ )
// TODO: Somwewhere we get a warning: unknown enum constant Id.CLASS reason: class file for com.fasterxml.jackson.annotation.JsonTypeInfo$Id not found
// implementation("com.fasterxml.jackson.core:jackson-annotations:2.19.1")
- implementation("com.fasterxml.jackson.datatype:jackson-datatype-jdk8")
+ implementation(
+ "com.fasterxml.jackson.datatype:jackson-datatype-jdk8"
+ )
- implementation("com.fasterxml:aalto-xml")
+ implementation(
+ "com.fasterxml:aalto-xml"
+ )
- implementation("org.postgresql:postgresql")
+ implementation(
+ "org.postgresql:postgresql"
+ )
- antlr("org.antlr:antlr4")
- implementation("org.antlr:antlr4-runtime")
+ antlr(
+ "org.antlr:antlr4"
+ )
+ implementation(
+ "org.antlr:antlr4-runtime"
+ )
- implementation("com.google.guava:guava")
+ implementation(
+ "com.google.guava:guava"
+ )
- implementation("jakarta.annotation:jakarta.annotation-api")
- implementation("jakarta.inject:jakarta.inject-api")
+ implementation(
+ "jakarta.annotation:jakarta.annotation-api"
+ )
+ implementation(
+ "jakarta.inject:jakarta.inject-api"
+ )
// region HTTP clients
- implementation("org.jsoup:jsoup")
- implementation("com.konghq:unirest-java-core")
- implementation("com.konghq:unirest-modules-gson")
- implementation("org.apache.httpcomponents.client5:httpclient5")
- implementation("jakarta.ws.rs:jakarta.ws.rs-api")
+ implementation(
+ "org.jsoup:jsoup"
+ )
+ implementation(
+ "com.konghq:unirest-java-core"
+ )
+ implementation(
+ "com.konghq:unirest-modules-gson"
+ )
+ implementation(
+ "org.apache.httpcomponents.client5:httpclient5"
+ )
+ implementation(
+ "jakarta.ws.rs:jakarta.ws.rs-api"
+ )
// endregion
- implementation("org.slf4j:slf4j-api")
+ implementation(
+ "org.slf4j:slf4j-api"
+ )
// route all requests to java.util.logging to SLF4J (which in turn routes to tinylog in the CLI and GUI)
- implementation("org.slf4j:jul-to-slf4j")
+ implementation(
+ "org.slf4j:jul-to-slf4j"
+ )
// route all requests to log4j to SLF4J
- implementation("org.apache.logging.log4j:log4j-to-slf4j")
+ implementation(
+ "org.apache.logging.log4j:log4j-to-slf4j"
+ )
// required by org.jabref.generators (only)
- implementation("org.tinylog:slf4j-tinylog")
- implementation("org.tinylog:tinylog-api")
- implementation("org.tinylog:tinylog-impl")
+ implementation(
+ "org.tinylog:slf4j-tinylog"
+ )
+ implementation(
+ "org.tinylog:tinylog-api"
+ )
+ implementation(
+ "org.tinylog:tinylog-impl"
+ )
- implementation("de.undercouch:citeproc-java")
+ implementation(
+ "de.undercouch:citeproc-java"
+ )
- implementation("com.vladsch.flexmark:flexmark")
- implementation("com.vladsch.flexmark:flexmark-html2md-converter")
+ implementation(
+ "com.vladsch.flexmark:flexmark"
+ )
+ implementation(
+ "com.vladsch.flexmark:flexmark-html2md-converter"
+ )
- implementation("net.harawata:appdirs")
+ implementation(
+ "net.harawata:appdirs"
+ )
- implementation("org.jooq:jool")
+ implementation(
+ "org.jooq:jool"
+ )
// Because of GraalVM quirks, we need to ship that. See https://github.com/jspecify/jspecify/issues/389#issuecomment-1661130973 for details
- implementation("org.jspecify:jspecify")
+ implementation(
+ "org.jspecify:jspecify"
+ )
// parse plist files
- implementation("com.googlecode.plist:dd-plist")
+ implementation(
+ "com.googlecode.plist:dd-plist"
+ )
// Parse lnk files
- implementation("com.github.vatbub:mslinks")
+ implementation(
+ "com.github.vatbub:mslinks"
+ )
// YAML reading and writing
- implementation("org.yaml:snakeyaml")
+ implementation(
+ "org.yaml:snakeyaml"
+ )
// region AI
- implementation("dev.langchain4j:langchain4j")
+ implementation(
+ "dev.langchain4j:langchain4j"
+ )
// Even though we use jvm-openai for LLM connection, we still need this package for tokenization.
- implementation("dev.langchain4j:langchain4j-open-ai")
- implementation("dev.langchain4j:langchain4j-mistral-ai")
- implementation("dev.langchain4j:langchain4j-google-ai-gemini")
- implementation("dev.langchain4j:langchain4j-hugging-face")
- implementation("dev.langchain4j:langchain4j-http-client")
- implementation("dev.langchain4j:langchain4j-http-client-jdk")
-
- implementation("org.apache.velocity:velocity-engine-core")
- implementation("ai.djl:api")
- implementation("ai.djl.huggingface:tokenizers")
- implementation("ai.djl.pytorch:pytorch-model-zoo")
- implementation("io.github.stefanbratanov:jvm-openai")
+ implementation(
+ "dev.langchain4j:langchain4j-open-ai"
+ )
+ implementation(
+ "dev.langchain4j:langchain4j-mistral-ai"
+ )
+ implementation(
+ "dev.langchain4j:langchain4j-google-ai-gemini"
+ )
+ implementation(
+ "dev.langchain4j:langchain4j-hugging-face"
+ )
+ implementation(
+ "dev.langchain4j:langchain4j-http-client"
+ )
+ implementation(
+ "dev.langchain4j:langchain4j-http-client-jdk"
+ )
+
+ implementation(
+ "org.apache.velocity:velocity-engine-core"
+ )
+ implementation(
+ "ai.djl:api"
+ )
+ implementation(
+ "ai.djl.huggingface:tokenizers"
+ )
+ implementation(
+ "ai.djl.pytorch:pytorch-model-zoo"
+ )
+ implementation(
+ "io.github.stefanbratanov:jvm-openai"
+ )
// openai depends on okhttp, which needs kotlin - see https://github.com/square/okhttp/issues/5299 for details
- implementation("com.squareup.okhttp3:okhttp")
+ implementation(
+ "com.squareup.okhttp3:okhttp"
+ )
// GemxFX also (transitively) depends on kotlin
- implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
+ implementation(
+ "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
+ )
// endregion
- implementation("commons-io:commons-io")
+ implementation(
+ "commons-io:commons-io"
+ )
- implementation("com.github.tomtung:latex2unicode_2.13")
+ implementation(
+ "com.github.tomtung:latex2unicode_2.13"
+ )
- implementation("de.rototor.snuggletex:snuggletex-jeuclid")
+ implementation(
+ "de.rototor.snuggletex:snuggletex-jeuclid"
+ )
// Even if("compileOnly") is used, IntelliJ always adds to module-info.java. To avoid issues during committing, we use("implementation") instead of("compileOnly")
- implementation("io.github.adr:e-adr")
+ implementation(
+ "io.github.adr:e-adr"
+ )
api("io.github.darvil82:terminal-text-formatter")
- implementation("io.zonky.test:embedded-postgres")
- implementation("io.zonky.test.postgres:embedded-postgres-binaries-darwin-arm64v8")
- implementation("io.zonky.test.postgres:embedded-postgres-binaries-linux-arm64v8")
+ implementation(
+ "io.zonky.test:embedded-postgres"
+ )
+ implementation(
+ "io.zonky.test.postgres:embedded-postgres-binaries-darwin-arm64v8"
+ )
+ implementation(
+ "io.zonky.test.postgres:embedded-postgres-binaries-linux-arm64v8"
+ )
- testImplementation(project(":test-support"))
+ testImplementation(
+ project(
+ ":test-support"
+ )
+ )
// loading of .fxml files in localization tests requires JabRef's GUI classes
- testImplementation(project(":jabgui"))
+ testImplementation(
+ project(
+ ":jabgui"
+ )
+ )
- testImplementation("io.github.classgraph:classgraph")
- testImplementation("org.junit.jupiter:junit-jupiter-api")
- testImplementation("org.junit.jupiter:junit-jupiter")
- testImplementation("org.junit.jupiter:junit-jupiter-params")
- testImplementation("org.junit.platform:junit-platform-launcher")
+ testImplementation(
+ "io.github.classgraph:classgraph"
+ )
+ testImplementation(
+ "org.junit.jupiter:junit-jupiter-api"
+ )
+ testImplementation(
+ "org.junit.jupiter:junit-jupiter"
+ )
+ testImplementation(
+ "org.junit.jupiter:junit-jupiter-params"
+ )
+ testImplementation(
+ "org.junit.platform:junit-platform-launcher"
+ )
- testImplementation("org.mockito:mockito-core")
+ testImplementation(
+ "org.mockito:mockito-core"
+ )
// TODO: Use versions of versions/build.gradle.kts
- mockitoAgent("org.mockito:mockito-core:5.20.0") { isTransitive = false }
- testImplementation("net.bytebuddy:byte-buddy")
+ mockitoAgent(
+ "org.mockito:mockito-core:5.20.0"
+ ) {
+ isTransitive =
+ false
+ }
+ testImplementation(
+ "net.bytebuddy:byte-buddy"
+ )
- testImplementation("org.xmlunit:xmlunit-core")
- testImplementation("org.xmlunit:xmlunit-matchers")
- testImplementation("org.junit.jupiter:junit-jupiter-api")
+ testImplementation(
+ "org.xmlunit:xmlunit-core"
+ )
+ testImplementation(
+ "org.xmlunit:xmlunit-matchers"
+ )
+ testImplementation(
+ "org.junit.jupiter:junit-jupiter-api"
+ )
- testImplementation("com.tngtech.archunit:archunit")
- testImplementation("com.tngtech.archunit:archunit-junit5-api")
- testRuntimeOnly("com.tngtech.archunit:archunit-junit5-engine")
+ testImplementation(
+ "com.tngtech.archunit:archunit"
+ )
+ testImplementation(
+ "com.tngtech.archunit:archunit-junit5-api"
+ )
+ testRuntimeOnly(
+ "com.tngtech.archunit:archunit-junit5-engine"
+ )
- testImplementation("org.hamcrest:hamcrest")
+ testImplementation(
+ "org.hamcrest:hamcrest"
+ )
- testImplementation("org.wiremock:wiremock") {
- exclude(group = "net.sf.jopt-simple", module = "jopt-simple")
+ testImplementation(
+ "org.wiremock:wiremock"
+ ) {
+ exclude(
+ group = "net.sf.jopt-simple",
+ module = "jopt-simple"
+ )
}
- testImplementation("org.ow2.asm:asm")
+ testImplementation(
+ "org.ow2.asm:asm"
+ )
// Required for LocalizationConsistencyTest
- testImplementation("org.testfx:testfx-core")
- testImplementation("org.testfx:testfx-junit5")
+ testImplementation(
+ "org.testfx:testfx-core"
+ )
+ testImplementation(
+ "org.testfx:testfx-junit5"
+ )
- errorprone("com.google.errorprone:error_prone_core")
- errorprone("com.uber.nullaway:nullaway")
+ errorprone(
+ "com.google.errorprone:error_prone_core"
+ )
+ errorprone(
+ "com.uber.nullaway:nullaway"
+ )
}
/*
jacoco {
@@ -242,88 +476,179 @@ jacoco {
*/
tasks.generateGrammarSource {
- maxHeapSize = "64m"
- arguments = arguments + listOf("-visitor", "-long-messages")
+ maxHeapSize =
+ "64m"
+ arguments =
+ arguments + listOf(
+ "-visitor",
+ "-long-messages"
+ )
}
-val abbrvJabRefOrgDir = layout.projectDirectory.dir("src/main/abbrv.jabref.org")
-val generatedJournalFile = layout.buildDirectory.file("generated/resources/journals/journal-list.mv")
-
-var taskGenerateJournalListMV = tasks.register("generateJournalListMV") {
- group = "JabRef"
- description = "Converts the comma-separated journal abbreviation file to a H2 MVStore"
- dependsOn(tasks.named("generateGrammarSource"))
-
- script = rootProject.layout.projectDirectory.file("build-support/src/main/java/JournalListMvGenerator.java").asFile.absolutePath
-
- inputs.dir(abbrvJabRefOrgDir)
- outputs.file(generatedJournalFile)
- onlyIf {!generatedJournalFile.get().asFile.exists()}
-}
+val abbrvJabRefOrgDir =
+ layout.projectDirectory.dir(
+ "src/main/abbrv.jabref.org"
+ )
+val generatedJournalFile =
+ layout.buildDirectory.file(
+ "generated/resources/journals/journal-list.mv"
+ )
-var taskGenerateCitationStyleCatalog = tasks.register("generateCitationStyleCatalog") {
- group = "JabRef"
- description = "Generates a catalog of all available citation styles"
+var taskGenerateJournalListMV =
+ tasks.register(
+ "generateJournalListMV"
+ ) {
+ group =
+ "JabRef"
+ description =
+ "Converts the comma-separated journal abbreviation file to a H2 MVStore"
+ dependsOn(
+ tasks.named(
+ "generateGrammarSource"
+ )
+ )
- script = rootProject.layout.projectDirectory.file("build-support/src/main/java/CitationStyleCatalogGenerator.java").asFile.absolutePath
+ script =
+ rootProject.layout.projectDirectory.file(
+ "build-support/src/main/java/JournalListMvGenerator.java"
+ ).asFile.absolutePath
- inputs.dir(layout.projectDirectory.dir("src/main/resources/csl-styles"))
- val cslCatalogJson = layout.buildDirectory.file("generated/resources/citation-style-catalog.json")
- outputs.file(cslCatalogJson)
- onlyIf {!cslCatalogJson.get().asFile.exists()}
-}
+ inputs.dir(
+ abbrvJabRefOrgDir
+ )
+ outputs.file(
+ generatedJournalFile
+ )
+ onlyIf { !generatedJournalFile.get().asFile.exists() }
+ }
-var ltwaCsvFile = layout.buildDirectory.file("tmp/ltwa_20210702.csv")
+var taskGenerateCitationStyleCatalog =
+ tasks.register(
+ "generateCitationStyleCatalog"
+ ) {
+ group =
+ "JabRef"
+ description =
+ "Generates a catalog of all available citation styles"
+
+ script =
+ rootProject.layout.projectDirectory.file(
+ "build-support/src/main/java/CitationStyleCatalogGenerator.java"
+ ).asFile.absolutePath
+
+ inputs.dir(
+ layout.projectDirectory.dir(
+ "src/main/resources/csl-styles"
+ )
+ )
+ val cslCatalogJson =
+ layout.buildDirectory.file(
+ "generated/resources/citation-style-catalog.json"
+ )
+ outputs.file(
+ cslCatalogJson
+ )
+ onlyIf { !cslCatalogJson.get().asFile.exists() }
+ }
-tasks.register("downloadLtwaFile") {
- group = "JabRef"
- description = "Downloads the LTWA file for journal abbreviations"
+var ltwaCsvFile =
+ layout.buildDirectory.file(
+ "tmp/ltwa_20210702.csv"
+ )
- val ltwaUrl = "https://www.issn.org/wp-content/uploads/2021/07/ltwa_20210702.csv"
- val ltwaDir = layout.buildDirectory.dir("resources/main/journals")
+tasks.register(
+ "downloadLtwaFile"
+) {
+ group =
+ "JabRef"
+ description =
+ "Downloads the LTWA file for journal abbreviations"
+
+ val ltwaUrl =
+ "https://www.issn.org/wp-content/uploads/2021/07/ltwa_20210702.csv"
+ val ltwaDir =
+ layout.buildDirectory.dir(
+ "resources/main/journals"
+ )
- outputs.file(ltwaCsvFile)
+ outputs.file(
+ ltwaCsvFile
+ )
// Ensure that the task really is not run if the file already exists (otherwise, the task could also run if gradle's cache is cleared, ...)
- onlyIf {!ltwaCsvFile.get().asFile.exists()}
+ onlyIf { !ltwaCsvFile.get().asFile.exists() }
doLast {
- val dir = ltwaDir.get().asFile
- val file = ltwaCsvFile.get().asFile
+ val dir =
+ ltwaDir.get().asFile
+ val file =
+ ltwaCsvFile.get().asFile
dir.mkdirs()
- URI(ltwaUrl).toURL().openStream().use { input ->
- file.outputStream().use { output ->
- input.copyTo(output)
+ URI(ltwaUrl).toURL()
+ .openStream()
+ .use { input ->
+ file.outputStream()
+ .use { output ->
+ input.copyTo(
+ output
+ )
+ }
}
- }
- logger.debug("Downloaded LTWA file to $file")
+ logger.debug(
+ "Downloaded LTWA file to $file"
+ )
}
}
-var taskGenerateLtwaListMV = tasks.register("generateLtwaListMV") {
- group = "JabRef"
- description = "Converts the LTWA CSV file to a H2 MVStore"
- dependsOn("downloadLtwaFile", tasks.named("generateGrammarSource"))
+var taskGenerateLtwaListMV =
+ tasks.register(
+ "generateLtwaListMV"
+ ) {
+ group =
+ "JabRef"
+ description =
+ "Converts the LTWA CSV file to a H2 MVStore"
+ dependsOn(
+ "downloadLtwaFile",
+ tasks.named(
+ "generateGrammarSource"
+ )
+ )
- script = rootProject.layout.projectDirectory.file("build-support/src/main/java/LtwaListMvGenerator.java").asFile.absolutePath
+ script =
+ rootProject.layout.projectDirectory.file(
+ "build-support/src/main/java/LtwaListMvGenerator.java"
+ ).asFile.absolutePath
- inputs.file(ltwaCsvFile)
- val ltwaListMv = layout.buildDirectory.file("generated/resources/journals/ltwa-list.mv");
- outputs.file(ltwaListMv)
- onlyIf {!ltwaListMv.get().asFile.exists()}
-}
+ inputs.file(
+ ltwaCsvFile
+ )
+ val ltwaListMv =
+ layout.buildDirectory.file(
+ "generated/resources/journals/ltwa-list.mv"
+ );
+ outputs.file(
+ ltwaListMv
+ )
+ onlyIf { !ltwaListMv.get().asFile.exists() }
+ }
// Adds ltwa, journal-list.mv, and citation-style-catalog.json to the resources directory
sourceSets["main"].resources {
- srcDir(layout.buildDirectory.dir("generated/resources"))
+ srcDir(
+ layout.buildDirectory.dir(
+ "generated/resources"
+ )
+ )
}
// region processResources
-abstract class JoinNonCommentedLines : DefaultTask() {
+abstract class JoinNonCommentedLines :
+ DefaultTask() {
@get:InputFile
abstract val inputFile: RegularFileProperty
@@ -333,57 +658,184 @@ abstract class JoinNonCommentedLines : DefaultTask() {
@TaskAction
fun extract() {
- val input = inputFile.get().asFile
- val result = input.readLines()
- .filterNot { it.trim().startsWith("#") }
- .joinToString(", ")
-
- outputFile.get().asFile.writeText(result)
+ val input =
+ inputFile.get().asFile
+ val result =
+ input.readLines()
+ .filterNot {
+ it.trim()
+ .startsWith(
+ "#"
+ )
+ }
+ .joinToString(
+ ", "
+ )
+
+ outputFile.get().asFile.writeText(
+ result
+ )
}
}
-val extractMaintainers by tasks.registering(JoinNonCommentedLines::class) {
- inputFile.set(layout.projectDirectory.file("../MAINTAINERS"))
- outputFile.set(layout.buildDirectory.file("maintainers.txt"))
+val extractMaintainers by tasks.registering(
+ JoinNonCommentedLines::class
+) {
+ inputFile.set(
+ layout.projectDirectory.file(
+ "../MAINTAINERS"
+ )
+ )
+ outputFile.set(
+ layout.buildDirectory.file(
+ "maintainers.txt"
+ )
+ )
}
-val maintainersProvider: Provider = extractMaintainers.flatMap {
- it.outputFile.map { file -> file.asFile.readText() }
-}
+val maintainersProvider: Provider =
+ extractMaintainers.flatMap {
+ it.outputFile.map { file -> file.asFile.readText() }
+ }
+
+val versionProvider =
+ providers.gradleProperty(
+ "projVersionInfo"
+ )
+ .orElse(
+ "100.0.0"
+ )
+
+val year =
+ Calendar.getInstance()
+ .get(
+ Calendar.YEAR
+ )
+ .toString()
+
+val azureInstrumentationKey =
+ providers.environmentVariable(
+ "AzureInstrumentationKey"
+ )
+ .orElse(
+ ""
+ )
+val springerNatureAPIKey =
+ providers.environmentVariable(
+ "SpringerNatureAPIKey"
+ )
+ .orElse(
+ ""
+ )
+val astrophysicsDataSystemAPIKey =
+ providers.environmentVariable(
+ "AstrophysicsDataSystemAPIKey"
+ )
+ .orElse(
+ ""
+ )
+val ieeeAPIKey =
+ providers.environmentVariable(
+ "IEEEAPIKey"
+ )
+ .orElse(
+ ""
+ )
+val scienceDirectApiKey =
+ providers.environmentVariable(
+ "SCIENCEDIRECTAPIKEY"
+ )
+ .orElse(
+ ""
+ )
+val biodiversityHeritageApiKey =
+ providers.environmentVariable(
+ "BiodiversityHeritageApiKey"
+ )
+ .orElse(
+ ""
+ )
+val semanticScholarApiKey =
+ providers.environmentVariable(
+ "SemanticScholarApiKey"
+ )
+ .orElse(
+ ""
+ )
+val medlineApiKey =
+ providers.environmentVariable(
+ "MedlineApiKey"
+ )
+ .orElse(
+ ""
+ )
+
+tasks.named(
+ "processResources"
+) {
+ dependsOn(
+ extractMaintainers
+ )
+ dependsOn(
+ taskGenerateJournalListMV
+ )
+ dependsOn(
+ taskGenerateCitationStyleCatalog
+ )
+ dependsOn(
+ taskGenerateLtwaListMV
+ )
+ filteringCharset =
+ "UTF-8"
+
+ inputs.property(
+ "version",
+ versionProvider
+ )
+ inputs.property(
+ "year",
+ year
+ )
+ inputs.property(
+ "maintainers",
+ maintainersProvider
+ )
+ inputs.property(
+ "azureInstrumentationKey",
+ azureInstrumentationKey
+ )
+ inputs.property(
+ "springerNatureAPIKey",
+ springerNatureAPIKey
+ )
+ inputs.property(
+ "astrophysicsDataSystemAPIKey",
+ astrophysicsDataSystemAPIKey
+ )
+ inputs.property(
+ "ieeeAPIKey",
+ ieeeAPIKey
+ )
+ inputs.property(
+ "scienceDirectApiKey",
+ scienceDirectApiKey
+ )
+ inputs.property(
+ "biodiversityHeritageApiKey",
+ biodiversityHeritageApiKey
+ )
+ inputs.property(
+ "semanticScholarApiKey",
+ semanticScholarApiKey
+ )
+ inputs.property(
+ "medlineApiKey",
+ medlineApiKey
+ )
-val versionProvider = providers.gradleProperty("projVersionInfo").orElse("100.0.0")
-
-val year = Calendar.getInstance().get(Calendar.YEAR).toString()
-
-val azureInstrumentationKey = providers.environmentVariable("AzureInstrumentationKey").orElse("")
-val springerNatureAPIKey = providers.environmentVariable("SpringerNatureAPIKey").orElse("")
-val astrophysicsDataSystemAPIKey = providers.environmentVariable("AstrophysicsDataSystemAPIKey").orElse("")
-val ieeeAPIKey = providers.environmentVariable("IEEEAPIKey").orElse("")
-val scienceDirectApiKey = providers.environmentVariable("SCIENCEDIRECTAPIKEY").orElse("")
-val biodiversityHeritageApiKey = providers.environmentVariable("BiodiversityHeritageApiKey").orElse("")
-val semanticScholarApiKey = providers.environmentVariable("SemanticScholarApiKey").orElse("")
-val medlineApiKey = providers.environmentVariable("MedlineApiKey").orElse("")
-
-tasks.named("processResources") {
- dependsOn(extractMaintainers)
- dependsOn(taskGenerateJournalListMV)
- dependsOn(taskGenerateCitationStyleCatalog)
- dependsOn(taskGenerateLtwaListMV)
- filteringCharset = "UTF-8"
-
- inputs.property("version", versionProvider)
- inputs.property("year", year)
- inputs.property("maintainers", maintainersProvider)
- inputs.property("azureInstrumentationKey", azureInstrumentationKey)
- inputs.property("springerNatureAPIKey", springerNatureAPIKey)
- inputs.property("astrophysicsDataSystemAPIKey", astrophysicsDataSystemAPIKey)
- inputs.property("ieeeAPIKey", ieeeAPIKey)
- inputs.property("scienceDirectApiKey", scienceDirectApiKey)
- inputs.property("biodiversityHeritageApiKey", biodiversityHeritageApiKey)
- inputs.property("semanticScholarApiKey", semanticScholarApiKey)
- inputs.property("medlineApiKey", medlineApiKey)
-
- filesMatching("build.properties") {
+ filesMatching(
+ "build.properties"
+ ) {
expand(
mapOf(
"version" to inputs.properties["version"],
@@ -407,32 +859,46 @@ tasks.named("processResources") {
"resources/resource/openoffice/meta.xml"
)
) {
- expand(mapOf("version" to inputs.properties["version"]))
+ expand(
+ mapOf(
+ "version" to inputs.properties["version"]
+ )
+ )
}
}
// endregion
-tasks.withType().configureEach {
- options.encoding = "UTF-8"
+tasks.withType()
+ .configureEach {
+ options.encoding =
+ "UTF-8"
- // Hint from https://docs.gradle.org/current/userguide/performance.html#run_the_compiler_as_a_separate_process
- options.isFork = true
+ // Hint from https://docs.gradle.org/current/userguide/performance.html#run_the_compiler_as_a_separate_process
+ options.isFork =
+ true
- options.errorprone {
- disableAllChecks.set(true)
- enable("NullAway")
- }
+ options.errorprone {
+ disableAllChecks.set(
+ true
+ )
+ enable(
+ "NullAway"
+ )
+ }
- options.errorprone.nullaway {
- warn()
- annotatedPackages.add("org.jabref")
+ options.errorprone.nullaway {
+ warn()
+ annotatedPackages.add(
+ "org.jabref"
+ )
+ }
}
-}
tasks.javadoc {
(options as StandardJavadocDocletOptions).apply {
- encoding = "UTF-8"
+ encoding =
+ "UTF-8"
// version = false
// author = false
}
@@ -440,48 +906,78 @@ tasks.javadoc {
tasks.test {
useJUnitPlatform {
- excludeTags("DatabaseTest", "FetcherTest")
+ excludeTags(
+ "DatabaseTest",
+ "FetcherTest"
+ )
}
- jvmArgs = listOf(
- "-javaagent:${mockitoAgent.asPath}",
- "--add-opens", "java.base/jdk.internal.ref=org.apache.pdfbox.io",
- "--add-opens", "java.base/java.nio=org.apache.pdfbox.io",
- "--enable-native-access=com.sun.jna,javafx.graphics,org.apache.lucene.core"
- )
+ jvmArgs =
+ listOf(
+ "-javaagent:${mockitoAgent.asPath}",
+ "--add-opens",
+ "java.base/jdk.internal.ref=org.apache.pdfbox.io",
+ "--add-opens",
+ "java.base/java.nio=org.apache.pdfbox.io",
+ "--enable-native-access=com.sun.jna,javafx.graphics,org.apache.lucene.core"
+ )
}
jmh {
- warmupIterations = 5
- iterations = 10
- fork = 2
- zip64 = true
+ warmupIterations =
+ 5
+ iterations =
+ 10
+ fork =
+ 2
+ zip64 =
+ true
}
-val testSourceSet = sourceSets["test"]
-
-tasks.register("fetcherTest") {
- group = LifecycleBasePlugin.VERIFICATION_GROUP
- testClassesDirs = testSourceSet.output.classesDirs
- classpath = testSourceSet.runtimeClasspath
+val testSourceSet =
+ sourceSets["test"]
+
+tasks.register(
+ "fetcherTest"
+) {
+ group =
+ LifecycleBasePlugin.VERIFICATION_GROUP
+ testClassesDirs =
+ testSourceSet.output.classesDirs
+ classpath =
+ testSourceSet.runtimeClasspath
useJUnitPlatform {
- includeTags("FetcherTest")
+ includeTags(
+ "FetcherTest"
+ )
}
- maxParallelForks = 1
+ maxParallelForks =
+ 1
}
-tasks.register("databaseTest") {
- group = LifecycleBasePlugin.VERIFICATION_GROUP
- testClassesDirs = testSourceSet.output.classesDirs
- classpath = testSourceSet.runtimeClasspath
+tasks.register(
+ "databaseTest"
+) {
+ group =
+ LifecycleBasePlugin.VERIFICATION_GROUP
+ testClassesDirs =
+ testSourceSet.output.classesDirs
+ classpath =
+ testSourceSet.runtimeClasspath
useJUnitPlatform {
- includeTags("DatabaseTest")
+ includeTags(
+ "DatabaseTest"
+ )
}
testLogging {
// set options for log level LIFECYCLE
- events("FAILED")
- exceptionFormat = TestExceptionFormat.FULL
+ events(
+ "FAILED"
+ )
+ exceptionFormat =
+ TestExceptionFormat.FULL
}
- maxParallelForks = 1
+ maxParallelForks =
+ 1
}
/*
@@ -517,50 +1013,84 @@ jacocoTestReport {
*/
mavenPublishing {
- configure(JavaLibrary(
- // configures the -javadoc artifact, possible values:
- // - `JavadocJar.None()` don't publish this artifact
- // - `JavadocJar.Empty()` publish an emprt jar
- // - `JavadocJar.Javadoc()` to publish standard javadocs
- javadocJar = JavadocJar.Javadoc(),
- // whether to publish a sources jar
- sourcesJar = true,
- ))
-
- publishToMavenCentral()
- signAllPublications()
-
- coordinates("org.jabref", "jablib", version)
-
- pom {
- name.set("jablib")
- description.set("JabRef's Java library to work with BibTeX")
- inceptionYear.set("2025")
- url.set("https://github.com/JabRef/jabref/")
- licenses {
- license {
- name.set("MIT")
- url.set("https://github.com/JabRef/jabref/blob/main/LICENSE")
- }
- }
- developers {
- developer {
- id.set("jabref")
- name.set("JabRef Developers")
- url.set("https://github.com/JabRef/")
- }
- }
- scm {
- url.set("https://github.com/JabRef/jabref")
- connection.set("scm:git:https://github.com/JabRef/jabref")
- developerConnection.set("scm:git:git@github.com:JabRef/jabref.git")
+ configure(
+ JavaLibrary(
+ // configures the -javadoc artifact, possible values:
+ // - `JavadocJar.None()` don't publish this artifact
+ // - `JavadocJar.Empty()` publish an emprt jar
+ // - `JavadocJar.Javadoc()` to publish standard javadocs
+ javadocJar = JavadocJar.Javadoc(),
+ // whether to publish a sources jar
+ sourcesJar = true,
+ )
+ )
+
+ publishToMavenCentral()
+ signAllPublications()
+
+ coordinates(
+ "org.jabref",
+ "jablib",
+ version
+ )
+
+ pom {
+ name.set(
+ "jablib"
+ )
+ description.set(
+ "JabRef's Java library to work with BibTeX"
+ )
+ inceptionYear.set(
+ "2025"
+ )
+ url.set(
+ "https://github.com/JabRef/jabref/"
+ )
+ licenses {
+ license {
+ name.set(
+ "MIT"
+ )
+ url.set(
+ "https://github.com/JabRef/jabref/blob/main/LICENSE"
+ )
+ }
+ }
+ developers {
+ developer {
+ id.set(
+ "jabref"
+ )
+ name.set(
+ "JabRef Developers"
+ )
+ url.set(
+ "https://github.com/JabRef/"
+ )
+ }
+ }
+ scm {
+ url.set(
+ "https://github.com/JabRef/jabref"
+ )
+ connection.set(
+ "scm:git:https://github.com/JabRef/jabref"
+ )
+ developerConnection.set(
+ "scm:git:git@github.com:JabRef/jabref.git"
+ )
+ }
}
- }
}
-tasks.named("sourcesJar") {
+tasks.named(
+ "sourcesJar"
+) {
dependsOn(
- tasks.named("generateGrammarSource"),
+ tasks.named(
+ "generateGrammarSource"
+ ),
// We have generated/resources on the sources path, which needs to be populated
taskGenerateJournalListMV,
@@ -572,29 +1102,58 @@ tasks.named("sourcesJar") {
// Include the BOM in the generated POM ("inline" / "inlining")
// Source: https://github.com/gradle/gradle/issues/10861#issuecomment-3027387345
-publishing.publications.withType().configureEach {
- versionMapping {
- allVariants { fromResolutionResult() }
+publishing.publications.withType()
+ .configureEach {
+ versionMapping {
+ allVariants { fromResolutionResult() }
+ }
}
-}
-javaModuleTesting.whitebox(testing.suites["test"]) {
- requires.add("io.github.classgraph")
- requires.add("org.junit.jupiter.api")
- requires.add("org.junit.jupiter.params")
- requires.add("org.jabref.testsupport")
- requires.add("org.hamcrest")
- requires.add("org.mockito")
+javaModuleTesting.whitebox(
+ testing.suites["test"]
+) {
+ requires.add(
+ "io.github.classgraph"
+ )
+ requires.add(
+ "org.junit.jupiter.api"
+ )
+ requires.add(
+ "org.junit.jupiter.params"
+ )
+ requires.add(
+ "org.jabref.testsupport"
+ )
+ requires.add(
+ "org.hamcrest"
+ )
+ requires.add(
+ "org.mockito"
+ )
// Required for LocalizationConsistencyTest
- requires.add("org.testfx.junit5")
+ requires.add(
+ "org.testfx.junit5"
+ )
// requires.add("org.assertj.core")
- requires.add("org.xmlunit")
- requires.add("org.xmlunit.matchers")
- requires.add("wiremock")
- requires.add("wiremock.slf4j.spi.shim")
+ requires.add(
+ "org.xmlunit"
+ )
+ requires.add(
+ "org.xmlunit.matchers"
+ )
+ requires.add(
+ "wiremock"
+ )
+ requires.add(
+ "wiremock.slf4j.spi.shim"
+ )
- requires.add("com.tngtech.archunit")
- requires.add("com.tngtech.archunit.junit5.api")
+ requires.add(
+ "com.tngtech.archunit"
+ )
+ requires.add(
+ "com.tngtech.archunit.junit5.api"
+ )
}
diff --git a/jablib/lib/com/ibm/icu/icu4j/72.0.1/icu4j-72.0.1.pom b/jablib/lib/com/ibm/icu/icu4j/72.0.1/icu4j-72.0.1.pom
index 780071d49b2..4bf9c0ac3b5 100644
--- a/jablib/lib/com/ibm/icu/icu4j/72.0.1/icu4j-72.0.1.pom
+++ b/jablib/lib/com/ibm/icu/icu4j/72.0.1/icu4j-72.0.1.pom
@@ -1,6 +1,14 @@
- 4.0.0
- com.ibm.icu
- icu4j
- 72.0.1
+
+ 4.0.0
+
+
+ com.ibm.icu
+
+
+ icu4j
+
+
+ 72.0.1
+
diff --git a/jablib/src/main/java/org/jabref/logic/ai/ingestion/LowLevelIngestor.java b/jablib/src/main/java/org/jabref/logic/ai/ingestion/LowLevelIngestor.java
index 3138dcf424b..5a604c06383 100644
--- a/jablib/src/main/java/org/jabref/logic/ai/ingestion/LowLevelIngestor.java
+++ b/jablib/src/main/java/org/jabref/logic/ai/ingestion/LowLevelIngestor.java
@@ -57,7 +57,7 @@ private void setupListeningToPreferencesChanges() {
* Add document to embedding store.
* This method does not check if file was already ingested.
*
- * @param document - document to add.
+ * @param document - document to add.
* @param stopProperty - in case you want to stop the ingestion process, set this property to true.
*/
public void ingestDocument(Document document, ReadOnlyBooleanProperty stopProperty, IntegerProperty workDone, IntegerProperty workMax) throws InterruptedException {
diff --git a/jablib/src/main/java/org/jabref/logic/auxparser/DefaultAuxParser.java b/jablib/src/main/java/org/jabref/logic/auxparser/DefaultAuxParser.java
index 11b1e4aac7f..edc2eca1456 100644
--- a/jablib/src/main/java/org/jabref/logic/auxparser/DefaultAuxParser.java
+++ b/jablib/src/main/java/org/jabref/logic/auxparser/DefaultAuxParser.java
@@ -145,7 +145,7 @@ private void resolveTags(AuxParserResult result) {
* Resolves and adds CrossRef entries to insert them in addition to the original entries
*
* @param entries Entries to check for CrossRefs
- * @param result AUX file
+ * @param result AUX file
*/
private void resolveCrossReferences(List entries, AuxParserResult result) {
List entriesToInsert = new ArrayList<>();
@@ -172,7 +172,7 @@ private void resolveCrossReferences(List entries, AuxParserResult resu
* Insert a clone of each given entry. The clones are each given a new unique ID.
*
* @param entries Entries to be cloned
- * @param result the parser result (representing the AUX file)
+ * @param result the parser result (representing the AUX file)
*/
private void insertEntries(List entries, AuxParserResult result) {
List clonedEntries = new ArrayList<>();
diff --git a/jablib/src/main/java/org/jabref/logic/bibtex/BibEntryWriter.java b/jablib/src/main/java/org/jabref/logic/bibtex/BibEntryWriter.java
index 182ecf676cd..68192728305 100644
--- a/jablib/src/main/java/org/jabref/logic/bibtex/BibEntryWriter.java
+++ b/jablib/src/main/java/org/jabref/logic/bibtex/BibEntryWriter.java
@@ -61,10 +61,10 @@ public void write(BibEntry entry, BibWriter out, BibDatabaseMode bibDatabaseMode
/// Writes the given BibEntry using the given writer
///
- /// @param entry The entry to write
- /// @param out The writer to use
+ /// @param entry The entry to write
+ /// @param out The writer to use
/// @param bibDatabaseMode The database mode (bibtex or biblatex)
- /// @param reformat Should the entry be in any case, even if no change occurred?
+ /// @param reformat Should the entry be in any case, even if no change occurred?
public void write(BibEntry entry, BibWriter out, BibDatabaseMode bibDatabaseMode, boolean reformat) throws IOException {
// if the entry has not been modified, write it as it was
if (!reformat && !entry.hasChanged()) {
@@ -160,7 +160,7 @@ private void writeKeyField(BibEntry entry, BibWriter out) throws IOException {
/// Write a single field, if it has any content.
///
/// @param entry the entry to write
- /// @param out the target of the write
+ /// @param out the target of the write
/// @param field the field
/// @throws IOException In case of an IO error
private void writeField(BibEntry entry, BibWriter out, Field field, int indent) throws IOException {
diff --git a/jablib/src/main/java/org/jabref/logic/bibtex/FieldWriter.java b/jablib/src/main/java/org/jabref/logic/bibtex/FieldWriter.java
index 67c08b63f7b..b5fd78d6a4b 100644
--- a/jablib/src/main/java/org/jabref/logic/bibtex/FieldWriter.java
+++ b/jablib/src/main/java/org/jabref/logic/bibtex/FieldWriter.java
@@ -90,7 +90,7 @@ private static String getErrorContextSnippet(String text, int index) {
* Checks if the character at the specified index in the given text is escaped.
* A character is considered escaped if it is preceded by an odd number of backslashes (\).
*
- * @param text the input string to check for escaped characters
+ * @param text the input string to check for escaped characters
* @param index the index of the character in the text to check for escaping
* @return true if the character at the specified index is escaped, false otherwise
*/
@@ -109,7 +109,7 @@ private static boolean isEscaped(String text, int index) {
/**
* Formats the content of a field.
*
- * @param field the name of the field - used to trigger different serializations, e.g., turning off resolution for some strings
+ * @param field the name of the field - used to trigger different serializations, e.g., turning off resolution for some strings
* @param content the content of the field
* @return a formatted string suitable for output
* @throws InvalidFieldValueException if content is not a correct bibtex string, e.g., because of improperly balanced braces or using # not paired
@@ -225,7 +225,7 @@ private String formatWithoutResolvingStrings(String content) throws InvalidField
/**
* @param stringBuilder the StringBuilder to append the text to
- * @param text the text to append
+ * @param text the text to append
*/
private void writeText(StringBuilder stringBuilder, String text, int startPos, int endPos) {
stringBuilder.append(FIELD_START);
@@ -235,11 +235,11 @@ private void writeText(StringBuilder stringBuilder, String text, int startPos, i
/**
* @param stringBuilder the StringBuilder to append the text to
- * @param text the text use as basis to get the text to append
- * @param startPos the position in text where the text to add starts
- * @param endPos the position in text where the text to add ends
- * @param isFirst true if the label to write is the first one to write
- * @param isLast true if the label to write is the last one to write
+ * @param text the text use as basis to get the text to append
+ * @param startPos the position in text where the text to add starts
+ * @param endPos the position in text where the text to add ends
+ * @param isFirst true if the label to write is the first one to write
+ * @param isLast true if the label to write is the last one to write
*/
private void writeStringLabel(StringBuilder stringBuilder, String text, int startPos, int endPos, boolean isFirst, boolean isLast) {
String line = (isFirst ? "" : " # ") + text.substring(startPos, endPos) + (isLast ? "" : " # ");
diff --git a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/BibtexStringComparator.java b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/BibtexStringComparator.java
index 36df24c09e7..a19dcf4c52e 100644
--- a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/BibtexStringComparator.java
+++ b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/BibtexStringComparator.java
@@ -11,8 +11,8 @@ public class BibtexStringComparator implements Comparator {
/**
* @param considerRefs Indicates whether the strings should be
- * sorted according to internal references in addition to
- * alphabetical sorting.
+ * sorted according to internal references in addition to
+ * alphabetical sorting.
*/
public BibtexStringComparator(boolean considerRefs) {
this.considerRefs = considerRefs;
diff --git a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/EntryComparator.java b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/EntryComparator.java
index c6ab47480e3..f80bd483709 100644
--- a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/EntryComparator.java
+++ b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/EntryComparator.java
@@ -26,10 +26,10 @@ public class EntryComparator implements Comparator {
/**
*
- * @param binary true: the presence of fields is checked; false: the content of the fields is compared
+ * @param binary true: the presence of fields is checked; false: the content of the fields is compared
* @param descending true: if the most different entry should get the highest score
- * @param field the field to sort on
- * @param next the next comparator to use (if the current comparator results in equality)
+ * @param field the field to sort on
+ * @param next the next comparator to use (if the current comparator results in equality)
*/
public EntryComparator(boolean binary, boolean descending, Field field, Comparator next) {
this.binary = binary;
diff --git a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/FieldValuePlausibilityComparator.java b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/FieldValuePlausibilityComparator.java
index 0ddca78d10f..9bc4c730037 100644
--- a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/FieldValuePlausibilityComparator.java
+++ b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/FieldValuePlausibilityComparator.java
@@ -4,7 +4,7 @@ public abstract class FieldValuePlausibilityComparator {
/**
* Compares the plausibility of two field values.
*
- * @param leftValue value from the library (or candidate)
+ * @param leftValue value from the library (or candidate)
* @param rightValue value from the fetcher (or existing record)
* @return ComparisonResult indicating which field is more plausible: RIGHT_BETTER, LEFT_BETTER, or UNDETERMINED
*/
diff --git a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/YearFieldValuePlausibilityComparator.java b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/YearFieldValuePlausibilityComparator.java
index de593158b98..a636fe49961 100644
--- a/jablib/src/main/java/org/jabref/logic/bibtex/comparator/YearFieldValuePlausibilityComparator.java
+++ b/jablib/src/main/java/org/jabref/logic/bibtex/comparator/YearFieldValuePlausibilityComparator.java
@@ -15,7 +15,7 @@ public class YearFieldValuePlausibilityComparator extends FieldValuePlausibility
/**
* Compares the plausibility of two field values.
*
- * @param leftValue value from the library (or candidate)
+ * @param leftValue value from the library (or candidate)
* @param rightValue value from the fetcher (or existing record)
* @return ComparisonResult indicating which year is more plausible: RIGHT_BETTER, LEFT_BETTER, or UNDETERMINED
*/
diff --git a/jablib/src/main/java/org/jabref/logic/bst/BstVM.java b/jablib/src/main/java/org/jabref/logic/bst/BstVM.java
index 8f401c9089c..842fa4641f6 100644
--- a/jablib/src/main/java/org/jabref/logic/bst/BstVM.java
+++ b/jablib/src/main/java/org/jabref/logic/bst/BstVM.java
@@ -62,7 +62,7 @@ private static ParseTree charStream2CommonTree(CharStream query) {
/**
* Transforms the given list of BibEntries to a rendered list of references using the parsed bst program
*
- * @param bibEntries list of entries to convert
+ * @param bibEntries list of entries to convert
* @param bibDatabase (may be null) the bibDatabase used for resolving strings / crossref
* @return list of references in plain text form
*/
diff --git a/jablib/src/main/java/org/jabref/logic/bst/util/BstCaseChanger.java b/jablib/src/main/java/org/jabref/logic/bst/util/BstCaseChanger.java
index d7f862f1fcf..a6f59b5a37c 100644
--- a/jablib/src/main/java/org/jabref/logic/bst/util/BstCaseChanger.java
+++ b/jablib/src/main/java/org/jabref/logic/bst/util/BstCaseChanger.java
@@ -73,7 +73,7 @@ private BstCaseChanger() {
/**
* Changes case of the given string s
*
- * @param s the string to handle
+ * @param s the string to handle
* @param format the format
*/
public static String changeCase(String s, FormatMode format) {
@@ -261,7 +261,7 @@ private int convertCharIfBraceLevelIsZero(char[] c, int start, StringBuilder sb,
*
* Also used by BibtexPurify
*
- * @param c the current "String"
+ * @param c the current "String"
* @param pos the position
* @return the special LaTeX character or null
*/
diff --git a/jablib/src/main/java/org/jabref/logic/bst/util/BstNameFormatter.java b/jablib/src/main/java/org/jabref/logic/bst/util/BstNameFormatter.java
index 8b0a66c9a99..3034edf863d 100644
--- a/jablib/src/main/java/org/jabref/logic/bst/util/BstNameFormatter.java
+++ b/jablib/src/main/java/org/jabref/logic/bst/util/BstNameFormatter.java
@@ -38,8 +38,8 @@ private BstNameFormatter() {
* Formats the nth author of the author name list by a given format string
*
* @param authorsNameList The string from an author field
- * @param whichName index of the list, starting with 1
- * @param formatString TODO
+ * @param whichName index of the list, starting with 1
+ * @param formatString TODO
*/
public static String formatName(String authorsNameList, int whichName, String formatString) {
AuthorList al = AuthorList.parse(authorsNameList);
diff --git a/jablib/src/main/java/org/jabref/logic/citationkeypattern/BracketedPattern.java b/jablib/src/main/java/org/jabref/logic/citationkeypattern/BracketedPattern.java
index d2d4de44f39..48d989e0467 100644
--- a/jablib/src/main/java/org/jabref/logic/citationkeypattern/BracketedPattern.java
+++ b/jablib/src/main/java/org/jabref/logic/citationkeypattern/BracketedPattern.java
@@ -172,9 +172,9 @@ public String expand(@NonNull BibEntry bibentry, BibDatabase database) {
/**
* Expands the current pattern using the given bibentry, keyword delimiter, and database.
*
- * @param bibentry The bibentry to expand.
+ * @param bibentry The bibentry to expand.
* @param keywordDelimiter The keyword delimiter to use.
- * @param database The database to use for string-lookups and cross-refs. May be null.
+ * @param database The database to use for string-lookups and cross-refs. May be null.
* @return The expanded pattern. The empty string is returned, if it could not be expanded.
*/
public String expand(@NonNull BibEntry bibentry, Character keywordDelimiter, BibDatabase database) {
@@ -184,10 +184,10 @@ public String expand(@NonNull BibEntry bibentry, Character keywordDelimiter, Bib
/**
* Expands a pattern
*
- * @param pattern The pattern to expand
+ * @param pattern The pattern to expand
* @param keywordDelimiter The keyword delimiter to use
- * @param entry The bibEntry to use for expansion
- * @param database The database for field resolving. May be null.
+ * @param entry The bibEntry to use for expansion
+ * @param database The database for field resolving. May be null.
* @return The expanded pattern. Not null.
*/
public static String expandBrackets(@NonNull String pattern, Character keywordDelimiter, @NonNull BibEntry entry, BibDatabase database) {
@@ -199,8 +199,8 @@ public static String expandBrackets(@NonNull String pattern, Character keywordDe
* expanding it.
*
* @param keywordDelimiter The keyword delimiter to use
- * @param entry The {@link BibEntry} to use for expansion
- * @param database The {@link BibDatabase} for field resolving. May be null.
+ * @param entry The {@link BibEntry} to use for expansion
+ * @param database The {@link BibDatabase} for field resolving. May be null.
* @return a function accepting a bracketed expression and returning the result of expanding it
*/
public static Function expandBracketContent(Character keywordDelimiter, BibEntry entry, BibDatabase database) {
@@ -220,9 +220,9 @@ public static Function expandBracketContent(Character keywordDel
/**
* Expands a pattern.
*
- * @param pattern The pattern to expand
+ * @param pattern The pattern to expand
* @param bracketContentHandler A function taking the string representation of the content of a bracketed pattern
- * and expanding it
+ * and expanding it
* @return The expanded pattern. Not null.
*/
public static String expandBrackets(@NonNull String pattern, Function bracketContentHandler) {
@@ -260,7 +260,7 @@ public static String expandBrackets(@NonNull String pattern, FunctionStringBuilder to which tokens will be appended
- * @param tokenizer the tokenizer producing the tokens
+ * @param tokenizer the tokenizer producing the tokens
*/
private static void appendQuote(StringBuilder stringBuilder, StringTokenizer tokenizer) {
stringBuilder.append("\""); // We know that the previous token was \"
@@ -320,10 +320,10 @@ private static void appendQuote(StringBuilder stringBuilder, StringTokenizer tok
/**
* Evaluates the given pattern to the given bibentry and database
*
- * @param entry The entry to get the field value from
- * @param pattern A pattern string (such as auth, pureauth, authorLast)
+ * @param entry The entry to get the field value from
+ * @param pattern A pattern string (such as auth, pureauth, authorLast)
* @param keywordDelimiter The de
- * @param database The database to use for field resolving. May be null.
+ * @param database The database to use for field resolving. May be null.
* @return String containing the evaluation result. Empty string if the pattern cannot be resolved.
*/
public static String getFieldValue(BibEntry entry, String pattern, Character keywordDelimiter, BibDatabase database) {
@@ -561,9 +561,9 @@ private static boolean isInstitution(Author author) {
/**
* Applies modifiers to a label generated based on a field marker.
*
- * @param label The generated label.
- * @param parts String array containing the modifiers.
- * @param offset The number of initial items in the modifiers array to skip.
+ * @param label The generated label.
+ * @param parts String array containing the modifiers.
+ * @param offset The number of initial items in the modifiers array to skip.
* @param expandBracketContent a function to expand the content in the parentheses.
* @return The modified label.
*/
@@ -951,8 +951,8 @@ private static String getOrganizationInitials(String orgName) {
*
* @param authorList the list of authors
* @param maxAuthors the maximum number of authors in the string
- * @param delimiter delimiter separating the last names of the authors
- * @param suffix to replace excess authors with. Also used to replace and others.
+ * @param delimiter delimiter separating the last names of the authors
+ * @param suffix to replace excess authors with. Also used to replace and others.
* @return a string consisting of authors' last names separated by a `delimiter` and with any authors excess of
* `maxAuthors` replaced with `suffix`
*/
@@ -979,7 +979,7 @@ public static String joinAuthorsOnLastName(AuthorList authorList, int maxAuthors
* Gets the surnames of the first N authors and appends EtAl if there are more than N authors
*
* @param authorList an {@link AuthorList}
- * @param n the number of desired authors
+ * @param n the number of desired authors
* @return Gets the surnames of the first N authors and appends EtAl if there are more than N authors
*/
private static String nAuthors(AuthorList authorList, int n) {
@@ -1081,8 +1081,8 @@ static String authShort(AuthorList authorList) {
* authIniN format
*
* @param authorList The authors to format.
- * @param n The maximum number of characters this string will be long. A negative number or zero will lead
- * to "" be returned.
+ * @param n The maximum number of characters this string will be long. A negative number or zero will lead
+ * to "" be returned.
*/
static String authIniN(AuthorList authorList, int n) {
if ((n <= 0) || authorList.isEmpty()) {
diff --git a/jablib/src/main/java/org/jabref/logic/citationkeypattern/CitationKeyGenerator.java b/jablib/src/main/java/org/jabref/logic/citationkeypattern/CitationKeyGenerator.java
index 1f276632e88..bb6b9561e74 100644
--- a/jablib/src/main/java/org/jabref/logic/citationkeypattern/CitationKeyGenerator.java
+++ b/jablib/src/main/java/org/jabref/logic/citationkeypattern/CitationKeyGenerator.java
@@ -115,7 +115,7 @@ public String generateKey(@NonNull BibEntry entry) {
/**
* A letter will be appended to the key based on the user's preferences, either always or to prevent duplicated keys.
*
- * @param key the new key
+ * @param key the new key
* @param oldKey the old key
* @return a key, if needed, with an appended letter
*/
diff --git a/jablib/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java b/jablib/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java
index 474d9e92379..1e4324dce06 100644
--- a/jablib/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java
+++ b/jablib/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java
@@ -61,7 +61,7 @@ public synchronized Citation makeCitation(List bibEntries, String styl
/**
* Initialized the static CSL instance if needed.
*
- * @param newStyle journal style of the output
+ * @param newStyle journal style of the output
* @param newFormat usually HTML or RTF.
* @throws IOException An error occurred in the underlying framework
*/
diff --git a/jablib/src/main/java/org/jabref/logic/citationstyle/CSLStyleUtils.java b/jablib/src/main/java/org/jabref/logic/citationstyle/CSLStyleUtils.java
index 30863e28814..3d4c5f45c9b 100644
--- a/jablib/src/main/java/org/jabref/logic/citationstyle/CSLStyleUtils.java
+++ b/jablib/src/main/java/org/jabref/logic/citationstyle/CSLStyleUtils.java
@@ -114,7 +114,7 @@ private static Optional createCitationStyleFromSource(InputStream
* Parses the style information from a style content using StAX.
*
* @param filename The filename of the style (for logging)
- * @param content The XML content of the style
+ * @param content The XML content of the style
* @return Optional containing the StyleInfo if valid, empty otherwise
*/
public static Optional parseStyleInfo(String filename, String content) {
diff --git a/jablib/src/main/java/org/jabref/logic/cleanup/FieldFormatterCleanup.java b/jablib/src/main/java/org/jabref/logic/cleanup/FieldFormatterCleanup.java
index 3528cdc5df9..a50dc692304 100644
--- a/jablib/src/main/java/org/jabref/logic/cleanup/FieldFormatterCleanup.java
+++ b/jablib/src/main/java/org/jabref/logic/cleanup/FieldFormatterCleanup.java
@@ -43,7 +43,7 @@ public List cleanup(BibEntry entry) {
* If the formatter returns an empty string, then the field is removed.
*
* @param fieldKey the field on which to run the formatter
- * @param entry the entry to be cleaned up
+ * @param entry the entry to be cleaned up
* @return a list of changes of the entry
*/
private List cleanupSingleField(Field fieldKey, BibEntry entry) {
diff --git a/jablib/src/main/java/org/jabref/logic/crawler/StudyRepository.java b/jablib/src/main/java/org/jabref/logic/crawler/StudyRepository.java
index e7816846598..5ed8d619a3b 100644
--- a/jablib/src/main/java/org/jabref/logic/crawler/StudyRepository.java
+++ b/jablib/src/main/java/org/jabref/logic/crawler/StudyRepository.java
@@ -75,11 +75,11 @@ public class StudyRepository {
* Creates a study repository.
*
* @param pathToRepository Where the repository root is located.
- * @param gitHandler The git handler that manages any interaction with the remote repository
+ * @param gitHandler The git handler that manages any interaction with the remote repository
* @throws IllegalArgumentException If the repository root directory does not exist, or the root directory does not
- * contain the study definition file.
- * @throws IOException Thrown if the given repository does not exist, or the study definition file
- * does not exist
+ * contain the study definition file.
+ * @throws IOException Thrown if the given repository does not exist, or the study definition file
+ * does not exist
*/
public StudyRepository(Path pathToRepository,
SlrGitHandler gitHandler,
diff --git a/jablib/src/main/java/org/jabref/logic/database/DatabaseMerger.java b/jablib/src/main/java/org/jabref/logic/database/DatabaseMerger.java
index caceb23a09e..42e67902fbf 100644
--- a/jablib/src/main/java/org/jabref/logic/database/DatabaseMerger.java
+++ b/jablib/src/main/java/org/jabref/logic/database/DatabaseMerger.java
@@ -89,8 +89,8 @@ public void mergeStrings(BibDatabase target, BibDatabase other) {
}
/**
- * @param target the metaData that is the merge target
- * @param other the metaData to merge into the target
+ * @param target the metaData that is the merge target
+ * @param other the metaData to merge into the target
* @param otherFilename the filename of the other library. Pass "unknown" if not known.
*/
public void mergeMetaData(@NonNull MetaData target,
diff --git a/jablib/src/main/java/org/jabref/logic/database/DuplicateCheck.java b/jablib/src/main/java/org/jabref/logic/database/DuplicateCheck.java
index 5aae78d1729..fdeeb8c40a6 100644
--- a/jablib/src/main/java/org/jabref/logic/database/DuplicateCheck.java
+++ b/jablib/src/main/java/org/jabref/logic/database/DuplicateCheck.java
@@ -355,7 +355,7 @@ public boolean isDuplicate(final BibEntry one, final BibEntry two, final BibData
* The search is terminated when the first duplicate is found.
*
* @param database The database to search.
- * @param entry The entry of which we are looking for duplicates.
+ * @param entry The entry of which we are looking for duplicates.
* @return The first duplicate entry found. Empty Optional if no duplicates are found.
*/
public Optional containsDuplicate(final BibDatabase database,
diff --git a/jablib/src/main/java/org/jabref/logic/exporter/AtomicFileOutputStream.java b/jablib/src/main/java/org/jabref/logic/exporter/AtomicFileOutputStream.java
index a52633c975a..3bb6560f3b8 100644
--- a/jablib/src/main/java/org/jabref/logic/exporter/AtomicFileOutputStream.java
+++ b/jablib/src/main/java/org/jabref/logic/exporter/AtomicFileOutputStream.java
@@ -75,7 +75,7 @@ public class AtomicFileOutputStream extends FilterOutputStream {
/**
* Creates a new output stream to write to or replace the file at the specified path.
*
- * @param path the path of the file to write to or replace
+ * @param path the path of the file to write to or replace
* @param keepBackup whether to keep the backup file (.sav) after a successful write process
*/
public AtomicFileOutputStream(Path path, boolean keepBackup) throws IOException {
diff --git a/jablib/src/main/java/org/jabref/logic/exporter/EmbeddedBibFilePdfExporter.java b/jablib/src/main/java/org/jabref/logic/exporter/EmbeddedBibFilePdfExporter.java
index a0fc753f888..14553ef7ab2 100644
--- a/jablib/src/main/java/org/jabref/logic/exporter/EmbeddedBibFilePdfExporter.java
+++ b/jablib/src/main/java/org/jabref/logic/exporter/EmbeddedBibFilePdfExporter.java
@@ -59,8 +59,8 @@ public EmbeddedBibFilePdfExporter(BibDatabaseMode bibDatabaseMode, BibEntryTypes
/**
* @param databaseContext the database to export from
- * @param file the file to write to. If it contains "split", then the output is split into different files
- * @param entries a list containing all entries that should be exported
+ * @param file the file to write to. If it contains "split", then the output is split into different files
+ * @param entries a list containing all entries that should be exported
*/
@Override
public void export(@NonNull BibDatabaseContext databaseContext,
diff --git a/jablib/src/main/java/org/jabref/logic/exporter/Exporter.java b/jablib/src/main/java/org/jabref/logic/exporter/Exporter.java
index decacb48570..e2c6ccdec06 100644
--- a/jablib/src/main/java/org/jabref/logic/exporter/Exporter.java
+++ b/jablib/src/main/java/org/jabref/logic/exporter/Exporter.java
@@ -60,8 +60,8 @@ public String toString() {
* Performs the export.
*
* @param databaseContext the database to export from
- * @param file the file to write to
- * @param entries a list containing all entries that should be exported
+ * @param file the file to write to
+ * @param entries a list containing all entries that should be exported
*/
public abstract void export(@NonNull BibDatabaseContext databaseContext,
Path file,
@@ -80,10 +80,10 @@ public void export(BibDatabaseContext databaseContext,
/**
* Exports to all files linked to a given entry
*
- * @param databaseContext the database to export from
- * @param filePreferences the filePreferences to use for resolving paths
- * @param entryToWriteOn the entry for which we want to write on all linked pdfs
- * @param entriesToWrite the content that we want to export to the pdfs
+ * @param databaseContext the database to export from
+ * @param filePreferences the filePreferences to use for resolving paths
+ * @param entryToWriteOn the entry for which we want to write on all linked pdfs
+ * @param entriesToWrite the content that we want to export to the pdfs
* @param abbreviationRepository the opened repository of journal abbreviations
* @return whether any file was written on
* @throws IOException if the writing fails
@@ -115,9 +115,9 @@ public boolean exportToAllFilesOfEntry(BibDatabaseContext databaseContext,
* If it overwrites any existing information, only the last found bib-entry will be exported (as the previous exports are overwritten).
* If it extends existing information, all found bib-entries will be exported.
*
- * @param databaseContext the database-context to export from
- * @param filePreferences the filePreferences to use for resolving paths
- * @param filePath the path to the file we want to write on
+ * @param databaseContext the database-context to export from
+ * @param filePreferences the filePreferences to use for resolving paths
+ * @param filePath the path to the file we want to write on
* @param abbreviationRepository the opened repository of journal abbreviations
* @return whether the file was written on at least once
* @throws IOException if the writing fails
diff --git a/jablib/src/main/java/org/jabref/logic/exporter/TemplateExporter.java b/jablib/src/main/java/org/jabref/logic/exporter/TemplateExporter.java
index f34d5e592c8..54849a7af4a 100644
--- a/jablib/src/main/java/org/jabref/logic/exporter/TemplateExporter.java
+++ b/jablib/src/main/java/org/jabref/logic/exporter/TemplateExporter.java
@@ -59,9 +59,9 @@ public class TemplateExporter extends Exporter {
*
* @param displayName Name to display to the user.
* @param consoleName Name to call this format in the console.
- * @param lfFileName Name of the main layout file.
- * @param directory Directory in which to find the layout file.
- * @param extension Should contain the . (for instance .txt).
+ * @param lfFileName Name of the main layout file.
+ * @param directory Directory in which to find the layout file.
+ * @param extension Should contain the . (for instance .txt).
*/
public TemplateExporter(String displayName,
String consoleName,
@@ -74,9 +74,9 @@ public TemplateExporter(String displayName,
/**
* Initialize another export format based on templates stored in dir with layoutFile lfFilename.
*
- * @param name to display to the user and to call this format in the console.
+ * @param name to display to the user and to call this format in the console.
* @param lfFileName Name of the main layout file.
- * @param extension May or may not contain the . (for instance .txt).
+ * @param extension May or may not contain the . (for instance .txt).
*/
public TemplateExporter(String name,
String lfFileName,
@@ -97,9 +97,9 @@ public TemplateExporter(String name,
*
* @param displayName Name to display to the user.
* @param consoleName Name to call this format in the console.
- * @param lfFileName Name of the main layout file.
- * @param directory Directory in which to find the layout file.
- * @param extension Should contain the . (for instance .txt).
+ * @param lfFileName Name of the main layout file.
+ * @param directory Directory in which to find the layout file.
+ * @param extension Should contain the . (for instance .txt).
*/
public TemplateExporter(String displayName,
String consoleName,
@@ -114,12 +114,12 @@ public TemplateExporter(String displayName,
/**
* Initialize another export format based on templates stored in dir with layoutFile lfFilename.
*
- * @param displayName Name to display to the user.
- * @param consoleName Name to call this format in the console.
- * @param lfFileName Name of the main layout file.
- * @param directory Directory in which to find the layout file.
- * @param extension Should contain the . (for instance .txt).
- * @param layoutPreferences Preferences for layout
+ * @param displayName Name to display to the user.
+ * @param consoleName Name to call this format in the console.
+ * @param lfFileName Name of the main layout file.
+ * @param directory Directory in which to find the layout file.
+ * @param extension Should contain the . (for instance .txt).
+ * @param layoutPreferences Preferences for layout
* @param blankLineBehaviour how to behave regarding blank lines.
*/
public TemplateExporter(String displayName,
diff --git a/jablib/src/main/java/org/jabref/logic/exporter/XmpExporter.java b/jablib/src/main/java/org/jabref/logic/exporter/XmpExporter.java
index f3901ef90b5..9605e1316aa 100644
--- a/jablib/src/main/java/org/jabref/logic/exporter/XmpExporter.java
+++ b/jablib/src/main/java/org/jabref/logic/exporter/XmpExporter.java
@@ -32,8 +32,8 @@ public XmpExporter(XmpPreferences xmpPreferences) {
/**
* @param databaseContext the database to export from
- * @param file the file to write to. If it contains "split", then the output is split into different files
- * @param entries a list containing all entries that should be exported
+ * @param file the file to write to. If it contains "split", then the output is split into different files
+ * @param entries a list containing all entries that should be exported
*/
@Override
public void export(@NonNull BibDatabaseContext databaseContext,
diff --git a/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/NormalizeWhitespaceFormatter.java b/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/NormalizeWhitespaceFormatter.java
index c9215e2b36b..223a631e614 100644
--- a/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/NormalizeWhitespaceFormatter.java
+++ b/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/NormalizeWhitespaceFormatter.java
@@ -32,7 +32,7 @@ public NormalizeWhitespaceFormatter(@NonNull FieldPreferences preferences) {
* Also depends on the caller whether strings have been resolved.
*
* @param fieldContent the content to format.
- * @param field the name of the bibtex field
+ * @param field the name of the bibtex field
* @return the formatted field content.
*/
public String format(String fieldContent, Field field) {
@@ -53,7 +53,7 @@ public String format(String fieldContent, Field field) {
* content. This allows for things like jan { - } feb to be passed.
*
* @param fieldContent the content to format.
- * @param field the name of the bibtex field
+ * @param field the name of the bibtex field
* @return the formatted field content.
*/
public String format(StringBuilder fieldContent, Field field) {
diff --git a/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/RegexFormatter.java b/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/RegexFormatter.java
index 1aa7131e004..4529c622a2b 100644
--- a/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/RegexFormatter.java
+++ b/jablib/src/main/java/org/jabref/logic/formatter/bibtexfields/RegexFormatter.java
@@ -50,7 +50,7 @@ public class RegexFormatter extends Formatter {
* Constructs a new regular expression-based formatter with the given RegEx.
*
* @param input the regular expressions for matching and replacing given in the form {@code ("",
- * "")}.
+ * "")}.
*/
public RegexFormatter(@NonNull String input) {
input = input.trim().replace("\\\"", PLACEHOLDER_FOR_QUOTE_SIGN);
diff --git a/jablib/src/main/java/org/jabref/logic/git/conflicts/SemanticConflictDetector.java b/jablib/src/main/java/org/jabref/logic/git/conflicts/SemanticConflictDetector.java
index 75721da20c5..8642f3967b6 100644
--- a/jablib/src/main/java/org/jabref/logic/git/conflicts/SemanticConflictDetector.java
+++ b/jablib/src/main/java/org/jabref/logic/git/conflicts/SemanticConflictDetector.java
@@ -65,8 +65,8 @@ public static List detectConflicts(BibDatabaseContext bas
* Detect entry-level conflicts among base, local, and remote versions of an entry.
*
*
- * @param base the entry in the common ancestor
- * @param local the entry in the local version
+ * @param base the entry in the common ancestor
+ * @param local the entry in the local version
* @param remote the entry in the remote version
* @return optional conflict (if detected)
*/
@@ -180,7 +180,7 @@ private static boolean notEqual(String a, String b) {
* This plan is meant to be applied to local during merge:
* result = local + (remote − base)
*
- * @param base The base version of the database.
+ * @param base The base version of the database.
* @param remote The remote version to be merged.
* @return A {@link MergePlan} describing how to update the local copy with remote changes.
*/
@@ -229,8 +229,8 @@ public static MergePlan extractMergePlan(BibDatabaseContext base, BibDatabaseCon
/// - If both sides changed to the same value, no patch needed;
/// - Fallback: if a divergence is still observed, do not override local; skip this field,
///
- /// @param base base version
- /// @param local local version
+ /// @param base base version
+ /// @param local local version
/// @param remote remote version
/// @return A map from field to new value
private static Map computeFieldPatch(BibEntry base, BibEntry local, BibEntry remote) {
diff --git a/jablib/src/main/java/org/jabref/logic/git/io/RevisionTriple.java b/jablib/src/main/java/org/jabref/logic/git/io/RevisionTriple.java
index 957a7c4018e..973601aa5e0 100644
--- a/jablib/src/main/java/org/jabref/logic/git/io/RevisionTriple.java
+++ b/jablib/src/main/java/org/jabref/logic/git/io/RevisionTriple.java
@@ -9,8 +9,8 @@
* Holds the three relevant commits involved in a semantic three-way merge,
* it is a helper value object used exclusively during merge resolution, not part of the domain model
*
- * @param base the merge base (common ancestor of local and remote)
- * @param local the current local branch tip
+ * @param base the merge base (common ancestor of local and remote)
+ * @param local the current local branch tip
* @param remote the tip of the remote tracking branch (typically origin/main)
*/
@NullMarked
diff --git a/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java b/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java
index 11cf6fdcea7..d6444bb1398 100644
--- a/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java
+++ b/jablib/src/main/java/org/jabref/logic/git/merge/planning/util/ConflictRules.java
@@ -15,8 +15,8 @@ public class ConflictRules {
* Detect entry-level conflicts among base, local, and remote versions of an entry.
*