Skip to content

Releases

zsync 0.3.0

Choose a tag to compare

Citation keys can no longer break your bibliography. A new source whose citation key Better BibTeX had not filled in used to reach refs/zsync.bib with no key at all. Typst then refused the whole file ("expected comma"), so every citation in the document failed, not just the new one.

  • Better BibTeX fills keys in before each export. When it has missed a new item (it sometimes does, for example while Zotero syncs), zsync asks it to fill in the key right away. The bib gets Better BibTeX's key, made with your own formula, within a couple of seconds of adding the source, and you see the key in Zotero too.
  • Every entry gets a key Typst can read and cite with @, the same key annotations.json uses:
    • an item still without a key gets one from Better BibTeX's default formula (auth.lower + shorttitle(3,3) + year, for example ebyTrinititeAtomicRock2010);
    • a key Typst cannot cite is cleaned up (Eby 2010 becomes Eby2010);
    • a key two items share stays with the one added first; the other gets a, b, …;
    • the export's warnings say what to cite. zsync never writes its own keys into Zotero, and an item keeps the key zsync gave it from one export to the next, on every device.
  • A last check of the whole bib fixes anything else that would stop Typst reading it.
  • Nothing changes when nothing needs fixing. The bib is then exactly what Better BibTeX wrote, so existing projects see no difference.
  • Without Better BibTeX, an item without a key now gets zsync's key in both files. Before, the bib had Zotero's own author_title_year key and annotations.json the Zotero item key. Check citations of such items after updating.
  • zsync.json: a documents.<key>.citekey must now be a key Typst can cite: letters, digits, _ and -, with . or : only between them.

Install or update

Zotero updates plugins by itself. To get this version now: Tools → Plugins, the gear menu, Check for Updates. Or download zsync-0.3.0.xpi below and use Install Plugin From File….

sha256: 1d3c3eb1ac28bc941d4cd55819eb4c6019af80831bae4695e535a405fbfbacfe

zsync 0.2.0

Choose a tag to compare

Automatic export is now on by default, and near real time. When you highlight or comment in Zotero, typst watch or tinymist's preview picks the change up about 1.5 seconds later. You no longer need to export by hand.

  • On by default. Updating from 0.1.0 switches automatic export on for every device, including any where you had switched it off. If you want it off there, switch it off again in Settings → zsync.
  • Timing. A project is exported 1.5 s after changes stop, and at least every 20 s while they keep coming (one highlight after another, a long comment).
  • Sync. Your own edits no longer wait for Zotero's sync. Only changes that a sync brings down wait for the sync to finish.
  • Bibliography. When only highlights or comments change, the last bibliography is reused instead of running Better BibTeX again. An export you start yourself always rebuilds it.
  • zsync.json and folders. Edits to a project's zsync.json are exported automatically. A project folder on a drive that is plugged back in is picked up again.
  • Changes that were missed before are now followed:
    • pages deleted in the reader;
    • attachment files renamed or relinked;
    • annotations on newly added PDFs;
    • new subcollections of recursive projects;
    • a highlight deleted while an export was running.
  • Failures. A failed automatic export is retried, and reported once in a small window. Settings → zsync keeps the message.
  • Faster exports. Source-file hashes are cached across restarts, which email message holds each highlight is remembered, and database reads are batched.

Install or update

Zotero updates plugins by itself. To get this version now: Tools → Plugins, the gear menu, Check for Updates. Or download zsync-0.2.0.xpi below and use Install Plugin From File….

sha256: 1ae99be93e9b68798d1eb9d0e84af695b3024b95cd9884532aacdb547c8ab094

zsync 0.1.0

Choose a tag to compare

First release of zsync, a Zotero plugin that keeps a Typst project in step with a Zotero collection.

Right-click a collection → Export to zsync Project and zsync writes into the project folder:

  • refs/annotations.json — every item (keyed by citation key) and every highlight, underline, note, text, image and ink annotation, with text, comment, colour, tags, page, position and a zotero:// link back to it
  • refs/zsync.bib — the bibliography (Better BibTeX's Better BibLaTeX, or Zotero's BibLaTeX exporter as a fallback)
  • refs/zsync/sources/ — copies of the annotated PDFs and snapshots
  • refs/zsync/images/ — PNGs of image and ink annotations

Files are only rewritten when their content changes, so repeat exports leave git diffs clean. Optional auto-export runs a few seconds after anything in a linked collection changes.

Works with Zotero 9 and 10.

Install

Download zsync-0.1.0.xpi below, then in Zotero: Tools → Plugins → gear menu → Install Plugin From File…. Future versions arrive through Zotero's normal plugin updates.

sha256: d90833c72ece56eb7e4a34e4bc1a28264146e5b7b947593a942e42a6355e15f0