Firefox/Thunderbird keyfixer, starting with version 0.4, is now as a Mozilla Extension.
Keyfixer makes the keyboard bindings for Firefox or Thunderbird on Mac OS X behave like Windows. This is very useful for people who use both Windows and Mac (like I do), and don't want to have to continually remap your brain for each system
This new version is a regular Mozilla Extension (a type of Add-on), so now you don't have to uninstall and reinstall every time you upgrade Firefox.
Thanks to Jim Mendenhall of Starry Hope for the original version!
Let me know if you have any issues!
Cheers, -Matt
[Update: Version 0.4.2 is now available as a feature release to additionally bind the Control key instead of just the Command key. Some people prefer to use Control, and now you can use either...)
[Update: Version 0.4.2 is now available as a feature release to additionally bind the Control key instead of just the Command key. Some people prefer to use Control, and now you can use either...)
Thanks for turning this into an extension!
ReplyDeleteI think the shortcuts should use the "control" instead of the "accel" modifier though. E.g. cmd_wordNext should be Ctrl-Right and not Cmd-Right.
Hi Jan,
ReplyDeleteI made it use "Cmd" instead of "Ctrl" because I have Cmd and Ctrl switched so that all the other applications behave more like Windows. If I used "Ctrl" in this extension, it would actually mess me up.
To switch "Cmd" and "Ctrl", use the apple menu as follows:
Apple Icon->System Preferences...->Keyboard & Mouse->Keyboard->Modifier Keys...
Then change the Control (^) Key to use "Command", and the Command Key to use "^ Control".
That said, if you still prefer keeping all your other applications more "Mac-like", you could probably directly replace the platformHTMLBindings.xml file directly with one taken from a Windows Firefox of the same version. This is a fairly quick hack, and if there's enough demand, I could look into adding a "Preferences..." Menu to keyfixer that would let you choose which version to use...
Cheers, -Matt
Hi Matt,
ReplyDeleteI understand why you personally want to do the mapping as is, but I think for an add-on hosted on mozilla.org you should either assume the default keyboard layout, or make this a preference that can be set using the GUI.
I can certainly swap in my own keybindings file; I just hoped that using the extension would let me do it once and forget about it, even when I install FF updates.
Cheers,
-Jan
Jan -- Unfortunately, I don't know a way (without a lot of research) to allow customizations of the platformHTMLBindings.xml within a plugin. With just a few lines of code, I can substitute the whole XML file with another.
ReplyDeleteThat said, I think it would be possible (with little work) to double-bind most key shortcuts to both Ctrl and Cmd. In glancing over the bindings, I don't think this would cause a problem for the standard navigation and editing keys (arrows, PgUp, Home, Del etc).
I'll turn a version 0.4.1 with these changes and let you give it a spin if you like... :)
Thanks! It works for me, although I had to manually install the update from your site; it didn't update through the mozilla add-on mechanism.
ReplyDeleteThank you Jan for giving it a spin! I'll investigate the updating issue, although I suspect it didn't update because keyfixer is currently not public on Mozilla's site. This is my first Extension, so it's quite possible that I need to do something special to enable automatic updates. (Anyone know?)
ReplyDeleteUsing this program since 0.2, I am really happy it's now an extension !
ReplyDeleteNo more resintalling "keyfixer" with every Firefox version.
Thank a lot Matthew, I was so lost without theses 2 keys...
I just checked the Mozilla website, and people are not currently getting automatic updates because Mozilla hasn't yet made it public. Before Mozilla makes keyfixer public, it needs several reviews. So, if you want automatic updates to subsequent versions, please go to the mozilla keyfixer page and submit a review. Thanks!
ReplyDeleteWorks Great! Thanks for the hard work. I just switched from windows to osx and little things like this drove me nuts.
ReplyDeleteThanks for your work on this, very helpful!
ReplyDeleteGreg
A preferences dialog would be most welcome. I'd like to be able to switch the behaviour of Ctrl-Left/Right to Alt-Left/Right since Spaces on Leopard already uses Ctrl-Left/Right
ReplyDeleteOlly: I've got Spaces disabled on my system, but I do remember running into some issues previously... :)
ReplyDeleteUnfortunately, a configuration menu would be a large change -- I'd have to learn a whole lot more about extension programming. I wouldn't mind doing some of this for a "1.0" release, but as you'd expect, my time is somewhat limited.
BTW, I think that Cmd-Left/Right should do what you want, in this case.
Just a quick thank you note. I've been annoyed by Firefox's behavior on the mac since day one and it took me a long time to work out which problems were mac inconsistencies (of which there were more than I expected) and which one were Firefox oddities. Between your excellent post at http://heisencoder.net/2008/04/fixing-up-mac-key-bindings-for-windows.html and this, I'm a very happy camper.
ReplyDeleteThank you for all of this work, it's really appreciated.
Thanks, I shudder to think how much time I've spent trying to get the HOME/END keys fixed on FF for Mac! Finally! :)
ReplyDeleteHey... is there any way of changing it so that it retains Command-Left/Right as equivalent to Home/End? Right now Command-Left/Right jumps to the previous/next word, but in every other application it's Option-Left/Right that does that. I'd appreciate it because sometimes I'm not using my external keyboard. I saw Jan's comment earlier.. where's the platformHTMLBindings.xml file located?
ReplyDeleteHi ambientnoise,
ReplyDeleteI've added some rough instructions here: Hacking Keyfixer
Basically, platformHTMLBindings.xml is stored within a zip within a zip. (i.e., the .jar file within the .xpi file).
Let me know if these instructions give you the basics...
Hello, thank you for creating this add-on..
ReplyDeleteAre you working on the 3.1b3 version of this add-on?
I got three messages this weekend asking for a 3.1b3 update, so I've pushed out a version 0.4.2 to the Mozilla website, with the only change to bump maxVersion to 3.2a1pre, which should now let keyfixer work on all 3.1 versions (including the released version, whenever that happens). Let me know if anyone see any problems...
ReplyDeleteThanks a lot! You're clever even Steve Jobs:)
ReplyDeleteThanks for the plugin!
ReplyDeleteDoes this also fix problems when hitting Cmd-Left while typing text in some richt-text editors? In some editors (such as TinyMCE) hitting Cmd-Left to go to the start of the current line makes Firefox go back to the previous page instead. If keyfixer does not prevent that, then an add-on named keyconfig might be helpful -- see http://www.macosxhints.com/article.php?story=20090118145518767
ReplyDeleteArjan: Unfortunately, keyfixer does not fix the problem you mentioned. I confirmed that TinyMCE still has the Cmd-Left problem, and I've been personally using keyconfig to fix it. I don't think that the approach used by keyfixer (i.e., modifying the platformHTMLBindings.xml file) can fix this.
ReplyDeletei have installed it & it works great for firefox, but has not worked for thunderbird at all
ReplyDeleteis there something i;m not doing?
cheers
glen
Hi Glen:
ReplyDeleteTo help you, I need a bit more information. I've tested KeyFixer on Thunderbird 2.0.0.21 without issue. Could you provide more details, like:
- Specifically, what are the issues you're seeing?
- What version of Thunderbird are you running?
- What other Extensions do you have installed?
Thanks! -Matt
hi matt
ReplyDeletei thought when i added keyfixer from the official firefox add on site that it would also add it to thunderbird
but i have just realised that the add on was not actually installed on thunderbird
so i now have installed keyfixer directly from thunderbird and it is working fine
thanks
glen
command back does not work on google docs for me even with this installed. i have a unibody with firefox 3.5 installed
ReplyDeleteI've had trouble with Google products (in particular GMail). If it's particular to Google, then I don't think it's possible to fix it with the method that Keyfixer uses (this is probably buried somewhere in the way that Google redefines keystrokes with its JavaScript).
ReplyDeleteThis fixes the BIGGEST single annoyance I've had since changing to a Macbook. I use GMail all day as my primary email, and bad behavior with the Home and End keys was maddening.
ReplyDeleteTHANK you for this.
Oh crap, I never knew why my fix OUTSIDE firefox didn't work inside gmail. Now I have home and end. Thank you SO MUCH!!!
ReplyDeleteThis is a blessing!
ReplyDeleteHey, I'm using FF v3.5.3, and OS X SL v10.6.1 on a new MBP 15". I just installed keyfixer v0.4.2, and it's not working in the compose windows of gmail.
ReplyDeleteAdmittedly, I also have KeyRemap4MacBook installed to get the same behavior outside of FF. Would that break keyfixer behavior?
id:
ReplyDeleteNote that there is a known issue with Firefox and GMail compose (in Rich text editing mode), concerning the Cmd-Left/Cmd-Right mappings. GMail seems to snarf this up, probably through JavaScript. Maybe this is part of the problem?
I've never seen KeyRemap4MacBook before, so I don't know the strategy it uses for doing the key remapping. The Keyfixer 0.1 strategy is to change the Cocoa default key bindings, and this method does not interfere with the Firefox KeyFixer 0.4.x because Firefox doesn't seem to use the Cocoa key bindings. If KeyRemap4MacBook uses a more general remapping, then it's quite possible that it interferes with Firefox KeyFixer.
Anyone else have thoughts?
Using Firefox 4 now with 0.5 Keyfixer 0.5.
ReplyDeleteFor some reason the CMD-Left still takes me to the previous page (which is very annoying with online editors).
How can that be fixed? Or should the keyfixer have done that for me?
DJ: Cmd-Left is very troublesome because this causes the browser to go to the previous page if a text box (or similar widget) doesn't have the input focus. I've gotten around this problem by installing the keyconfig extension (see http://mozilla.dorando.at/) and mapping Alt-Left instead of Cmd-Left for going to the previous page. I don't know an easy way to change KeyFixer to do this without a major revamp.
ReplyDeleteIs there an update in the works that will be usable in Thunderbird 5?
ReplyDeleteRobin: I haven't been planning to upgrade keyfixer for Thunderbird 5 since I don't use Thunderbird anymore. However, I could take a look. Is there a particular problem that you're running in to?
ReplyDeleteOkay, I did some quick checking, and it looks like Keyfixer 0.5 will work as-is in Thunderbird 5. I've updated the allowed versions on the Mozilla extensions page, so next time you search for extension updates, Keyfixer 0.5 should work again in Thunderbird 5 beta.
ReplyDelete