-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create addons for Chrome and Opera #1284
Comments
👍 for Chrome |
Chrome and Firefox Addons are nowadays roughly the same code. |
It seems like the only way to communicate between the Chrome addon and JabRef is to use the native messaging api. This is way more complicated then the solution for Firefox ( |
We should install the plugins automatically during the normal installation. This also advertises them. |
The new Firefox add-on framework WebExtensions (which tries to be compatible with chrome) also uses native messaging, see http://stackoverflow.com/questions/37769533/how-to-execute-a-command-line-program-in-firefox-webextensions or https://wiki.mozilla.org/WebExtensions/Native_Messaging. So if somebody of you implements the listener part in JabRef, I'm willing to try to port JabFox to the new WebExtensions framework and thus also to Chrome. |
I'm definitely interested. Maybe we can discuss this in the next dev call! |
I'll try out with with Native Messging |
Found some snippet, which could he helpful: |
And here is an add-on demonstrating the usage of the messaging API (also contains a python script for receiving messages): https://github.com/mdn/webextensions-examples/tree/master/native-messaging |
How far have we come with a solution? |
@Siedlerchr do you think you can implement something for the 4.0 release? |
Some more code on native messaing (c#) |
I am contemplating installing Firefox just to use JabFox with Google Scholar, in light of #2046 |
Would it be an option to fork from the Zotero connectors? The connectors talk to the Zotero app via a Web API (127.0.0.1:23119, if you want to feed your Wireshark). Just my $ .02 |
Well, we are currently quite busy fixing bugs and re-creating stability in the UI, rather than introducing new features. If, however, you are eager to contribute such a feature, we can give you some advice. |
I have two PRs in the pipeline that take exactly the approach @lpirl suggested: #3246 and JabRef/JabRef-Browser-Extension#41. I'm grateful for any help! |
So, JabFox is now converted to Web Extensions and thus we can start thinking about versions for Chrome/Vivaldi/Opera and Edge. A few things we have to decide: How should these add-ons be named?
How to structure the development?
I have a slight preference for options 1.A and 2.A or 2.B. @JabRef/developers what do you think? |
If we want to promote the name JabRef we should probably aim for a generic name including JabRef, otherwise some neologisms are also fine. |
Thanks for the feedback. On second thought, I also prefer a generic name. Let's brainstorm a bit:
More ideas? |
As name I would prefere a simple and generic one like JabRef Connector (this is known by Citavi users for example). Code repository should definitly be only one because of managment reasons. I would reject the idea of browser specific branches because of the same reasons. Browser specific things should be separated in browser-specific folders or files and merged together while build process. It the used language is not able to handle this then a simple python script should do the job puttin the right files together. |
Are there any updates on this? |
Implementing chrome/opera should be simple enough ™️ Also, the json file is slightly different, and in a different location, so in the next comment I'll leave the json and the link to a mozilla page with the paths. |
This has to be saved as org.jabref.jabref.json in one of the paths set in: |
Most of the polyfill errors seem to come from the Zotero directory when I test via web-ext. |
The polyfill is already in Zotero upstream, so it can be inherited by the import I guess.. |
Cool that you are working on this. I sadly don't have time right now to really support you here, but if you have any concrete questions feel free to ask. |
One question is the integration with zotero..
Unfortunately I'm not sure how to pull that in jabfox, so when I test in chrome I get an error because it's not loading the polyfill so it can't find the I tried manually copying the file
but the scripts don't have |
It should be sufficient to put the browser-polyfill in the Zotero folder and add it in the following places: For testing, you can ignore the gulpfile and manually add the polyfill here as well: |
It still doesn't work.. I had already added it to those places, except for the background.js EDIT: also, I added a png icon, since chrome does not accept svg |
😢 |
done. Check if I missed something, and if you have time to look at it.. |
A preliminary test version for Chrome is now available under https://chrome.google.com/webstore/detail/jabref-browser-extension/bifehkofibaamoeaopjglfkddgkijdlh?authuser=2. It should work out of the box with the most recent development build https://builds.jabref.org/master/ (or follow the steps outlined at https://github.com/JabRef/JabRef-Browser-Extension/blob/master/README.md for a manual installation). Please report any issues directly at https://github.com/JabRef/JabRef-Browser-Extension/issues |
I have just discovered that there are Zotero addons for Chrome, Safari and Opera. Moreover, the implementation looks really similar to the Firefox addon. Thus I think it would be rather easy to create JabRef addons for these browser, paralleling the development of JabFox.
The text was updated successfully, but these errors were encountered: