Ivan Porto Carrero

IO(thoughts) flatMap (_.propagandize)

07

Feb
2008

More on Mac KeyBindings

The biggest problem so far I’ve had when switching from windows to a mac were the shortcut keys, and mostly the inconsistency thereof. It turns out there is a way to manipulate the keybindings for all cocoa apps, which should make them consistent across all good cocoa citizens. Firefox isn’t one of those citizens neither is firefox 3.0.

I uninstalled quicksilver because I couldn’t work out what it would do for me and didn’t want to spend time figuring it out either. This liberated my ctrl-space for visual studio.  I remapped alt-insert to alt-i and that works for me. Then I brought some consistency in the way my keys behave across all cocoa apps.

I solved my problem with the shortcut keys by following the instructions that can be found in the following posts.
They talk about editing a file by hand and saving it, but for those that like a GUI there is one for it.

The GUI application: KeyBindingsEditor

The links with some instructions and background information.

http://blog.macromates.com/2005/key-bindings-for-switchers/

http://www.hcs.harvard.edu/~jrus/site/cocoa-text.html

The last post lists a couple of predefined keybinding files like one for emacs

http://www.hcs.harvard.edu/~jrus/site/KeyBindings/Emacs%20Esc%20Bindings.dict

or windows key bindings

http://www.hcs.harvard.edu/~jrus/site/KeyBindings/Emacs%20Esc%20Bindings.dict

Guess which ones I took and it’s not emacs ;) I actually just took a couple of keybindings. The ones that I use the most

/***** ARROWS *****/ 

    “^\UF700”   = “moveToBeginningOfParagraph:”;    / C-up         Move to beginning of paragraph /
    “^\UF701”   = “moveToEndOfParagraph:”;          / C-down       Move to end of paragraph /

    “^$\UF700”  = “moveToBeginningOfParagraphAndModifySelection:”;
                                                    / C-Shft-up    Select to beginning of paragraph /
    “^$\UF701”  = “moveToEndOfParagraphAndModifySelection:”;
                                                    / C-Shft-down  Select to end of paragraph /

    “^\UF702”   = “moveWordLeft:”;                  / C-left       Move word left /
    “^\UF703”   = “moveWordRight:”;                 / C-right      Move word right /

    “$^\UF702”  = “moveWordLeftAndModifySelection:”;
                                                    / C-Shft-left  Select word left /
    “$^\UF703”  = “moveWordRightAndModifySelection:”;
                                                    / C-Shft-right Select word right /

/ CTRL + LETTERS /

    “^a”        = “selectAll:”;                     / C-a          Select all /

    “^x”        = “cut:”;                           / C-x          Cut /
    “^c”        = “copy:”;                          / C-c          Copy /
    “^v”        = “paste:”;                         / C-v          Paste /

    “^z”        = “undo:”;                          / C-z          Undo /
    “^y”        = “redo:”;                          / C-y          Redo /

    “^s”        = “save:”;                          / C-s          Save /
    “^S”        = “saveAs:”;                        / C-Shft-s     Save as /
 

Comments

To top