XML Config

Karabiner older version’s config file format

XML Config

XML configuration files are the configuration file format used by older versions of Karabiner (MacOS 10.10 Yosemite). It is no longer maintained and supported

The original address of the XML configuration file: https://github.com/Vonng/Capslock/blob/master/mac_v1/private.xml

Content

<?xml version="1.0"?>
<root>
    <!-- Introduction -->
    <item>
        <name style="important">CapsLock Enhancement</name>
        <appendix></appendix>
        <appendix>Make CapsLock Great Again!</appendix>
        <appendix></appendix>
        <appendix>※Author: Vonng (fengruohang@outlook.com)</appendix>
        <appendix>※Document: https://github.com/Vonng/Capslock/tree/master/osx</appendix>
        <appendix>※Environment: Mac OS X darwin64 via Karabiner</appendix>
        <appendix>※License: WTFPL</appendix>
        <appendix>※Prequisite: Maps ⇪CapsLock to F19(KeyCode:80) first. (via Seil)</appendix>
    </item>


    <!-- Hyper declaration -->
    <modifierdef>HYPER</modifierdef>

    <item>
        <name style="important">CapsLock setup</name>
        <appendix>Hold CapsLock to Hyper</appendix>
        <appendix>⇪[Hold] ↦ ✱</appendix>
        <appendix></appendix>
        <appendix>Press CapsLock to ?</appendix>
        <appendix><![CDATA[* ⎋  ESC ]]></appendix>
        <appendix><![CDATA[* ⌥␢ Language-Switcher]]></appendix>
    </item>


    <!-- CapsLock to Hyper/Language Switcher(Recommend) -->
    <item>
        <name>Press CapsLock to Language-Switcher</name>
        <appendix>⇪[Press] ↦ ⌥␢</appendix>

        <identifier>private.capslock-langswitcher</identifier>

        <autogen>
            --KeyOverlaidModifier--
            KeyCode::F19,
            KeyCode::VK_MODIFIER_HYPER,
            KeyCode::SPACE, ModifierFlag::CONTROL_L
        </autogen>
    </item>


    <!-- CapsLock to Escape -->
    <item>
        <name>Press CapsLock to Escape</name>
        <appendix>⇪[Press] ↦ ⎋</appendix>

        <identifier>private.capslock-escape</identifier>

        <autogen>
            --KeyOverlaidModifier--
            KeyCode::F19,
            KeyCode::VK_MODIFIER_HYPER,
            KeyCode::ESCAPE
        </autogen>
    </item>


    <!-- Hyper Navigator -->
    <item>
        <name>Hyper Navigator</name>
        <appendix><![CDATA[✱H ↦ ← (CursorLeft)]]></appendix>
        <appendix><![CDATA[✱J ↦ ↓ (CursorDown)]]></appendix>
        <appendix><![CDATA[✱K ↦ ↑ (CursorUp)]]></appendix>
        <appendix><![CDATA[✱L ↦ → (CursorRight)]]></appendix>
        <appendix><![CDATA[✱U ↦ ⇞ (PageUp)]]></appendix>
        <appendix><![CDATA[✱I ↦ ↖ (Home)]]></appendix>
        <appendix><![CDATA[✱O ↦ ↘ (End)]]></appendix>
        <appendix><![CDATA[✱P ↦ ⇟ (PageDown)]]></appendix>
        <appendix></appendix>
        <appendix>※Hint: Hold additional ⌘(Left) key for selection</appendix>
        <identifier>private.hyper-navigator</identifier>

        <!-- H: Left -->
        <autogen>
            --KeyToKey--
            KeyCode::H, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::CURSOR_LEFT | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::H, ModifierFlag::HYPER,
            KeyCode::CURSOR_LEFT
        </autogen>

        <!-- J: Down -->
        <autogen>
            --KeyToKey--
            KeyCode::J, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::CURSOR_DOWN | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::J,ModifierFlag::HYPER,
            KeyCode::CURSOR_DOWN
        </autogen>

        <!-- K: Up -->
        <autogen>
            --KeyToKey--
            KeyCode::K, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::CURSOR_UP | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::K,ModifierFlag::HYPER,
            KeyCode::CURSOR_UP
        </autogen>

        <!-- L: Right -->
        <autogen>
            --KeyToKey--
            KeyCode::L, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::CURSOR_RIGHT | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::L,ModifierFlag::HYPER,
            KeyCode::CURSOR_RIGHT
        </autogen>

        <!-- U: PageUp -->
        <autogen>
            --KeyToKey--
            KeyCode::U, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::PAGEUP | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::U,ModifierFlag::HYPER,
            KeyCode::PAGEUP
        </autogen>

        <!-- I: HOME -->
        <autogen>
            --KeyToKey--
            KeyCode::I, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::HOME | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::I,ModifierFlag::HYPER,
            KeyCode::HOME
        </autogen>

        <!-- O: END -->
        <autogen>
            --KeyToKey--
            KeyCode::O, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::END | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::O,ModifierFlag::HYPER,
            KeyCode::END
        </autogen>

        <!-- P: PageDown -->
        <autogen>
            --KeyToKey--
            KeyCode::P, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::PAGEDOWN | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::P,ModifierFlag::HYPER,
            KeyCode::PAGEDOWN
        </autogen>
    </item>


    <!-- Hyper Deletion -->
    <item>
        <name>Hyper Deletion</name>
        <appendix><![CDATA[✱N ↦ ⌥⌫ (Delete a word ahead)]]></appendix>
        <appendix><![CDATA[✱M ↦ ⌫  (Delete a char ahead)]]></appendix>
        <appendix><![CDATA[✱, ↦ ⌦  (Delete a char after)]]></appendix>
        <appendix><![CDATA[✱. ↦ ⌥⌦ (Delete a word after)]]></appendix>
        <identifier>private.hyper-deletion</identifier>

        <autogen>
            --KeyToKey--
            KeyCode::N, ModifierFlag::HYPER,
            KeyCode::DELETE, ModifierFlag::OPTION_L,
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::M,ModifierFlag::HYPER,
            KeyCode::DELETE
        </autogen>

        <autogen>
            --KeyToKey--
            KeyCode::COMMA,ModifierFlag::HYPER,
            KeyCode::FORWARD_DELETE
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::DOT,ModifierFlag::HYPER,
            KeyCode::FORWARD_DELETE, ModifierFlag::OPTION_L
        </autogen>
    </item>


    <!-- Hyper Window Control -->
    <item>
        <name>Hyper Window-Manipulation</name>
        <appendix><![CDATA[✱A  ↦ ⌃⌥⇧⌘A (Moom Prefix)]]></appendix>
        <appendix><![CDATA[✱⌘A ↦ F11   (Desktop)]]></appendix>
        <appendix></appendix>
        <appendix><![CDATA[✱Q  ↦ ⌘Q    (Close Window)]]></appendix>
        <appendix><![CDATA[✱⇥  ↦ ⌃⇥    (Alter window)]]></appendix>
        <appendix><![CDATA[✱⌘⇥ ↦ ⌃⇧⇥   (Alter window reversely)]]></appendix>
        <appendix></appendix>
        <appendix><![CDATA[✱S  ↦ ⌃⇥    (Alter tab)]]></appendix>
        <appendix><![CDATA[✱⌘S ↦ ⌃⇧⇥   (Alter tab reversely)]]></appendix>
        <appendix><![CDATA[✱W  ↦ ⌘W    (Close Tab)]]></appendix>
        <identifier>private.hyper-window-manipulation</identifier>


        <!-- ✱A Moom-Prefix  -->
        <autogen>
            --KeyToKey--
            KeyCode::A,ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::F11
        </autogen>

        <!-- ✱⌘A: Desktop  -->
        <autogen>
            --KeyToKey--
            KeyCode::A,ModifierFlag::HYPER ,
            KeyCode::A,ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::CONTROL_L |
            ModifierFlag::SHIFT_L
        </autogen>

        <!-- window control -->
        <autogen>
            --KeyToKey--
            KeyCode::TAB, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::TAB,ModifierFlag::COMMAND_L | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::TAB, ModifierFlag::HYPER,
            KeyCode::TAB,ModifierFlag::COMMAND_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::Q, ModifierFlag::HYPER,
            KeyCode::Q, ModifierFlag::COMMAND_L
        </autogen>


        <!-- tab control -->
        <autogen>
            --KeyToKey--
            KeyCode::W, ModifierFlag::HYPER ,
            KeyCode::W, ModifierFlag::COMMAND_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::S,ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::TAB,ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::S,ModifierFlag::HYPER,
            KeyCode::TAB,ModifierFlag::CONTROL_L
        </autogen>
    </item>


    <!-- Hyper Bash Control -->
    <item>
        <name>Hyper Bash-Control</name>
        <appendix><![CDATA[✱Z ↦ ⌃Z (SIGTSTP)]]></appendix>
        <appendix><![CDATA[✱X ↦ ⌃B (Tmux-Prefix)]]></appendix>
        <appendix><![CDATA[✱C ↦ ⌃C (SIGINT)]]></appendix>
        <appendix><![CDATA[✱V ↦ ,  (VS Code)]]></appendix>
        <appendix><![CDATA[✱D ↦ ⌃D (EOF)]]></appendix>

        <identifier>private.hyper-bash-control</identifier>

        <!-- ^Z SIGTSTP -->
        <autogen>
            --KeyToKey--
            KeyCode::Z, ModifierFlag::HYPER ,
            KeyCode::Z, ModifierFlag::CONTROL_L
        </autogen>

        <!-- ^X Tmux Prefix -->
        <autogen>
            --KeyToKey--
            KeyCode::X, ModifierFlag::HYPER ,
            KeyCode::B, ModifierFlag::CONTROL_L
        </autogen>

        <!-- ^C SIGINT -->
        <autogen>
            --KeyToKey--
            KeyCode::C, ModifierFlag::HYPER,
            KeyCode::C, ModifierFlag::CONTROL_L
        </autogen>

        <!-- EOF -->
        <autogen>
            --KeyToKey--
            KeyCode::D, ModifierFlag::HYPER ,
            KeyCode::D, ModifierFlag::CONTROL_L
        </autogen>

    </item>


    <!--Hyper Application-->
    <item>
        <name>Hyper Application</name>
        <appendix></appendix>
        <appendix>E: Explore</appendix>
        <appendix><![CDATA[✱E  ↦ Browser]]></appendix>
        <appendix><![CDATA[✱⌘E ↦ Finder]]></appendix>

        <appendix></appendix>
        <appendix>R: Run</appendix>
        <appendix><![CDATA[✱R  ↦ iTerm]]></appendix>
        <appendix><![CDATA[✱⌘R ↦ ^R (IDE-Run)]]></appendix>

        <appendix></appendix>
        <appendix>T: Text</appendix>
        <appendix><![CDATA[✱T  ↦ Typora ]]></appendix>
        <appendix><![CDATA[✱⌘T ↦ MWeb ]]></appendix>
        <appendix><![CDATA[✱V  ↦ VS Code ]]></appendix>

        <appendix></appendix>
        <appendix>F: Find</appendix>
        <appendix><![CDATA[✱F  ↦ Dictionary]]></appendix>
        <appendix><![CDATA[✱⌘D ↦ Dash]]></appendix>

        <appendix></appendix>
        <appendix>G: IDE</appendix>
        <appendix><![CDATA[✱G  ↦ Intellij IDEA]]></appendix>

        <identifier>private.hyper-application</identifier>

        <!--Define your own application here-->
        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_iTerm</name>
            <url type="file">/Applications/iTerm.app</url>
        </vkopenurldef>
        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_INTELLIJ_IDEA</name>
            <url type="file">/Applications/IntelliJ IDEA.app/</url>
        </vkopenurldef>
        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_Visual_Studio_Code</name>
            <url type="file">/Applications/Visual Studio Code.app/</url>
        </vkopenurldef>
        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_Dash</name>
            <url type="file">/Applications/Dash.app/</url>
        </vkopenurldef>
        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_Typora</name>
            <url type="file">/Applications/Typora.app</url>
        </vkopenurldef>
        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_MWeb</name>
            <url type="file">/Applications/MWeb.app</url>
        </vkopenurldef>

        <autogen>
            --KeyToKey--
            KeyCode::E, ModifierFlag::HYPER | ModifierFlag::COMMAND_L ,
            KeyCode::VK_OPEN_URL_APP_Finder
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::R, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::R, ModifierFlag::CONTROL_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::R, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_iTerm
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::T, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_Typora
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::T, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::VK_OPEN_URL_APP_MWeb
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::V, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_Visual_Studio_Code
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::F, ModifierFlag::HYPER | ModifierFlag::COMMAND_L ,
            KeyCode::VK_OPEN_URL_APP_Dictionary
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::F, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_Dash
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::G, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_INTELLIJ_IDEA
        </autogen>
    </item>


    <!--Hyper Browser: Safari-->
    <item>
        <name>Hyper+E ↦ Safari</name>
        <appendix><![CDATA[✱E  ↦ Safari]]></appendix>

        <identifier>private.hyper-explore-safari</identifier>

        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_Safari</name>
            <url type="file">/Applications/Safari.app</url>
        </vkopenurldef>

        <autogen>
            --KeyToKey--
            KeyCode::E, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_Safari
        </autogen>
    </item>


    <!--Hyper Browser: Chrome -->
    <item>
        <name>Hyper+E ↦ Google Chrome</name>
        <appendix><![CDATA[✱E  ↦ Google Chrome]]></appendix>

        <identifier>private.hyper-explore-chrome</identifier>

        <vkopenurldef>
            <name>KeyCode::VK_OPEN_URL_APP_Google_Chrome</name>
            <url type="file">/Applications/Google Chrome.app</url>
        </vkopenurldef>

        <autogen>
            --KeyToKey--
            KeyCode::E, ModifierFlag::HYPER,
            KeyCode::VK_OPEN_URL_APP_Google_Chrome
        </autogen>
    </item>


    <!-- Hyper Functional-->
    <item>
        <name>Hyper Functional</name>
        <appendix>Maps ✱F[N] to corresponding functionality</appendix>
        <appendix><![CDATA[✱F1  ↦  BrightnessDown]]></appendix>
        <appendix><![CDATA[✱F2  ↦  BrightnessUp]]></appendix>
        <appendix><![CDATA[✱F3  ↦  ExposeAll]]></appendix>
        <appendix><![CDATA[✱F4  ↦  LaunchPad]]></appendix>
        <appendix><![CDATA[✱F5  ↦  KeyboardLightDown]]></appendix>
        <appendix><![CDATA[✱F6  ↦  KeyboardLightUp]]></appendix>
        <appendix><![CDATA[✱F7  ↦  MusicPrev]]></appendix>
        <appendix><![CDATA[✱F8  ↦  MusicPlay]]></appendix>
        <appendix><![CDATA[✱F9  ↦  MusicNext]]></appendix>
        <appendix><![CDATA[✱F10 ↦  Mute]]></appendix>
        <appendix><![CDATA[✱F11 ↦  VolumeDown]]></appendix>
        <appendix><![CDATA[✱F12 ↦  VolumeUp]]></appendix>
        <appendix></appendix>
        <appendix>※Hint: Enable system settings: preference -> keyboard -> 'Use F1,F2,etc.. as standard function key'
        </appendix>
        <identifier>private.hyper-function</identifier>
        <!-- F1 -->
        <autogen>
            __KeyToKey__ KeyCode::F1, ModifierFlag::HYPER,
            ConsumerKeyCode::BRIGHTNESS_DOWN ,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- F2 -->
        <autogen>
            __KeyToKey__ KeyCode::F2, ModifierFlag::HYPER,
            ConsumerKeyCode::BRIGHTNESS_UP ,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- F3 -->
        <autogen>__KeyToKey__ KeyCode::F3, ModifierFlag::HYPER, KeyCode::EXPOSE_ALL</autogen>

        <!-- F4 -->
        <autogen>__KeyToKey__ KeyCode::F4, ModifierFlag::HYPER, KeyCode::LAUNCHPAD</autogen>

        <!-- F5 -->
        <autogen>
            __KeyToKey__ KeyCode::F5, ModifierFlag::HYPER,
            ConsumerKeyCode::KEYBOARDLIGHT_LOW ,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- F6 -->
        <autogen>
            __KeyToKey__ KeyCode::F6, ModifierFlag::HYPER,
            ConsumerKeyCode::KEYBOARDLIGHT_HIGH ,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- F7 -->
        <autogen>
            __KeyToKey__ KeyCode::F7, ModifierFlag::HYPER,
            ConsumerKeyCode::MUSIC_PREV
        </autogen>

        <!-- F8 -->
        <autogen>
            __KeyToKey__ KeyCode::F8, ModifierFlag::HYPER,
            ConsumerKeyCode::MUSIC_PLAY
        </autogen>

        <!-- F9 -->
        <autogen>
            __KeyToKey__ KeyCode::F9, ModifierFlag::HYPER,
            ConsumerKeyCode::MUSIC_NEXT
        </autogen>

        <!-- F10 -->
        <autogen>
            __KeyToKey__ KeyCode::F10, ModifierFlag::HYPER,
            ConsumerKeyCode::VOLUME_MUTE
        </autogen>

        <!-- F11 -->
        <autogen>
            __KeyToKey__ KeyCode::F11, ModifierFlag::HYPER,
            ConsumerKeyCode::VOLUME_DOWN,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- F12 -->
        <autogen>
            __KeyToKey__ KeyCode::F12, ModifierFlag::HYPER,
            ConsumerKeyCode::VOLUME_UP,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>
    </item>


    <!-- Hyper Shifter-->
    <item>
        <name>Hyper Shifter</name>
        <appendix>Maps hyper numkeys, minus, equal to corresponding punctuation.</appendix>
        <appendix>✱[12...-=] ↦ ⇧[12...-=] '!@..._+'</appendix>

        <appendix></appendix>
        <appendix>Maps square bracket to round breacket.</appendix>
        <appendix>✱[ ↦ ⇧9 '('</appendix>
        <appendix>✱] ↦ ⇧0 ')'</appendix>

        <identifier>private.hyper-shifter</identifier>

        <autogen>
            --KeyToKey--
            KeyCode::1, ModifierFlag::HYPER,
            KeyCode::1, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::2, ModifierFlag::HYPER,
            KeyCode::2, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::3, ModifierFlag::HYPER,
            KeyCode::3, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::4, ModifierFlag::HYPER,
            KeyCode::4, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::5, ModifierFlag::HYPER,
            KeyCode::5, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::6, ModifierFlag::HYPER,
            KeyCode::6, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::7, ModifierFlag::HYPER,
            KeyCode::7, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::8, ModifierFlag::HYPER,
            KeyCode::8, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::9, ModifierFlag::HYPER,
            KeyCode::9, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::0, ModifierFlag::HYPER,
            KeyCode::0, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::MINUS, ModifierFlag::HYPER,
            KeyCode::MINUS, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::EQUAL, ModifierFlag::HYPER,
            KeyCode::EQUAL, ModifierFlag::SHIFT_L
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::BRACKET_LEFT, ModifierFlag::HYPER,
            KeyCode::9 , ModifierFlag::SHIFT_R,
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::BRACKET_RIGHT, ModifierFlag::HYPER,
            KeyCode::0 , ModifierFlag::SHIFT_R,
        </autogen>

    </item>


    <!-- Hyper Special Control-->
    <item>
        <name>Hyper Special to fine grained functional keys</name>
        <appendix><![CDATA[✱Ins ↦ ⇧⌥F1  (Fine grained brightness down)]]></appendix>
        <appendix><![CDATA[✱Del ↦ ⇧⌥F2  (Fine grained brightness up)]]></appendix>
        <appendix><![CDATA[✱↘   ↦ ⇧⌥F5  (Fine grained keyboard light down)]]></appendix>
        <appendix><![CDATA[✱↖   ↦ ⇧⌥F6  (Fine grained keyboard light up)]]></appendix>
        <appendix><![CDATA[✱⇟   ↦ ⇧⌥F11 (Fine grained volume down)]]></appendix>
        <appendix><![CDATA[✱ ↦ ⇧⌥F12 (Fine grained volume up)]]></appendix>
        <appendix></appendix>
        <appendix><![CDATA[ScrollLock   ↦ VolumeMute (Mute)]]></appendix>
        <appendix><![CDATA[Pause        ↦ MusicPlay (Play)]]></appendix>


        <identifier>private.hyper-special</identifier>

        <!-- Brightness: Insert/Delete -->
        <autogen>
            __KeyToKey__ KeyCode::PC_INSERT, ModifierFlag::HYPER,
            ConsumerKeyCode::BRIGHTNESS_UP,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>
        <autogen>
            __KeyToKey__ KeyCode::PC_DEL, ModifierFlag::HYPER,
            ConsumerKeyCode::BRIGHTNESS_DOWN,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- Keyboard Light: Home/End -->
        <autogen>
            __KeyToKey__ KeyCode::HOME, ModifierFlag::HYPER,
            ConsumerKeyCode::KEYBOARDLIGHT_LOW,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>
        <autogen>
            __KeyToKey__ KeyCode::END, ModifierFlag::HYPER,
            ConsumerKeyCode::KEYBOARDLIGHT_HIGH,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>

        <!-- PgUp -->
        <autogen>
            __KeyToKey__ KeyCode::PAGEUP, ModifierFlag::HYPER,
            ConsumerKeyCode::VOLUME_UP,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>
        <autogen>
            __KeyToKey__ KeyCode::PAGEDOWN, ModifierFlag::HYPER,
            ConsumerKeyCode::VOLUME_DOWN,ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
        </autogen>


        <!--Scroll to mute -->
        <autogen>
            __KeyToKey__ KeyCode::PC_SCROLLLOCK, ModifierFlag::HYPER,
            ConsumerKeyCode::VOLUME_MUTE
        </autogen>

        <!--Pause to music_play-->
        <autogen>
            __KeyToKey__ KeyCode::PC_PAUSE, ModifierFlag::HYPER,
            ConsumerKeyCode::MUSIC_PLAY
        </autogen>

    </item>


    <!-- Hyper Mouse key -->
    <item>
        <name>Hyper MouseKey</name>
        <appendix><![CDATA[✱↑ ↦ MouseUp]]></appendix>
        <appendix><![CDATA[✱↓ ↦ MouseDown]]></appendix>
        <appendix><![CDATA[✱← ↦ MouseLeft]]></appendix>
        <appendix><![CDATA[✱→ ↦ MouseRight]]></appendix>
        <appendix><![CDATA[✱↩ ↦ MouseLButton]]></appendix>
        <appendix><![CDATA[✱\ ↦ MouseRButton]]></appendix>
        <identifier>private.hyper-mousekey</identifier>


        <autogen>
            --KeyToKey--
            KeyCode::CURSOR_UP, ModifierFlag::HYPER,
            KeyCode::VK_MOUSEKEY_UP
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::CURSOR_DOWN, ModifierFlag::HYPER,
            KeyCode::VK_MOUSEKEY_DOWN
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::CURSOR_LEFT, ModifierFlag::HYPER,
            KeyCode::VK_MOUSEKEY_LEFT
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::CURSOR_RIGHT, ModifierFlag::HYPER,
            KeyCode::VK_MOUSEKEY_RIGHT
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::RETURN, ModifierFlag::HYPER,
            KeyCode::VK_MOUSEKEY_BUTTON_LEFT
        </autogen>
        <autogen>
            --KeyToKey--
            KeyCode::BACKSLASH, ModifierFlag::HYPER,
            KeyCode::VK_MOUSEKEY_BUTTON_RIGHT
        </autogen>
    </item>


    <!-- Hyper Other -->
    <item>
        <name>Hyper Other</name>
        <appendix>Escape Hyper back to CapsLock</appendix>
        <appendix><![CDATA[✱⎋  ↦ ⇪    (CapsLock)]]></appendix>
        <appendix></appendix>
        <appendix>Hyper Space to Escape</appendix>
        <appendix><![CDATA[✱␢  ↦ ⎋    (Escape)]]></appendix>
        <appendix></appendix>
        <appendix><![CDATA[✱\  ↦ ⌃/   (Comment/Uncomment)]]></appendix>
        <appendix><![CDATA[✱`  ↦ ⌃⇧⌘4 (ScreenShot by area)]]></appendix>
        <appendix><![CDATA[✱⌘` ↦ ⌃⇧4  (ScreenShot by area to file)]]></appendix>
        <appendix><![CDATA[✱'  ↦ =    (Quote to equal)]]></appendix>

        <appendix></appendix>
        <appendix>Maps Hyper semicolon to lodash</appendix>
        <appendix>✱; ↦ ⇧- '_'</appendix>

        <identifier>private.hyper-other</identifier>

        <!-- ✱Escape to Capslock-->
        <autogen>__KeyToKey__ KeyCode::ESCAPE, ModifierFlag::HYPER, KeyCode::CAPSLOCK</autogen>

        <!-- ✱Space to Escape-->
        <autogen>
            --KeyToKey--
            KeyCode::SPACE, ModifierFlag::HYPER,
            KeyCode::ESCAPE
        </autogen>

        <!-- ✱Slash to comment -->
        <autogen>
            --KeyToKey--
            KeyCode::SLASH, ModifierFlag::HYPER,
            KeyCode::SLASH, ModifierFlag::COMMAND_L
        </autogen>


        <!-- ✱⌘` to area screenshot to file -->
        <autogen>
            --KeyToKey--
            KeyCode::BACKQUOTE, ModifierFlag::HYPER | ModifierFlag::COMMAND_L,
            KeyCode::4, ModifierFlag::SHIFT_L | ModifierFlag::COMMAND_L
        </autogen>

        <!-- ✱` to area screenshot -->
        <autogen>
            --KeyToKey--
            KeyCode::BACKQUOTE, ModifierFlag::HYPER,
            KeyCode::4, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L | ModifierFlag::COMMAND_L
        </autogen>


        <!-- ✱Quote to Equal -->
        <autogen>
            --KeyToKey--
            KeyCode::QUOTE, ModifierFlag::HYPER,
            KeyCode::EQUAL
        </autogen>

        <!-- ✱SemiColon to lodash -->
        <autogen>
            --KeyToKey--
            KeyCode::SEMICOLON, ModifierFlag::HYPER,
            KeyCode::MINUS , ModifierFlag::SHIFT_R,
        </autogen>
    </item>
</root>
Last modified 2021-03-13: update docs (8cf5bd7)