Reviews for ContextSearch web-ext
ContextSearch web-ext by Mike B
Review by thuerrsch
Rated 4 out of 5
by thuerrsch, 7 years agoNice replacement for the old Context Search add-on which I started to miss bitterly right after Firefox 57 came out. Something like this should REALLY be standard in Firefox.
That said, getting the add-on to work in "Automatic" mode on GNU/Linux (Ubuntu, in my case) was a bit of a hassle. The instructions on the GitHub site could be more helpful here. They put too much focus on the location of ContextSearch.json (no, DON'T put that file or anything else under /usr/lib/ or /usr/lib64/, these are to be maintained by your package manager alone) and leave more important points unmentioned.
To make a long story short, I had to do the following:
(1) Put ContextSearch.json and ContextSearch.py from the git repository into ~/.mozilla/native-messaging-hosts/.
(2) Make ContextSearch.py executable (chmod u+x) AND convert it from CR/LF (Windows) to LF (Unix) line endings so that python can actually run the script. (I also changed the shebang to #!/usr/bin/env python).
(3) Change the path value in ContextSearch.json to the actual location of ContextSearch.py (why doesn't it just default to ContextSearch.json and ContextSearch.py being in the same directory?).
(4) Enter the path of my search.json.mozlz4 file in the add-on's preferences.
And hey not-quite-presto, everything works! Well, apart from a few details, like search engines using POST rather then GET requests not working but showing up in the context menu. All in all, a promising extension with a few rough edges.
That said, getting the add-on to work in "Automatic" mode on GNU/Linux (Ubuntu, in my case) was a bit of a hassle. The instructions on the GitHub site could be more helpful here. They put too much focus on the location of ContextSearch.json (no, DON'T put that file or anything else under /usr/lib/ or /usr/lib64/, these are to be maintained by your package manager alone) and leave more important points unmentioned.
To make a long story short, I had to do the following:
(1) Put ContextSearch.json and ContextSearch.py from the git repository into ~/.mozilla/native-messaging-hosts/.
(2) Make ContextSearch.py executable (chmod u+x) AND convert it from CR/LF (Windows) to LF (Unix) line endings so that python can actually run the script. (I also changed the shebang to #!/usr/bin/env python).
(3) Change the path value in ContextSearch.json to the actual location of ContextSearch.py (why doesn't it just default to ContextSearch.json and ContextSearch.py being in the same directory?).
(4) Enter the path of my search.json.mozlz4 file in the add-on's preferences.
And hey not-quite-presto, everything works! Well, apart from a few details, like search engines using POST rather then GET requests not working but showing up in the context menu. All in all, a promising extension with a few rough edges.
Developer response
posted 7 years ago(edit3)
Can you tell me which POST engines aren't working? I'll take a look.
1.2.1b6 in the beta section fixed a bug where {searchTerms} in POST was only replaced in the form params and not if it was also included in the url params. If that was causing your issues, give the beta a try.
I've updated the readme at github to better reflect your experience setting up the python script. Let me know if there's anything else that would be helpful for other users installing the native app
(edit)
The instructions to put the .json in /usr/lib or /usr/lib64 were taken directly from the Firefox documentation for the native app API. On the chance you see this edit, would you mind opening a ticket at github and elaborating on why this incorrect?
(2) Hmm, yeah that probably should be in Unix (LF) Oops, I'll update
(3) That's what the Firefox Native Messaging API requires. Nothing I can do there.
Glad to hear you got it working. You might be the first that used the python script. Guess I'll have to keep it updated :(
Can you tell me which POST engines aren't working? I'll take a look.
1.2.1b6 in the beta section fixed a bug where {searchTerms} in POST was only replaced in the form params and not if it was also included in the url params. If that was causing your issues, give the beta a try.
I've updated the readme at github to better reflect your experience setting up the python script. Let me know if there's anything else that would be helpful for other users installing the native app
(edit)
The instructions to put the .json in /usr/lib or /usr/lib64 were taken directly from the Firefox documentation for the native app API. On the chance you see this edit, would you mind opening a ticket at github and elaborating on why this incorrect?
(2) Hmm, yeah that probably should be in Unix (LF) Oops, I'll update
(3) That's what the Firefox Native Messaging API requires. Nothing I can do there.
Glad to hear you got it working. You might be the first that used the python script. Guess I'll have to keep it updated :(