# protocol handler for zotero://

Hello,

is is possible to register a handler for zotero? I did not manage to do so, but it seems possible according to:

http://msdn.microsoft.com/en-us/library/aa767914(VS.85).aspx
http://msdn.microsoft.com/en-us/library/aa965721(VS.85).aspx
http://msdn.microsoft.com/en-us/library/aa767916(VS.85).aspx

Here is an app that does it:
http://www.codeplex.com/customurl
I did not manage to get it to run, here are my steps:

protocol: zotero
application: path\to\firefox
arguments: "zotero://"%Authority%
drops the number of the article, i.e. it starts firefox with something like zotero://attachment/
It seems, that customurl does not provide access th the rest of the url.
I tried to manually edit the registry entry, open regedit
HKLM\Software\Classes\zotero
and change customUrlArgument from
"zotero://"%Authority%
to
"zotero://%1"
and
shell\open\command to
FirefoxPortable.exe zotero://%1
when I type a zotero url into ie, it now opens an empty page in firefox.
Not exactly what I would like, but a beginning.
Freemind still does not recognize the protocol and gives me an "This URL is malformed", "unknown protocol" error.
In my opinion it would be very useful if zotero could register a protocol, this way articles could be linked from other documents, freemind mindmaps etc.

Dan
• This works for me in Windows XP:Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\zotero]@="URL: Zotero Protocol""URL Protocol"=""[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\zotero\DefaultIcon]@="C:\\Program Files\\Mozilla Firefox\\firefox.exe"[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\zotero\shell][HKEY_LOCAL_MACHINE\SOFTWARE\Classes\zotero\shell\open][HKEY_LOCAL_MACHINE\SOFTWARE\Classes\zotero\shell\open\command]@="C:\\Program Files\\Mozilla Firefox\\firefox.exe \"%1\""
• for some reason this did not work on my machine, but this works:

REGEDIT4

[HKEY_CLASSES_ROOT\zotero]
@="URL:zotero"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\zotero\shell]

[HKEY_CLASSES_ROOT\zotero\shell\open]

[HKEY_CLASSES_ROOT\zotero\shell\open\command]
@="\"M:\\PortableApps\\FirefoxPortable\\FirefoxPortable.exe\" \"%1\""

now I can link to zotero from freeplane, very nice!

How do I link not to an attachment, but to the zotero entry itself?
I.e. not like "zotero://attachment/3083/", but directly to the zotero entry that contains that attachment?
• edited February 16, 2010
How do I link not to an attachment, but to the zotero entry itself?
All you're references (primary zotero entries) are stored together as one database file, so you can't really link to an individual source/reference. Attachments are obviously possible because they are stored as individual files. See this: http://www.zotero.org/support/zotero_data
• try zotero://select/(item id)
• how do I get the item id?
• right-click on the desired item in your library (in zotero's middle pane), and generate report. the page which comes up will have something like "zotero://report/items/0_6HTHABCD/html/report.html" in the address bar, where the info between items and html is the item id.
• this is great, thank you!

Dan
• Now, what's the scoop on doing this on a Mac?
• Just for all that are interested:

For me this work only if I use:
zotero://select/items/(item_id)

Where itemid is the above mentioned one (e.g.: 0_FU33JVGS)

Thanks guys for all that work. No I can link to reference from VUE...

Best,
Jan
• Zotero can be opened in other software according noksagt's suggestion. But it can not be open in firefox. Nothing happens when I click the link.
Any suggestions?
Thanks
• Firefox has security measures that prevent clicking through to certain schemes (e.g., 'zotero') from other ones (e.g., 'http'). There's a chance it would work from file URLs, but I haven't tested that recently (and that could change in the future). Pasting the link into the address bar should still work.
• I have done these testings:

It works on Firefox 3.6.13 (Windows XP) with these html codes: <a href="zotero://attachment/8/">test</a>.

It can not work on Firefox 4.0 (Windows XP but another computer) with the same html codes.

A new Firefox profile is created and zotero is brand new. This problem is still existed on Firefox 4.0.

There is a error message when I disable Zotero plugin "Firefox doesn't know how to open this address, because the protocol (zotero) isn't associated with any program." The error message is the same for 3.6.13 and 4.0.

So, I think it may be a bug of Zotero.

Any suggestions?
• You don't say where the HTML file is located, but neither http:// nor file:// pages can load zotero://attachment for me in 3.6 or 4.0. We specify zotero://attachment as an unprivileged protocol, which in theory should allow it load from unprivileged URLs, but it's still being prevented for some reason. (And while it doesn't work for me in Firefox 3.6 either, Firefox 4.0 included many security-related changes, so it wouldn't be too surprising if it changed.) In any case, if you look in the Error Console you should see the relevant security error:
Security Error: Content at http://[...]/test.html may not load or link to zotero://attachment/528/.
No suggestions unless you want to try to fix the code yourself. We'll look into fixing it for a future version.