Releases: edouardArmit/zotero-hover-abstract
Release list
v0.3.3 - Better reference parsing (APA and question-mark titles)
Bug-fix release. As before, only your local Zotero libraries are checked by default, and nothing is sent anywhere unless you turn on online search in Settings.
Fixes
- APA-style references now work. References with the year in brackets after the authors, such as "Skinner, E. A. (1996). A guide to constructs of control. …", used to be read with the title ")". Papers cited this way could never be matched in your library, and online search got an unusable query. Their real title is now read correctly: they're found in your library when you have them, and online search is far more likely to find the right paper and its abstract.
- Titles ending in "?" or "!" no longer swallow the journal name. For example, "What are emotions? And how can they be measured?" used to be read together with the journal and page numbers after it, so the paper wasn't found in your library.
Both were found with a new end-to-end test library of 13 papers from ACM, IEEE, Springer, Elsevier, Wiley, Routledge and arXiv, in numbered and author-year citation styles.
Known limitations
- A few PDFs get no citation popup from Zotero itself, because Zotero can't detect their reference list. The plugin can only add abstracts where Zotero shows its popup.
- References in CACM magazine style (year after the journal) are still parsed only roughly.
Install / update: Zotero offers this update automatically (Tools → Plugins → gear icon → Check for Updates). Or download zotero-hover-abstract.xpi below and choose Install Plugin From File.
v0.3.2 - Maintenance: dependency updates
Maintenance release, with no change in how the plugin behaves. As before, only your local Zotero libraries are checked by default, and nothing is sent anywhere unless you turn on online search in Settings.
Under the hood
- Updated zotero-plugin-toolkit, the one bundled library, from 5.1.0-beta.13 to 5.2.0. Tested live in Zotero: citation popups with online search on and off, closing PDF tabs, and plugin reloads.
- Updated the build, lint and test tooling (zotero-plugin-scaffold 0.9, eslint 10, mocha 12, prettier 3.9, and others). None of these ship in the plugin, and all open security alerts on the tooling are now resolved.
Install / update: Zotero offers this update automatically (Tools → Plugins → gear icon → Check for Updates). Or download zotero-hover-abstract.xpi below and choose Install Plugin From File.
v0.3.1 - Finds library papers despite PDF text glitches
Bug-fix release. As before, only your local Zotero libraries are checked by default, and nothing is sent anywhere unless you turn on online search in Settings.
Fixes
- Papers in your library are found even when the PDF's text mangles the title. PDF text often loses hyphens at line breaks ("21stcentury" for "21st-Century", "solvingbased" for "solving-based") or mangles ligatures and accents. The plugin used to need an exact title match, so these papers were reported as not in your library. Now, when the exact search misses, it compares titles with punctuation, spacing and accents ignored and small differences allowed. A near match must also share the first author, so short, generic titles can't pick up the wrong paper.
- References with "et al." (e.g. "B. Thornhill-Miller et al.") were read as having an author called "al.", which made the library search fail for them.
- The library search no longer lands on a PDF attachment or note instead of the paper itself.
Install / update: Zotero offers this update automatically (Tools → Plugins → gear icon → Check for Updates). Or download zotero-hover-abstract.xpi below and choose Install Plugin From File.
v0.3.0 - Group libraries, restored PDF tabs, reliable updates
As before, only your local Zotero libraries are checked by default, and nothing is sent anywhere unless you turn on online search in Settings.
New
- Group libraries are searched too. Local lookup used to check only "My Library", so papers kept only in a group were reported as not in your library (and looked up online instead). Now My Library is searched first, then each group library. The first copy with an abstract wins, so a group's copy can fill in an abstract that your own copy lacks. The popup names where it came from, e.g.
Abstract (from group library "Lab").
Fixes
- PDF tabs reopened at startup now work right away. Before, a PDF tab that Zotero restored when it started got no abstracts until you closed and reopened it.
- Updating or disabling and re-enabling the plugin takes effect immediately. After you'd closed a PDF, the previous version could keep running until Zotero was restarted.
- Items in group libraries you hadn't opened yet in the session no longer cause a "search failed" error.
Install / update: Zotero offers this update automatically to installed copies (Tools → Plugins → gear icon → Check for Updates). Or download zotero-hover-abstract.xpi below and choose Install Plugin From File.
v0.2.1 - Clearer popup messages, IEEE references, fewer silent misses
Bug-fix release. As in v0.2.0, only your local Zotero library is checked by default and nothing is sent anywhere unless you turn on online search in Settings.
The popup now explains itself
- It says where an abstract came from: "Abstract (from your library)", "(from Crossref)" or "(from Semantic Scholar)".
- When no abstract is found, it shows one line per source checked instead of a bare "No abstract found", for example:
Library: not in your library/Library: in your library, but its abstract field is emptyOnline search: off (turn it on in Settings > Zotero Hover Abstract)Crossref: record found, but no abstract available(common: many publishers don't share abstracts)Semantic Scholar: authentication error, 403 Forbidden - check the API key in Settings > Zotero Hover Abstract- rate limits (429), server errors and network issues, each with its own message.
Fixes
- IEEE-style references (
A. Author, "Title," Venue, 2021.) are now parsed. Before, no title was extracted, so these were never looked up online. - A rejected Semantic Scholar API key was reported as "No abstract found". It now shows an authentication error. If you see one, re-paste your key in full: keys have a short prefix before a dash that's easy to cut off.
- Errors are no longer cached. A rate limit, network blip or bad key used to stick for the whole session. Now the next hover retries, and changing the API key or the online-search setting clears the cache. Results found online are kept for 24 h, misses for 1 h.
- Edits to your library show up straight away. Local results are no longer cached, so an abstract you add in Zotero appears on the next hover.
- Semantic Scholar requests are spaced ~1 s apart, matching an API key's default limit of 1 request per second, so a single hover no longer trips it.
- Crossref searches the whole reference text when no title can be parsed.
- The Settings pane can no longer be registered twice (a duplicate "Zotero Hover Abstract" entry was seen after installing over an older version).
Install: download zotero-hover-abstract.xpi below, then in Zotero go to Tools → Plugins → gear icon → Install Plugin From File.
Release Manifest
This release is used to host update.json, please do not delete or modify it!
Updated in UTC 2026-09-30T05:35:58.895Z for version 0.3.3
v0.2.0 - Optional Crossref/Semantic Scholar fallback
Merges the external-fallback branch's work into main. By default, behavior is unchanged from v0.1.x — only your local Zotero library is checked, nothing is sent anywhere. New capabilities are opt-in via preferences.
New (all in Zotero app menu → Settings → Zotero Hover Abstract):
- "Enable" toggle now actually works (previously present but never checked).
- "Also check Crossref and Semantic Scholar when not in your library" — off by default. When turned on, citations with no local match are looked up via Crossref, then Semantic Scholar.
- Semantic Scholar API key field (optional) — a free key avoids rate limits on the shared unauthenticated tier. Each user should get their own key (self-serve, free) rather than one being shared across installs — see the note in that preferences field for why.
- Grouped in-text citations (e.g. "[27, 33]") are now handled correctly — every reference in the group is resolved and shown independently, not just the first.
Fixed:
- The preferences pane was previously unreachable — nothing ever registered it with Zotero, so no "Preferences" entry appeared anywhere. Now correctly opens from Zotero's own Settings window.
Install: download the .xpi below, then in Zotero: Tools → Plugins → gear icon → "Install Plugin From File". If a previous version is installed, this replaces it.
Requirements: Zotero 7 or later.
Known limitations: text-layer PDFs only (no OCR/scanned-PDF support); depends on Zotero's undocumented citation-popup DOM structure; Crossref's abstract coverage is inconsistent by publisher (many ACM papers have none — a genuine data gap, not a bug); Semantic Scholar's unauthenticated tier can be rate-limited depending on your network (get a free API key to avoid this). See the README's Attribution section regarding Semantic Scholar's API license.
v0.1.1 - Fix grouped multi-citation popups
Bug-fix release on top of v0.1.0 (local library only, no network calls).
Fixed: a grouped in-text citation (e.g. "[27, 33]") renders as multiple references in one popup. Previously only the first reference was ever checked — the rest were silently ignored, with no abstract and no indication anything was skipped. Now every reference in the group is resolved independently, each showing either its abstract or a "No abstract found in your library" note.
Install: download the `.xpi` below, then in Zotero: Tools → Plugins → gear icon → "Install Plugin From File". If v0.1.0 is already installed, installing this file replaces it.
Requirements: Zotero 7 or later.
Same scope and known limitations as v0.1.0 — local library only, text-layer PDFs only, depends on Zotero's undocumented citation-popup structure.
v0.1.0 - Local library only
First release: shows a cited paper's abstract in Zotero's native citation hover popup, when that paper is already in your own Zotero library with an abstract filled in.
Scope of this release: local library only — no network calls, nothing sent anywhere. For citations not yet in your library, external lookups (Crossref, Semantic Scholar) are being developed on the external-fallback branch.
Install: download the .xpi below, then in Zotero: Tools → Plugins → gear icon → "Install Plugin From File".
Requirements: Zotero 7 or later.
Known limitations:
- Works only on proper text-layer PDFs (no OCR/scanned-PDF support).
- Depends on Zotero's own citation-popup DOM structure, which isn't a documented/stable plugin API — a future Zotero release could change it.
- Only shows an abstract when the cited work is already in your library with that field filled in.