Closed vikraman closed 8 years ago
Yeah, stopped working on v46.0a2 when I updated.
Can confirm.
I created https://github.com/runejuhl/keysnail/tree/issue/189 as a quick-and-dirty fix, and it seems to work. Can either of you confirm that it works for you as well?
It works for me on nightly after turning off signing checks. Signing is a PITA and will get worse.
We really need a signed fix for this. 46 beta is about to arrive and keysnail is broken by the latest "improvements" in javascript. The above does seem to work once signing is turned off.
"The override will be removed in the beta cycle, likely in b2 or b3." This is from mozilla - which means in a bit we can't run 46 Beta. And of course we can't run 46 when it is released.
I just tried 2.1.19 on 46.0B2 and it does not appear to work. Can't open the preference dialog.
@millwood I have a signed 2.1.10 which works in 47.0a2. You can get it here: https://github.com/runejuhl/keysnail/releases/tag/v2.1.10signed-alt
@mooz: Should we look for a new maintainer for keysnail (or fork it), or do you have plans of producing an official signed release soon?
OK - mooz did make a new release - but it's broken for me. the alternative works but I hope we don't fork - mooz has been wonderful for a long time and unless he want's to withdraw we should be grateful and helpful.
I agree. However, it will water out his control of keysnail if there's a need for unofficial branches and it will harm the userbase, espcially new users, if they have to go explore unofficial XPIs to get it to work.
An alternative might be turning the project into an organization or add people as collaborators so merging pull requests and doing releases doesn't hinge on mooz alone.
@millwood @runejuhl Sorry for my delay in writing back. I've been quite busy for my official work recently...
Course, I'll make a release in few days. Maybe, tomorrow.
Besides, I'll seek for a sustainable development policy including organization style suggested by @runejuhl. I don't want to be a single point of failure.
Just released v2.2.0 fixing this issue (thanks to @gifnksm). Closing this issue.
Thanks for that @mooz -- and thank you for keysnail. I'm at a point where I feel I'm seriously hampered if I don't use it. I'll see if I can't find some time to work on some of the issues.
Thanks mooz! Slightly off-topic but while using an existing command on this page I notice Github hijacks certain keyboard shortcuts/keys. Wish there were a way for Keysnail to override such behavior.
@Fironet mooz has developed a very useful plugin KKK for this kind of issue. You can find more plugins on the Keysnail wiki page.
@kccai Great! Will try it. One question: in the script settings there is an area about site(s) to enable the script on, do I duplicate all three lines in the .keysnail.js file for each site I'd like to add, or just the plugins.options
line?
If you want to kill shortcut keys of everywhere in GitHub, paste the code below to the PRESERVE area in your .keysnail.js file.
>|javascript|
plugins.options["kkk.sites"] = ["^https?://([0-9a-zA-Z]+\\.)?github\\.com/"];
||<
@Fironet I copy down the first few lines of my .keysnail.js
file here. Hope this can help solve your problem.
//{{%PRESERVE%
// Put your codes here
plugins.options["kkk.sites"] = [
"^https?://([0-9a-zA-Z]+\\.)?github\\.com/",
"^https?://([0-9a-zA-Z]+\\.)?facebook\\.com/",
"^https?://([0-9a-zA-Z]+\\.)?google\\.com/"];
//}}%PRESERVE%
// ========================================================================= //
@kccai Cheers. So I added this, and duplicated an extra line below the Github one for Twitter, then reloaded both the addon and the plugin yet Twitter still hijacks my keys. Any ideas?
In the past have also tried about 4 userscipts yet none have been able to disable Twitter's overrides. It's a bit baffling tbh.
On debugging, it seems destructuring assignments in
for..in
comprehensions is removed. So things likelet paths = [path for ([path, plugin] in Iterator(plugins.context))];
don't work.Neither does
let paths = [for (let [path, plugin] in Iterator(plugins.context)) path];
.This works
let paths = [for (x of Iterator(plugins.context)) x[0]];