It seems this has made its way into HEAD! Is this worth of a pref in the UI?
On Sep 30, 1:37 pm, "björn" <[EMAIL PROTECTED]> wrote: > Hi all, > > The possibility to remap Caps-Lock to function as a second Escape key > has been brought up before. I never thought about this much before, > but being able to use Caps-Lock as Esc really makes a whole lot of > sense so I decided to see what could be done about this. > > It turns out that Mac OS X lets you remap Caps-Lock to function as > Ctrl, Alt, or Cmd, which is useful for Emacs I guess, but not so much > with Vim. But that got me thinking: maybe the Caps-Lock key can still > be identified by some virtual key code. If so, I could remap > Caps-Lock to Ctrl (for instance) and then check when Ctrl was pressed > if the actual key pressed really was Caps-Lock. Unfortunately I > couldn't figure out a way to do this (Caps-Lock sends the same key > code as the modifier you remap it to), so I had to hack it a bit. > > The attached patch will let you turn one of the _left_ modifier keys > into a sort of pseudo-Esc key: the modifier will work as usual, unless > it is pressed and released quickly (with no intervening key presses) > in which case it sends an Esc key event. I use it as follows: first I > go into the System Preferences and remap Caps-Lock to Ctrl. Then I > can happily use Caps-Lock as Esc but also as a Ctrl key (useful for > Ctrl-f, etc.). > > The only downside I've noticed so far is that Caps-Lock feels somewhat > sluggish as Esc, since the Esc event is sent when you release > Caps-Lock. If this bothers anybody I've added an option to send the > Esc event on key down but that will effectively disable the chosen > modifier key. However, it only turns the _left_ modifier key into > Esc. So, it is possible to e.g. remap Caps-Lock to Alt and then use > the _right_ Alt as a normal Alt key (I have two Alt keys, but only one > Ctrl on my keyboard, and I rarely use Alt anyway). I'm not sure > anybody wants to do this...I think I may use it myself if the > sluggishness bothers me (otherwise I'll stick with Caps-Lock as Ctrl). > > To use: > > 1. Apply patch and recompile > 2. Enter "System Preferences -> Keyboard & Mouse -> Modifier Keys..." > and remap Caps-Lock to Ctrl > 3. Open Terminal and type (one line): defaults write org.vim.MacVim > MMFakeEscModifier 1 > 4. Start MacVim and use Caps-Lock as Escape/Ctrl! > > If you want to use another modifier key, or if you want Caps-Lock to > send Esc on key down, then read the commit message: > > Modifier key sends Esc > > Adds possibility to make the left Ctrl, Alt, or Cmd key function as a > second Esc key. The key will still function as a modifier if held down > in conjunction with another key. Enable by setting the user default > "MMFakeEscModifier" to: > 1 = Left Ctrl > 2 = Left Alt > 3 = Left Cmd > any other number disables this functionality > > By remapping Caps-Lock to one of the above modifier keys this enables > the use of Caps-Lock as a second (and easy to reach) Esc key. Caps-Lock > can be remapped inside "System Preferences -> Keyboard & Mouse -> > Modifier Keys...". > > The Esc event is send when the modifier key is released. If the key is > not released within a predefined timeout, then no Esc event is > generated. The timeout can be changed by setting the user default > MMFakeEscTimeout (a float, specifying the timeout in seconds). > > The fact that the Esc event is sent on release makes it feel somewhat > sluggish. It is possible to have the event sent when the modifier key > is pressed by setting the user default "MMFakeEscOnKeyDown" but then the > left modifier key can only be used as an Esc key. > > Let me know what you think about the patch. > > Björn > > 0001-Modifier-key-sends-Esc.patch > 11KViewDownload --~--~---------~--~----~------------~-------~--~----~ You received this message from the "vim_mac" maillist. For more information, visit http://www.vim.org/maillist.php -~----------~----~----~----~------~----~------~--~---
