retorquere / zotero-better-bibtex

Make Zotero effective for us LaTeX holdouts

Home Page:https://retorque.re/zotero-better-bibtex/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Better BibTeX for Zotero

Join the chat at https://gitter.im/retorquere/zotero-better-bibtex Greenkeeper badge

Better BibTeX (BBT) is an extension for Zotero and Juris-M that makes it easier to manage bibliographic data, especially for people authoring documents using text-based toolchains (e.g. based on LaTeX / Markdown).

Zotero 7 beta support

Better BibTeX is mostly compatible with the Zotero 7 beta; I am awaiting a change by the Zotero team to get to complete support. You can find the status of Zotero 7 support in the first post of #2522; if you find new problems (which are not still marked as unresolved in that top post), please report them as new issues, not by commenting on #2522.

Juris-M support

Juris-M is unfortunately not compatible with BBT at the moment. To my understanding, work is underway to get a Zotero-7-based Juris-M, and then BBT will work in Juris-M.

Features

Facilities for generating citation keys

  • Automatically generate citation keys without key clashes! Generate citation keys that take into account existing keys in your library even when they are not part of the items you export. Prevent random breakage!
  • Generate citation keys based on contents of your items using citekey formulas.
  • Set your own, stable citation keys, drag and drop LaTeX citations, add other custom BibLaTeX fields.

Conversion between formats and encodings

  • Zotero does all its work in UTF-8 Unicode, which is absolutely the right thing to do. Unfortunately, for those shackled to BibTeX and who cannot (yet) move to BibLaTeX, unicode is a major PITA. Also, Zotero supports some simple HTML markup in your items that Bib(La)TeX won't understand.

  • BBT will convert from/to HTML/LaTeX:

    • <i>...</i>\emph{...}/\textit{...}
    • <b>...</b>\textbf{...}
    • <sup>...</sup>\textsuperscript{...} and <sub>...</sub>\textsubscript{...}.

    More can be added on request.

    BBT contains a comprehensive list of LaTeX constructs, so stuff like \"{o} or \"o will be converted to their unicode equivalents on import (e.g., \"{o} to ö), and their unicode equivalents back to \"{o} if you have that option enabled (but you don't have to if you use BibLaTeX, which has fairly good Unicode support).

    If you need literal LaTeX in your export: surround it with <script>...</script> (or <pre>...</pre>, which do the same) markers.

Facilities for exporting data from Zotero

  • Highly customized exports.
  • Fixes date field exports: export dates like 'forthcoming' as 'forthcoming' instead of empty, but normalize valid dates to unambiguous international format.
  • Auto export of collections or entire libraries when they change.
  • Pull export from the embedded webserver.
  • Automatic journal abbreviation.

Getting started

To get started, read the installation instructions.

How does it work ?

At its core, BBT behaves like any Zotero import/export module; anywhere you can export or import bibliography items in Zotero, you'll find Better X listed among the choices.

If nothing else, you could keep your existing workflow as-is, and just enjoy the improved LaTeX ↔ unicode translation on import and export and more accurate field mapping.

Better BibTeX works from BibTeXing and Tame the BeaST for BibTeX, and The Biblatex Package for BibLaTeX, but since there isn't really a definitive manual for either format that is universally followed by Bib(La)TeX editors/processors, I'm pragmatic about implementing what works.

Got problems? We got fixes!

If you have any questions on BBT's use, do not hesitate to file a GitHub issue and ask for help.

If you're reporting a bug in BBT, please take a moment to glance through the support request guidelines; it will make sure I get your problem fixed as quick as possible. Clear bug reports commonly have really short time-to-fix, so if you report something, stick around -- it may be done as you wait.

The support request guidelines are very detailed, perhaps to the point of being off-putting, but please do not fret; these guidelines simply express my ideal bug submission. I of course prefer very clearly documented issue reports over fuzzy ones, but I prefer fuzzy ones over missed ones.

Sponsoring BBT

While the development needs of BBT are to a large extent covered by the generosity towards open-source developers of services such as github, my development system does require the occasional upgrade; also, I enjoy getting the occasional frivolous tech-toy that I wouldn't otherwise grant myself. While you should feel in no way obligated to pay for BBT, anything you can spare is very much appreciated. If you'd rather contribute a little bit each month (and a little means a lot) so I can save up for a replacement a year or so down the line, head on over to Patreon, but mind that Patreon takes a fairly large cut of what you give.

Many, many thanks, also to the existing contributors -- thanks to you I've hit my first target and have been able to replace my trusty macbook air with a newer macbook pro which has much more breathing room.

My github stats

Metrics

About

Make Zotero effective for us LaTeX holdouts

https://retorque.re/zotero-better-bibtex/

License:MIT License


Languages

Language:TypeScript 48.9%Language:Fluent 12.6%Language:Python 11.2%Language:JavaScript 6.2%Language:Gherkin 5.2%Language:Lua 4.7%Language:HTML 4.4%Language:Pug 4.0%Language:TeX 1.3%Language:Mako 0.6%Language:Ruby 0.3%Language:Shell 0.2%Language:EJS 0.2%Language:CSS 0.2%Language:Makefile 0.0%