Skip to content

Instantly share code, notes, and snippets.

@msolomon
Created March 18, 2014 06:03
Show Gist options
  • Select an option

  • Save msolomon/9614362 to your computer and use it in GitHub Desktop.

Select an option

Save msolomon/9614362 to your computer and use it in GitHub Desktop.
Programmer Dvorak snippet for KeyRemap4MacBook
<item>
<name>Use Programmer Dvorak - Qwerty Keyboard Layout</name>
<appendix>(QWERTY to Programmer Dvorak)</appendix>
<appendix>(+ Command,Control,Option+Keys to QWERTY)</appendix>
<identifier>remap.qwerty2programmerdvorak_qwerty</identifier>
<modifier_not>
ModifierFlag::COMMAND_L,
ModifierFlag::COMMAND_R,
ModifierFlag::CONTROL_L,
ModifierFlag::CONTROL_R,
ModifierFlag::OPTION_L,
ModifierFlag::OPTION_R
</modifier_not>
<!-- If ModifierFlag::FN is pressed, retain keys to convert Fn+jkl to 123 (numpad) -->
<modifier_not>ModifierFlag::FN</modifier_not>
<autogen>__KeyToKey__ KeyCode::Q, KeyCode::SEMICOLON</autogen>
<autogen>__KeyToKey__ KeyCode::W, KeyCode::COMMA</autogen>
<autogen>__KeyToKey__ KeyCode::E, KeyCode::DOT</autogen>
<autogen>__KeyToKey__ KeyCode::R, KeyCode::P</autogen>
<autogen>__KeyToKey__ KeyCode::T, KeyCode::Y</autogen>
<autogen>__KeyToKey__ KeyCode::Y, KeyCode::F</autogen>
<autogen>__KeyToKey__ KeyCode::U, KeyCode::G</autogen>
<autogen>__KeyToKey__ KeyCode::I, KeyCode::C</autogen>
<autogen>__KeyToKey__ KeyCode::O, KeyCode::R</autogen>
<autogen>__KeyToKey__ KeyCode::P, KeyCode::L</autogen>
<autogen>__KeyToKey__ KeyCode::BRACKET_LEFT, KeyCode::SLASH</autogen>
<autogen>__KeyToKey__ KeyCode::BRACKET_RIGHT, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_6, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::BRACKET_RIGHT, KeyCode::KEY_2, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::S, KeyCode::O</autogen>
<autogen>__KeyToKey__ KeyCode::D, KeyCode::E</autogen>
<autogen>__KeyToKey__ KeyCode::F, KeyCode::U</autogen>
<autogen>__KeyToKey__ KeyCode::G, KeyCode::I</autogen>
<autogen>__KeyToKey__ KeyCode::H, KeyCode::D</autogen>
<autogen>__KeyToKey__ KeyCode::J, KeyCode::H</autogen>
<autogen>__KeyToKey__ KeyCode::K, KeyCode::T</autogen>
<autogen>__KeyToKey__ KeyCode::L, KeyCode::N</autogen>
<autogen>__KeyToKey__ KeyCode::SEMICOLON, KeyCode::S</autogen>
<autogen>__KeyToKey__ KeyCode::QUOTE, KeyCode::MINUS</autogen>
<autogen>__KeyToKey__ KeyCode::Z, KeyCode::QUOTE</autogen>
<autogen>__KeyToKey__ KeyCode::X, KeyCode::Q</autogen>
<autogen>__KeyToKey__ KeyCode::C, KeyCode::J</autogen>
<autogen>__KeyToKey__ KeyCode::V, KeyCode::K</autogen>
<autogen>__KeyToKey__ KeyCode::B, KeyCode::X</autogen>
<autogen>__KeyToKey__ KeyCode::N, KeyCode::B</autogen>
<autogen>__KeyToKey__ KeyCode::COMMA, KeyCode::W</autogen>
<autogen>__KeyToKey__ KeyCode::DOT, KeyCode::V</autogen>
<autogen>__KeyToKey__ KeyCode::SLASH, KeyCode::Z</autogen>
<autogen>__KeyToKey__ KeyCode::MINUS, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_8</autogen>
<autogen>__KeyToKey__ KeyCode::MINUS, KeyCode::KEY_1, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::EQUAL, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::BACKQUOTE</autogen>
<autogen>__KeyToKey__ KeyCode::EQUAL, KeyCode::KEY_3, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::BACKQUOTE, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::BACKQUOTE, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::BACKQUOTE, KeyCode::KEY_4, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_1, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_5, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_1, KeyCode::KEY_7, ModifierFlag::SHIFT_L</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_2, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_7</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_2, KeyCode::BRACKET_LEFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_3, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_5</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_3, KeyCode::BRACKET_LEFT, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_4, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_3</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_4, KeyCode::BRACKET_RIGHT, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_5, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_1</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_5, KeyCode::KEY_9, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_6, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_9</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_6, KeyCode::EQUAL</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_7, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_0</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_7, KeyCode::KEY_8, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_8, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_2</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_8, KeyCode::KEY_0, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_9, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_4</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_9, KeyCode::EQUAL, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_0, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_SHIFT, KeyCode::KEY_6</autogen>
<autogen>__KeyToKey__ KeyCode::KEY_0, KeyCode::BRACKET_RIGHT</autogen>
</item>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment