Hi. I bought my first Mac (a shiny white 2GHz MacBook, running OS X 10.4.9) a few weeks ago. After far too many years using PC keyboards (running Linux whenever possible, but I still need to use Windows at work, unfortunately!), my left pinky finger just can't get the hang of the fn and ctrl key placement on the MacBook. I was excited to find DoubleCommand earlier today. While it doesn't appear to simply swap fn and ctrl yet, it's at least a big improvement for me to make fn work like a ctrl key.
Unfortunately, it's not quite doing what I need on my MacBook. Using fn as a ctrl key works as expected for most of the plain letter keys, but not for the keys which serve as the numeric keypad when in numlock mode (i.e., "uiopjkl..."). For those keys, if I use the regular ctrl key, applications see the desired control+letter combination. If I use the remapped fn key, though, applications see a control+keypad_number combination. For example, fn+u generates a ctrl+KP_4 instead of ctrl+u.
I'm presently running DoubleCommand 1.6.2, pulled out of the svn trunk earlier today.
I poked around in the DoubleCommand source code to see how it works, and then tried turning on the debug mode to see what keypress events showed up. It appears that replacing the letter key events with keypad key events when fn is pressed occurs before the events make it to DoubleCommand, so I can at least see part of the story about why things aren't working the way I want them to.
I don't have a full-sized Mac keyboard or another kind of Mac to compare against, but I suspect this might be a laptop-specific problem related to the way the numeric keypad is embedded within the regular letter area.
Now, I could start hacking on the DoubleCommand source code and simply force any keypad events back to the corresponding letter key events by brute force. I've never felt at all comfortable using a laptop-style embedded keypad, so I wouldn't mind abandoning that functionality. However, since I'm very new to the Mac, I don't fully understand how DoubleCommand wedges itself into the input stream, and I don't understand how keyboard handling is even *supposed* to work in OS X yet, I figured that I ought to bring this up here before I start breaking stuff. :-) I may hack up DoubleCommand to swap fn and ctrl the way I'd prefer, anyway, but I'd like to do it cleanly even if my version never makes it off my own laptop.
Have any of y'all encountered this problem before? If so, have you found a fix for it? Am I just a lame newbie who's too dumb to operate such a sophisticated computer? ;-)
Thanks in advance for any help.
P.S.: While I'm probably too clueless about OS X internals to just fix this the right way yet, I did manage to compile and install DoubleCommand without letting any sleek, white smoke out of my sleek, white MacBook, so I could at least help test any potential DoubleCommand patches.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I agree with your desire wholeheartedly. My fingers just don't adjust. Having looked through the source code myself, it appears that there is an option to swap fn/ctrl -- rather than just have fn act as control -- but it's not accessible via the UI. Not sure if it just wasn't finished, never worked, or what...
Like you, I'm a Mac noob -- and don't understand the input stream well enough yet to dig in and solve it. I'd be happy to help with the debugging, though... :-)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi. I bought my first Mac (a shiny white 2GHz MacBook, running OS X 10.4.9) a few weeks ago. After far too many years using PC keyboards (running Linux whenever possible, but I still need to use Windows at work, unfortunately!), my left pinky finger just can't get the hang of the fn and ctrl key placement on the MacBook. I was excited to find DoubleCommand earlier today. While it doesn't appear to simply swap fn and ctrl yet, it's at least a big improvement for me to make fn work like a ctrl key.
Unfortunately, it's not quite doing what I need on my MacBook. Using fn as a ctrl key works as expected for most of the plain letter keys, but not for the keys which serve as the numeric keypad when in numlock mode (i.e., "uiopjkl..."). For those keys, if I use the regular ctrl key, applications see the desired control+letter combination. If I use the remapped fn key, though, applications see a control+keypad_number combination. For example, fn+u generates a ctrl+KP_4 instead of ctrl+u.
I'm presently running DoubleCommand 1.6.2, pulled out of the svn trunk earlier today.
I poked around in the DoubleCommand source code to see how it works, and then tried turning on the debug mode to see what keypress events showed up. It appears that replacing the letter key events with keypad key events when fn is pressed occurs before the events make it to DoubleCommand, so I can at least see part of the story about why things aren't working the way I want them to.
I don't have a full-sized Mac keyboard or another kind of Mac to compare against, but I suspect this might be a laptop-specific problem related to the way the numeric keypad is embedded within the regular letter area.
Now, I could start hacking on the DoubleCommand source code and simply force any keypad events back to the corresponding letter key events by brute force. I've never felt at all comfortable using a laptop-style embedded keypad, so I wouldn't mind abandoning that functionality. However, since I'm very new to the Mac, I don't fully understand how DoubleCommand wedges itself into the input stream, and I don't understand how keyboard handling is even *supposed* to work in OS X yet, I figured that I ought to bring this up here before I start breaking stuff. :-) I may hack up DoubleCommand to swap fn and ctrl the way I'd prefer, anyway, but I'd like to do it cleanly even if my version never makes it off my own laptop.
Have any of y'all encountered this problem before? If so, have you found a fix for it? Am I just a lame newbie who's too dumb to operate such a sophisticated computer? ;-)
Thanks in advance for any help.
P.S.: While I'm probably too clueless about OS X internals to just fix this the right way yet, I did manage to compile and install DoubleCommand without letting any sleek, white smoke out of my sleek, white MacBook, so I could at least help test any potential DoubleCommand patches.
I agree with your desire wholeheartedly. My fingers just don't adjust. Having looked through the source code myself, it appears that there is an option to swap fn/ctrl -- rather than just have fn act as control -- but it's not accessible via the UI. Not sure if it just wasn't finished, never worked, or what...
Like you, I'm a Mac noob -- and don't understand the input stream well enough yet to dig in and solve it. I'd be happy to help with the debugging, though... :-)