Support multiple customized preview styles
component: entry-previewgood first issue
⚠️ This issue takes time and NOT a one-shot LLM prompt - you need to 🧠 ⚠️
Currently JabRef allows exactly one customized preview style alongside a fixed list of [[CSL preview styles](https://docs.jabref.org/setup/preview)](https://docs.jabref.org/setup/preview). The customized style uses the [[custom export filter syntax](https://docs.jabref.org/collaborative-work/export/customexports)](https://docs.jabref.org/collaborative-work/export/customexports).
<img width="1361" height="1478" alt="Image" src="https://github.com/user-attachments/assets/971c1886-ebf3-4bba-8732-287e572924fe" />
**Wish:** Allow users to create and manage multiple customized preview styles.
**Changes required:**
1. **Preference UI — "Available" panel:** Split into two tabs: "CSL" and "Customized"
2. **Customized preview editor:** Show the editor below the lists whenever a customized style is selected (either in "Available" or in the active list on the right)
3. **Naming:** Allow each customized style to be named
4. **Preferences:** Update storage to support multiple customized styles, including migration of existing single-style preferences and tests
**Documentation to update:**
- [[Entry preview setup](https://docs.jabref.org/setup/preview)](https://docs.jabref.org/setup/preview) → [[source](https://github.com/JabRef/user-documentation/blob/main/en/setup/preview.md)](https://github.com/JabRef/user-documentation/blob/main/en/setup/preview.md)
- [[Custom export filters](https://docs.jabref.org/collaborative-work/export/customexports)](https://docs.jabref.org/collaborative-work/export/customexports) (if syntax/preference structure is referenced) → [[source](https://github.com/JabRef/user-documentation/blob/main/en/collaborative-work/export/customexports.md)](https://github.com/JabRef/user-documentation/blob/main/en/collaborative-work/export/customexports.md)
**Related code:**
- Preview preferences: `org.jabref.logic.preview.PreviewPreferences`
- Preferences UI: `org.jabref.gui.preferences.preview` (`PreviewTab`, `PreviewTabViewModel`)
9 条评论