quarto-dev / quarto

Quarto open-source scientific and technical publishing system
https://quarto.org
GNU Affero General Public License v3.0
308 stars 26 forks source link

[Feature Request] Zotero integration #17

Open halidaee opened 1 year ago

halidaee commented 1 year ago

It would be nice to build in Zotero with Better Bibtex support into the Quarto plugin. This would help better match RStudio functionality.

jjallaire commented 1 year ago

We are definitely hoping to make this functionality available outside of RStudio! It's all written in C++ and is tied to the visual editor so not super-easy to transplant. We'll figure out an approach though.

jooyoungseo commented 1 year ago

Would this be a fair alternative?: Citation Picker for Zotero

halidaee commented 1 year ago

I do currently use that now for one project. However, an issue with that extension is that it isn’t interoperable with how RStudio links to Zotero. RStudio will add citations with a simpler key to a separate .bib file. Citation Picker will just drop in the citation key from the Zotero .bib library.

This means that if I start a .qmd in RStudio and later switch to VSCode (which I’m prone to do once I leave the `exploration’ stage), I currently need to first (i) change the reference file in my YAML to the original Zotero .bib and (ii) update all the citations in my document to the original Zotero key.

Switching from VSCode to RStudio requires not only switching keys in the opposite direction through its citation manager but also adding them to RStudio’s own citation file.

I hope that clarifies!

jooyoungseo commented 1 year ago

Aw, it makes sense. Thanks for the explanation, @halidaee.

jooyoungseo commented 1 year ago

When implementing this, it would be even nicer if the following could be also considered:

  1. Ability to connect to Zotero libraries using Zotero web API just like RStudio IDE.

  2. An option to use VSCode's native picker widget (because this is accessible) instead of Zotero's citation picker UI as I described in mblode/vscode-zotero#31.