linking between zotero and evernote (in OSX)

I'm upgrading my paper-management workflow from 'labyrinth of folders' to an Evernote + Zotero mix. I already use Evernote a little for this by writing paper summaries in it, but I would rather do the 'heavy duty' management and organisation in Zotero. So, I'd like to easily switch between the Evernote note about a paper and the Zotero reference on it. I need:

  • Zotero → Evernote
  • Evernote → Zotero

Note: This is all with OSX 10.11.1 (El Capitan), Evernote 6.3, and Zotero YMMV.

Zotero to Evernote

My solution here is to add an attachment to the reference which is a link to the Evernote URI. Zotero gracefully handles this, you just right-click on the reference and Add Attachment → Attach Link to URI...

The hard part is then getting the URI. In (my currently-up-to-date version of) Evernote, the Copy Note Link gives you a HTTP(S) link:

This converts to the Evernote URI link if you paste it inside Evernote, which is pretty cool I guess but also not useful here.

I use the Evernote client and I don't want this, I want the URI like:


This is (for now, probably) known as Classic Note Link in Evernote, and you get it by holding down Alt on the menu after right-clicking on the note. Bizarre and annoying, but whatever. It works.

Now I can just double-click on the Evernote URI attachment on my reference in Zotero and it'll open the note (in my Evernote client) with my notes on it.

Evernote to Zotero

Now, we want to get the Zotero URI (to the reference) and include it in an Evernote note. The 'normal' URI you'd get from Zotero (using Item URI as your Default Output Format under Preferences → Export → Quick Copy) is:

What I really want is the non-HTTP URI, e.g.


However, if you paste that into Evernote it doesn't recognise it as a URI or anything that should be linkish. It just sits there, flat and idle and useless. This is pretty annoying given it can do this for Evernote URIs, as above, but whatever...

Solution Sketch

This solution is from brain.flush(); Connecting Zotero and Evernote and RTF-Links from Zotero in Evernote. This post isn't just a link to that blog because I fear link rot.

The workaround is pretty gross but bear with me. First, you modify Zotero so that its Quick Copy gives you a HTML-formatted URI, e.g.

<a href="zotero://select/items/asdfgh">Paper Title</a><br />

then convert the HTML in your clipboard to RTF, which can be pasted into Evernote and will act 'as desired'. The intermediate RTF representation looks something like this, btw, so clearly there's scope for further customisation:

{\fonttbl\f0\froman\fcharset0 Times-Roman;}  
{\field{\*\fldinst{HYPERLINK "zotero://select/items/asdfgh"}}{\fldrslt  
\f0\fs24 \cf2 \expnd0\expndtw0\kerning0  
\ul \ulc2 \outl0\strokewidth0 \strokec2 Paper Title}}  
\f0\fs24 \cf3 \expnd0\expndtw0\kerning0  
\outl0\strokewidth0 \strokec3 \  

Ew. But you never need to look at this.

Specific Steps

  • Modifying Quick Copy:
  • Put this script in your translators folder wherever your Zotero is.
  • Tell Zotero to use it for Quick Copy: Preferences → Export → Default Output Format: select ZotSelect Link (HTML) from the dropdown.
  • Now Cmd + Shift + C will put the HTML-formatted link in your clipboard.
  • Converting HTML to RTF:
  • The script to do the transformation is (choose your favourite UTF-8 region...) export LANG=en_US.UTF-8; pbpaste | textutil -stdin -stdout -format html -convert rtf -inputencoding utf-8 | pbcopy
  • You can automate this with Automator, (OSX tool):
    • Create a Service, add an action of Run Shell Script, paste in above code.
    • Make sure set the "Service receives selected..." dropdown to "no input".
    • Call the service whatever you want - following the source blog I called mine "Convert HTML clipboard to RTF".
  • Set a keyboard shortcut for the new service under Keyboard → Shortcuts → Services. Also following the blog, I used Cmd + Shift + Ctrl + C.

So now the workflow is:

  • [in Zotero] Cmd + Shift + C on desired reference
  • [wherever] Cmd + Shift + Ctrl + C to transform contents of clipboard
  • [in Evernote] paste normally to get a link which opens the reference in Zotero.