|
<?xml version="1.1" encoding="UTF-8"?> |
|
<!DOCTYPE keyboard SYSTEM "file://localhost/System/Library/DTDs/KeyboardLayout.dtd"> |
|
<!--Last edited by Ukelele version 359 on 2023-03-10 at 14:57 (GMT+3)--> |
|
<keyboard group="0" id="7773" name="Programmer Dvorak Testo" maxout="1"> |
|
<layouts> |
|
<layout first="0" last="6" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="7" last="9" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="10" last="10" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="11" last="11" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="12" last="12" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="13" last="13" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="14" last="15" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="16" last="16" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="17" last="17" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="18" last="19" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="20" last="20" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="21" last="21" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="22" last="28" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="29" last="29" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="30" last="30" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="31" last="31" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="32" last="32" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="33" last="33" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="34" last="34" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="35" last="35" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="36" last="36" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="37" last="37" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="38" last="38" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="39" last="39" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="40" last="40" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="41" last="41" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="42" last="42" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="43" last="44" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="194" last="194" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="195" last="195" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="196" last="196" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="197" last="197" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="198" last="198" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="199" last="199" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="200" last="201" mapSet="JIS" modifiers="modifiers"/> |
|
<layout first="202" last="202" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="203" last="203" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="204" last="204" mapSet="ANSI" modifiers="modifiers"/> |
|
<layout first="205" last="205" mapSet="ISO" modifiers="modifiers"/> |
|
<layout first="206" last="207" mapSet="JIS" modifiers="modifiers"/> |
|
</layouts> |
|
<modifierMap id="modifiers" defaultIndex="0"> |
|
<!-- no modifiers --> |
|
<keyMapSelect mapIndex="0"> |
|
<!-- shift --> |
|
<modifier keys=""/> |
|
</keyMapSelect> |
|
<keyMapSelect mapIndex="1"> |
|
<modifier keys="anyShift"/> |
|
<modifier keys="anyShift anyOption"/> |
|
</keyMapSelect> |
|
<keyMapSelect mapIndex="2"> |
|
<modifier keys="caps"/> |
|
</keyMapSelect> |
|
<keyMapSelect mapIndex="3"> |
|
<!-- option --> |
|
<modifier keys="anyShift caps"/> |
|
</keyMapSelect> |
|
<keyMapSelect mapIndex="4"> |
|
<!-- control + anything but command --> |
|
<modifier keys="caps anyOption"/> |
|
</keyMapSelect> |
|
<keyMapSelect mapIndex="5"> |
|
<modifier keys="anyShift? caps? anyOption? anyControl"/> |
|
</keyMapSelect> |
|
</modifierMap> |
|
<keyMapSet id="ANSI"> |
|
<keyMap index="0"> |
|
<!-- number row --> |
|
<!-- starred items are those that are different from Normal state --> |
|
<key code="0" action="a"/> |
|
<!-- left pinky --> |
|
<key code="1" action="o"/> |
|
<!-- left ring --> |
|
<key code="2" action="e"/> |
|
<!-- left middle --> |
|
<key code="3" action="u"/> |
|
<!-- left index 1 --> |
|
<key code="4" action="d"/> |
|
<!-- right index 2 --> |
|
<key code="5" action="i"/> |
|
<!-- left index 2 --> |
|
<key code="6" action="apostrophe"/> |
|
<!-- left pinky --> |
|
<key code="7" output="q"/> |
|
<!-- left ring --> |
|
<key code="8" action="j"/> |
|
<!-- left middle --> |
|
<key code="9" action="k"/> |
|
<!-- left index 1 --> |
|
<key code="10" action="compose"/> |
|
<key code="11" output="x"/> |
|
<!-- left index 2 --> |
|
<key code="12" action="semi"/> |
|
<!-- left pinky --> |
|
<key code="13" action="comma"/> |
|
<!-- left ring --> |
|
<key code="14" action="period"/> |
|
<!-- left middle --> |
|
<key code="15" output="p"/> |
|
<!-- left index 1 --> |
|
<key code="16" output="f"/> |
|
<!-- right index 2 --> |
|
<key code="17" action="y"/> |
|
<!-- left index 2 --> |
|
<key code="18" output="&"/> |
|
<!-- left pinky 2 --> |
|
<key code="19" output="["/> |
|
<!-- left pinky 1 --> |
|
<key code="20" output="{"/> |
|
<!-- left ring --> |
|
<key code="21" output="}"/> |
|
<!-- left middle --> |
|
<key code="22" output="="/> |
|
<!-- left index 2 --> |
|
<key code="23" action="lparen"/> |
|
<!-- left index 1 --> |
|
<key code="24" output="#"/> |
|
<!-- right pinky 2 --> |
|
<key code="25" output="+"/> |
|
<!-- right middle --> |
|
<key code="26" action="asterisk"/> |
|
<!-- right index 2 --> |
|
<key code="27" output="!"/> |
|
<!-- right pinky 1 --> |
|
<key code="28" output=")"/> |
|
<!-- right index 1 --> |
|
<key code="29" output="]"/> |
|
<!-- right ring --> |
|
<key code="30" action="at"/> |
|
<!-- right pinky 3 --> |
|
<!-- home row --> |
|
<!--key code="57" output=""/> <! Caps Lock --> |
|
<key code="31" action="r"/> |
|
<!-- right ring --> |
|
<key code="32" action="g"/> |
|
<!-- right index 1 --> |
|
<key code="33" action="slash"/> |
|
<!-- right pinky 2 --> |
|
<key code="34" action="c"/> |
|
<!-- right middle --> |
|
<key code="35" action="l"/> |
|
<!-- right pinky 1 --> |
|
<key code="36" output="
"/> |
|
<!-- Return --> |
|
<!-- bottom row --> |
|
<!--key code="56" output=""/> <! Left Shift --> |
|
<!-- even though this key is not here on actual ANSI keyboards |
|
we add a binding here for keyboards which physically have |
|
ISO layout but are mis-classified (VMware Fusion) |
|
--> |
|
<key code="37" action="n"/> |
|
<!-- right ring --> |
|
<key code="38" action="h"/> |
|
<!-- right index 1 --> |
|
<key code="39" output="-"/> |
|
<!-- right pinky 2 --> |
|
<key code="40" action="t"/> |
|
<!-- right middle --> |
|
<key code="41" action="s"/> |
|
<!-- right pinky 1 --> |
|
<key code="42" output="\"/> |
|
<!-- right pinky 3 --> |
|
<key code="43" output="w"/> |
|
<!-- right middle --> |
|
<key code="44" action="z"/> |
|
<!-- right pinky --> |
|
<!--key code="60" output=""/> <! Right Shift --> |
|
<!-- numpad --> |
|
<key code="45" output="b"/> |
|
<!-- right index 2 --> |
|
<key code="46" action="m"/> |
|
<!-- right index 1 --> |
|
<key code="47" output="v"/> |
|
<!-- right ring --> |
|
<key code="48" output="	"/> |
|
<!-- Tab --> |
|
<key code="49" action="space"/> |
|
<!-- Spacebar --> |
|
<!--key code="54" output=""/> <! Right Command --> |
|
<!--key code="61" output=""/> <! Right Option --> |
|
<!--key code="110" output=""/> <! Contextual Menu --> |
|
<!--key code="62" output=""/> <! Right Control --> |
|
<!-- function row --> |
|
<key code="50" output="$"/> |
|
<!-- left pinky 3 --> |
|
<key code="51" output=""/> |
|
<!-- Backspace --> |
|
<!-- top row --> |
|
<key code="53" output=""/> |
|
<!-- Esc --> |
|
<key code="55" output=""/> |
|
<key code="57" output=""/> |
|
<key code="64" output=""/> |
|
<key code="65" output="."/> |
|
<!-- Decimal Sep. --> |
|
<!-- modifiers --> |
|
<!--key code="59" output=""/> <! Left Control --> |
|
<!--key code="58" output=""/> <! Left Option --> |
|
<!--key code="55" output=""/> <! Left Command --> |
|
<key code="66" output=""/> |
|
<key code="67" output="-"/> |
|
<!-- Num * --> |
|
<key code="69" output="+"/> |
|
<!-- Num + --> |
|
<key code="70" output=""/> |
|
<key code="71" output=""/> |
|
<!-- Num Lock --> |
|
<key code="72" output=""/> |
|
<key code="75" output="*"/> |
|
<!-- Num / --> |
|
<key code="76" output=""/> |
|
<!-- Enter --> |
|
<key code="77" output=""/> |
|
<key code="78" output="+"/> |
|
<!-- Num - --> |
|
<key code="79" output=""/> |
|
<key code="80" output=""/> |
|
<key code="81" output="/"/> |
|
<!-- Num = --> |
|
<key code="82" output="0"/> |
|
<!-- Num 0 --> |
|
<key code="83" output="7"/> |
|
<!-- Num 1 --> |
|
<key code="84" output="8"/> |
|
<!-- Num 2 --> |
|
<key code="85" output="9"/> |
|
<!-- Num 3 --> |
|
<key code="86" output="4"/> |
|
<!-- Num 4 --> |
|
<key code="87" output="5"/> |
|
<!-- Num 5 --> |
|
<key code="88" output="6"/> |
|
<!-- Num 6 --> |
|
<key code="89" output="1"/> |
|
<!-- Num 7 --> |
|
<key code="91" output="2"/> |
|
<!-- Num 8 --> |
|
<key code="92" output="3"/> |
|
<!-- Num 9 --> |
|
<key code="96" output=""/> |
|
<!-- F5 --> |
|
<key code="97" output=""/> |
|
<!-- F6 --> |
|
<key code="98" output=""/> |
|
<!-- F7 --> |
|
<key code="99" output=""/> |
|
<!-- F3 --> |
|
<key code="100" output=""/> |
|
<!-- F8 --> |
|
<key code="101" output=""/> |
|
<!-- F9 --> |
|
<key code="103" output=""/> |
|
<!-- F11 --> |
|
<key code="105" output=""/> |
|
<!-- PrtScn --> |
|
<key code="106" output=""/> |
|
<key code="107" output=""/> |
|
<!-- ScrLk --> |
|
<key code="109" output=""/> |
|
<!-- F10 --> |
|
<key code="111" output=""/> |
|
<!-- F12 --> |
|
<key code="113" output=""/> |
|
<!-- Pause --> |
|
<!-- navigation and control keys --> |
|
<key code="114" output=""/> |
|
<!-- Ins --> |
|
<key code="115" output=""/> |
|
<!-- Home --> |
|
<key code="116" output=""/> |
|
<!-- PgUp --> |
|
<key code="117" output=""/> |
|
<!-- Del --> |
|
<key code="118" output=""/> |
|
<!-- F4 --> |
|
<key code="119" output=""/> |
|
<!-- End --> |
|
<key code="120" output=""/> |
|
<!-- F2 --> |
|
<key code="121" output=""/> |
|
<!-- PgDn --> |
|
<!-- arrow keys --> |
|
<key code="122" output=""/> |
|
<!-- F1 --> |
|
<key code="123" output=""/> |
|
<!-- Left --> |
|
<key code="124" output=""/> |
|
<!-- Right --> |
|
<key code="125" output=""/> |
|
<!-- Down --> |
|
<key code="126" output=""/> |
|
<!-- Up --> |
|
</keyMap> |
|
<keyMap index="1"> |
|
<!-- number row --> |
|
<!-- keys that are not affected by Caps Lock are marked with + --> |
|
<key code="0" action="A"/> |
|
<!-- left pinky --> |
|
<key code="1" action="O"/> |
|
<!-- left ring --> |
|
<key code="2" action="E"/> |
|
<!-- left middle --> |
|
<key code="3" action="U"/> |
|
<!-- left index 1 --> |
|
<key code="4" action="D"/> |
|
<!-- right index 2 --> |
|
<key code="5" action="I"/> |
|
<!-- left index 2 --> |
|
<key code="6" action="quote"/> |
|
<!-- left pinky --> |
|
<key code="7" output="Q"/> |
|
<!-- left ring --> |
|
<key code="8" action="J"/> |
|
<!-- left middle --> |
|
<key code="9" action="K"/> |
|
<!-- left index 1 --> |
|
<key code="10" action="compose"/> |
|
<key code="11" output="X"/> |
|
<!-- left index 2 --> |
|
<key code="12" action="colon"/> |
|
<!-- left pinky --> |
|
<key code="13" action="less"/> |
|
<!-- left ring --> |
|
<key code="14" action="greater"/> |
|
<!-- left middle --> |
|
<key code="15" output="P"/> |
|
<!-- left index 1 --> |
|
<key code="16" output="F"/> |
|
<!-- right index 2 --> |
|
<key code="17" output="Y"/> |
|
<!-- left index 2 --> |
|
<key code="18" output="%"/> |
|
<!-- left pinky 2 --> |
|
<key code="19" output="7"/> |
|
<!-- left pinky 1 --> |
|
<key code="20" output="5"/> |
|
<!-- left ring --> |
|
<key code="21" output="3"/> |
|
<!-- left middle --> |
|
<key code="22" output="9"/> |
|
<!-- left index 2 --> |
|
<key code="23" output="1"/> |
|
<!-- left index 1 --> |
|
<key code="24" action="backquote"/> |
|
<!-- right pinky 2 --> |
|
<key code="25" output="4"/> |
|
<!-- right middle --> |
|
<key code="26" action="zero 1"/> |
|
<!-- right index 2 --> |
|
<key code="27" output="8"/> |
|
<!-- right pinky 1 --> |
|
<key code="28" output="2"/> |
|
<!-- right index 1 --> |
|
<key code="29" output="6"/> |
|
<!-- right ring --> |
|
<key code="30" action="caret"/> |
|
<!-- right pinky 3 --> |
|
<!-- home row --> |
|
<!--key code="57" output=""/> <! Caps Lock --> |
|
<!--*--> |
|
<key code="31" action="R"/> |
|
<!-- right ring --> |
|
<key code="32" action="G"/> |
|
<!-- right index 1 --> |
|
<key code="33" output="?"/> |
|
<!-- right pinky 2 --> |
|
<key code="34" action="C"/> |
|
<!-- right middle --> |
|
<key code="35" action="L"/> |
|
<!-- right pinky 1 --> |
|
<key code="36" output="
"/> |
|
<!-- Return --> |
|
<!--*--> |
|
<!-- bottom row --> |
|
<!--key code="56" output=""/> <! Left Shift --> |
|
<!--*--> |
|
<!-- compose action is not affected by Shift; allows us to |
|
prematurely press the modifier before hitting the next |
|
key without altering the outcome |
|
--> |
|
<key code="37" action="N"/> |
|
<!-- right ring --> |
|
<key code="38" action="H"/> |
|
<!-- right index 1 --> |
|
<key code="39" output="_"/> |
|
<!-- right pinky 2 --> |
|
<key code="40" action="T"/> |
|
<!-- right middle --> |
|
<key code="41" action="S"/> |
|
<!-- right pinky 1 --> |
|
<key code="42" output="|"/> |
|
<!-- right pinky 3 --> |
|
<key code="43" output="W"/> |
|
<!-- right middle --> |
|
<key code="44" action="Z"/> |
|
<!-- right pinky --> |
|
<!--key code="60" output=""/> <! Right Shift --> |
|
<!--*--> |
|
<!-- numpad --> |
|
<key code="45" output="B"/> |
|
<!-- right index 2 --> |
|
<key code="46" action="M"/> |
|
<!-- right index 1 --> |
|
<key code="47" output="V"/> |
|
<!-- right ring --> |
|
<key code="48" output="	"/> |
|
<!-- Tab --> |
|
<!--*--> |
|
<key code="49" action="space"/> |
|
<!-- Spacebar --> |
|
<!--key code="54" output=""/> <! Right Command --> |
|
<!--key code="61" output=""/> <! Right Option --> |
|
<!--key code="110" output=""/> <! Contextual Menu --> |
|
<!--key code="62" output=""/> <! Right Control --> |
|
<!-- function row --> |
|
<!--*--> |
|
<key code="50" action="tilde"/> |
|
<!-- left pinky 3 --> |
|
<key code="51" output=""/> |
|
<!-- Backspace --> |
|
<!--*--> |
|
<!-- top row --> |
|
<key code="53" output=""/> |
|
<!-- Esc --> |
|
<key code="64" output=""/> |
|
<key code="65" output=";"/> |
|
<!-- Decimal Sep. --> |
|
<!-- modifiers --> |
|
<!--*--> |
|
<!--key code="59" output=""/> <! Left Control --> |
|
<!--key code="58" output=""/> <! Left Option --> |
|
<!--key code="55" output=""/> <! Left Command --> |
|
<key code="66" output=""/> |
|
<key code="67" output="$"/> |
|
<!-- Num * --> |
|
<key code="69" output=","/> |
|
<!-- Num + --> |
|
<key code="70" output=""/> |
|
<key code="71" output=""/> |
|
<!-- Num Lock --> |
|
<!--*--> |
|
<key code="72" output=""/> |
|
<key code="75" output=")"/> |
|
<!-- Num / --> |
|
<key code="76" output=""/> |
|
<!-- Enter --> |
|
<!--*--> |
|
<key code="77" output=""/> |
|
<key code="78" output=","/> |
|
<!-- Num - --> |
|
<key code="79" output=""/> |
|
<key code="80" output=""/> |
|
<key code="81" output="("/> |
|
<!-- Num = --> |
|
<key code="82" output="\"/> |
|
<!-- Num 0 --> |
|
<key code="83" output="="/> |
|
<!-- Num 1 --> |
|
<key code="84" output="x"/> |
|
<!-- Num 2 --> |
|
<key code="85" output=":"/> |
|
<!-- Num 3 --> |
|
<key code="86" output="D"/> |
|
<!-- Num 4 --> |
|
<key code="87" output="E"/> |
|
<!-- Num 5 --> |
|
<key code="88" output="F"/> |
|
<!-- Num 6 --> |
|
<key code="89" output="A"/> |
|
<!-- Num 7 --> |
|
<key code="91" output="B"/> |
|
<!-- Num 8 --> |
|
<key code="92" output="C"/> |
|
<!-- Num 9 --> |
|
<key code="96" output=""/> |
|
<!-- F5 --> |
|
<key code="97" output=""/> |
|
<!-- F6 --> |
|
<key code="98" output=""/> |
|
<!-- F7 --> |
|
<key code="99" output=""/> |
|
<!-- F3 --> |
|
<key code="100" output=""/> |
|
<!-- F8 --> |
|
<key code="101" output=""/> |
|
<!-- F9 --> |
|
<key code="103" output=""/> |
|
<!-- F11 --> |
|
<key code="105" output=""/> |
|
<!-- PrtScn --> |
|
<key code="106" output=""/> |
|
<key code="107" output=""/> |
|
<!-- ScrLk --> |
|
<key code="109" output=""/> |
|
<!-- F10 --> |
|
<key code="111" output=""/> |
|
<!-- F12 --> |
|
<key code="113" output=""/> |
|
<!-- Pause --> |
|
<!-- navigation and control keys --> |
|
<!--*--> |
|
<key code="114" output=""/> |
|
<!-- Ins --> |
|
<key code="115" output=""/> |
|
<!-- Home --> |
|
<key code="116" output=""/> |
|
<!-- PgUp --> |
|
<key code="117" output=""/> |
|
<!-- Del --> |
|
<key code="118" output=""/> |
|
<!-- F4 --> |
|
<key code="119" output=""/> |
|
<!-- End --> |
|
<key code="120" output=""/> |
|
<!-- F2 --> |
|
<key code="121" output=""/> |
|
<!-- PgDn --> |
|
<!-- arrow keys --> |
|
<!--*--> |
|
<key code="122" output=""/> |
|
<!-- F1 --> |
|
<key code="123" output=""/> |
|
<!-- Left --> |
|
<key code="124" output=""/> |
|
<!-- Right --> |
|
<key code="125" output=""/> |
|
<!-- Down --> |
|
<key code="126" output=""/> |
|
<!-- Up --> |
|
</keyMap> |
|
<keyMap index="2"> |
|
<!-- number row --> |
|
<!-- those keys that are unaffected by Caps Lock (marked with at) should |
|
behave as in the regular shift map; the others are cancelled by the |
|
Shift modifier. thus, this map is a copy of the normal map, with |
|
those keys marked as unaffected in the caps map replaced with the |
|
value from the shift map --> |
|
<key code="0" action="A"/> |
|
<!-- left pinky --> |
|
<key code="1" action="O"/> |
|
<!-- left ring --> |
|
<key code="2" action="E"/> |
|
<!-- left middle --> |
|
<key code="3" action="U"/> |
|
<!-- left index 1 --> |
|
<key code="4" action="D"/> |
|
<!-- right index 2 --> |
|
<key code="5" action="I"/> |
|
<!-- left index 2 --> |
|
<key code="6" action="apostrophe"/> |
|
<!-- left pinky --> |
|
<!--+--> |
|
<key code="7" output="Q"/> |
|
<!-- left ring --> |
|
<key code="8" action="J"/> |
|
<!-- left middle --> |
|
<key code="9" action="K"/> |
|
<!-- left index 1 --> |
|
<key code="10" action="compose"/> |
|
<key code="11" output="X"/> |
|
<!-- left index 2 --> |
|
<key code="12" action="semi"/> |
|
<!-- left pinky --> |
|
<!--+--> |
|
<key code="13" action="comma"/> |
|
<!-- left ring --> |
|
<!--+--> |
|
<key code="14" action="period"/> |
|
<!-- left middle --> |
|
<!--+--> |
|
<key code="15" output="P"/> |
|
<!-- left index 1 --> |
|
<key code="16" output="F"/> |
|
<!-- right index 2 --> |
|
<key code="17" output="Y"/> |
|
<!-- left index 2 --> |
|
<key code="18" output="1"/> |
|
<!-- left pinky 2 --> |
|
<!--+--> |
|
<key code="19" output="2"/> |
|
<!-- left pinky 1 --> |
|
<key code="20" output="3"/> |
|
<!-- left ring --> |
|
<key code="21" output="4"/> |
|
<!-- left middle --> |
|
<key code="22" output="6"/> |
|
<!-- left index 2 --> |
|
<key code="23" output="5"/> |
|
<!-- left index 1 --> |
|
<key code="24" output="#"/> |
|
<!-- right pinky 2 --> |
|
<!--+--> |
|
<key code="25" output="9"/> |
|
<!-- right middle --> |
|
<key code="26" action="zero"/> |
|
<!-- right index 2 --> |
|
<key code="27" output="&"/> |
|
<!-- right pinky 1 --> |
|
<key code="28" output="8"/> |
|
<!-- right index 1 --> |
|
<key code="29" output="0"/> |
|
<!-- right ring --> |
|
<key code="30" action="at"/> |
|
<!-- right pinky 3 --> |
|
<!--+--> |
|
<!-- home row --> |
|
<!--key code="57" output=""/> <! Caps Lock --> |
|
<key code="31" action="R"/> |
|
<!-- right ring --> |
|
<key code="32" action="G"/> |
|
<!-- right index 1 --> |
|
<key code="33" action="slash"/> |
|
<!-- right pinky 2 --> |
|
<!--+--> |
|
<key code="34" action="C"/> |
|
<!-- right middle --> |
|
<key code="35" action="L"/> |
|
<!-- right pinky 1 --> |
|
<key code="36" output="
"/> |
|
<!-- Return --> |
|
<!-- bottom row --> |
|
<!--key code="56" output=""/> <! Left Shift --> |
|
<key code="37" action="N"/> |
|
<!-- right ring --> |
|
<key code="38" action="H"/> |
|
<!-- right index 1 --> |
|
<key code="39" output="_"/> |
|
<!-- right pinky 2 --> |
|
<key code="40" action="T"/> |
|
<!-- right middle --> |
|
<key code="41" action="S"/> |
|
<!-- right pinky 1 --> |
|
<key code="42" output="\"/> |
|
<!-- right pinky 3 --> |
|
<!--+--> |
|
<key code="43" output="W"/> |
|
<!-- right middle --> |
|
<key code="44" action="Z"/> |
|
<!-- right pinky --> |
|
<!--key code="60" output=""/> <! Right Shift --> |
|
<!-- numpad --> |
|
<!--+--> |
|
<key code="45" output="B"/> |
|
<!-- right index 2 --> |
|
<key code="46" action="M"/> |
|
<!-- right index 1 --> |
|
<key code="47" output="V"/> |
|
<!-- right ring --> |
|
<key code="48" output="	"/> |
|
<!-- Tab --> |
|
<key code="49" action="space"/> |
|
<!-- Spacebar --> |
|
<!--key code="54" output=""/> <! Right Command --> |
|
<!--key code="61" output=""/> <! Right Option --> |
|
<!--key code="110" output=""/> <! Contextual Menu --> |
|
<!--key code="62" output=""/> <! Right Control --> |
|
<!-- function row --> |
|
<key code="50" output="$"/> |
|
<!-- left pinky 3 --> |
|
<!--+--> |
|
<key code="51" output=""/> |
|
<!-- Backspace --> |
|
<!-- top row --> |
|
<key code="53" output=""/> |
|
<!-- Esc --> |
|
<key code="64" output=""/> |
|
<key code="65" output="."/> |
|
<!-- Decimal Sep. --> |
|
<!-- modifiers --> |
|
<!--key code="59" output=""/> <! Left Control --> |
|
<!--key code="58" output=""/> <! Left Option --> |
|
<!--key code="55" output=""/> <! Left Command --> |
|
<key code="66" output=""/> |
|
<key code="67" output="-"/> |
|
<!-- Num * --> |
|
<key code="69" output="+"/> |
|
<!-- Num + --> |
|
<key code="70" output=""/> |
|
<key code="71" output=""/> |
|
<!-- Num Lock --> |
|
<key code="72" output=""/> |
|
<key code="75" output="*"/> |
|
<!-- Num / --> |
|
<key code="76" output=""/> |
|
<!-- Enter --> |
|
<key code="77" output=""/> |
|
<key code="78" output="+"/> |
|
<!-- Num - --> |
|
<key code="79" output=""/> |
|
<key code="80" output=""/> |
|
<key code="81" output="/"/> |
|
<!-- Num = --> |
|
<key code="82" output="0"/> |
|
<!-- Num 0 --> |
|
<key code="83" output="7"/> |
|
<!-- Num 1 --> |
|
<key code="84" output="8"/> |
|
<!-- Num 2 --> |
|
<key code="85" output="9"/> |
|
<!-- Num 3 --> |
|
<key code="86" output="4"/> |
|
<!-- Num 4 --> |
|
<key code="87" output="5"/> |
|
<!-- Num 5 --> |
|
<key code="88" output="6"/> |
|
<!-- Num 6 --> |
|
<key code="89" output="1"/> |
|
<!-- Num 7 --> |
|
<key code="91" output="2"/> |
|
<!-- Num 8 --> |
|
<key code="92" output="3"/> |
|
<!-- Num 9 --> |
|
<key code="96" output=""/> |
|
<!-- F5 --> |
|
<key code="97" output=""/> |
|
<!-- F6 --> |
|
<key code="98" output=""/> |
|
<!-- F7 --> |
|
<key code="99" output=""/> |
|
<!-- F3 --> |
|
<key code="100" output=""/> |
|
<!-- F8 --> |
|
<key code="101" output=""/> |
|
<!-- F9 --> |
|
<key code="103" output=""/> |
|
<!-- F11 --> |
|
<key code="105" output=""/> |
|
<!-- PrtScn --> |
|
<key code="106" output=""/> |
|
<key code="107" output=""/> |
|
<!-- ScrLk --> |
|
<key code="109" output=""/> |
|
<!-- F10 --> |
|
<key code="111" output=""/> |
|
<!-- F12 --> |
|
<key code="113" output=""/> |
|
<!-- Pause --> |
|
<!-- navigation and control keys --> |
|
<key code="114" output=""/> |
|
<!-- Ins --> |
|
<key code="115" output=""/> |
|
<!-- Home --> |
|
<key code="116" output=""/> |
|
<!-- PgUp --> |
|
<key code="117" output=""/> |
|
<!-- Del --> |
|
<key code="118" output=""/> |
|
<!-- F4 --> |
|
<key code="119" output=""/> |
|
<!-- End --> |
|
<key code="120" output=""/> |
|
<!-- F2 --> |
|
<key code="121" output=""/> |
|
<!-- PgDn --> |
|
<!-- arrow keys --> |
|
<key code="122" output=""/> |
|
<!-- F1 --> |
|
<key code="123" output=""/> |
|
<!-- Left --> |
|
<key code="124" output=""/> |
|
<!-- Right --> |
|
<key code="125" output=""/> |
|
<!-- Down --> |
|
<key code="126" output=""/> |
|
<!-- Up --> |
|
</keyMap> |
|
<keyMap index="3"> |
|
<!-- number row --> |
|
<!-- option, a.k.a. Alt Graph. starred entries indicate that they |
|
effectively unassigned and return the value of the normal map --> |
|
<key code="0" action="a"/> |
|
<!-- left pinky --> |
|
<key code="1" action="o"/> |
|
<!-- left ring --> |
|
<key code="2" action="e"/> |
|
<!-- left middle --> |
|
<key code="3" action="u"/> |
|
<!-- left index 1 --> |
|
<key code="4" action="d"/> |
|
<!-- right index 2 --> |
|
<key code="5" action="i"/> |
|
<!-- left index 2 --> |
|
<key code="6" action="quote"/> |
|
<!-- left pinky --> |
|
<!--@--> |
|
<key code="7" output="q"/> |
|
<!-- left ring --> |
|
<key code="8" action="j"/> |
|
<!-- left middle --> |
|
<key code="9" action="k"/> |
|
<!-- left index 1 --> |
|
<key code="10" action="compose"/> |
|
<key code="11" output="x"/> |
|
<!-- left index 2 --> |
|
<key code="12" action="colon"/> |
|
<!-- left pinky --> |
|
<!--@--> |
|
<key code="13" action="less"/> |
|
<!-- left ring --> |
|
<!--@--> |
|
<key code="14" action="greater"/> |
|
<!-- left middle --> |
|
<!--@--> |
|
<key code="15" output="p"/> |
|
<!-- left index 1 --> |
|
<key code="16" output="f"/> |
|
<!-- right index 2 --> |
|
<key code="17" action="y"/> |
|
<!-- left index 2 --> |
|
<key code="18" output="%"/> |
|
<!-- left pinky 2 --> |
|
<!--@--> |
|
<key code="19" output="["/> |
|
<!-- left pinky 1 --> |
|
<key code="20" output="{"/> |
|
<!-- left ring --> |
|
<key code="21" output="}"/> |
|
<!-- left middle --> |
|
<key code="22" output="="/> |
|
<!-- left index 2 --> |
|
<key code="23" action="lparen"/> |
|
<!-- left index 1 --> |
|
<key code="24" action="backquote"/> |
|
<!-- right pinky 2 --> |
|
<!--@--> |
|
<key code="25" output="+"/> |
|
<!-- right middle --> |
|
<key code="26" action="asterisk"/> |
|
<!-- right index 2 --> |
|
<key code="27" output="!"/> |
|
<!-- right pinky 1 --> |
|
<key code="28" output=")"/> |
|
<!-- right index 1 --> |
|
<key code="29" output="]"/> |
|
<!-- right ring --> |
|
<key code="30" action="caret"/> |
|
<!-- right pinky 3 --> |
|
<!--@--> |
|
<!-- home row --> |
|
<!--key code="57" output=""/> <! Caps Lock --> |
|
<key code="31" action="r"/> |
|
<!-- right ring --> |
|
<key code="32" action="g"/> |
|
<!-- right index 1 --> |
|
<key code="33" output="?"/> |
|
<!-- right pinky 2 --> |
|
<!--@--> |
|
<key code="34" action="c"/> |
|
<!-- right middle --> |
|
<key code="35" action="l"/> |
|
<!-- right pinky 1 --> |
|
<key code="36" output="
"/> |
|
<!-- Return --> |
|
<!-- bottom row --> |
|
<!--key code="56" output=""/> <! Left Shift --> |
|
<!-- even though this key is not here on actual ANSI keyboards |
|
we add a binding here for keyboards which physically have |
|
ISO layout but are mis-classified (VMware Fusion) |
|
--> |
|
<key code="37" action="n"/> |
|
<!-- right ring --> |
|
<key code="38" action="h"/> |
|
<!-- right index 1 --> |
|
<key code="39" output="-"/> |
|
<!-- right pinky 2 --> |
|
<key code="40" action="t"/> |
|
<!-- right middle --> |
|
<key code="41" action="s"/> |
|
<!-- right pinky 1 --> |
|
<key code="42" output="|"/> |
|
<!-- right pinky 3 --> |
|
<!--@--> |
|
<key code="43" output="w"/> |
|
<!-- right middle --> |
|
<key code="44" action="z"/> |
|
<!-- right pinky --> |
|
<!--key code="60" output=""/> <! Right Shift --> |
|
<!-- numpad --> |
|
<key code="45" output="b"/> |
|
<!-- right index 2 --> |
|
<key code="46" action="m"/> |
|
<!-- right index 1 --> |
|
<key code="47" output="v"/> |
|
<!-- right ring --> |
|
<key code="48" output="	"/> |
|
<!-- Tab --> |
|
<key code="49" action="space"/> |
|
<!-- Spacebar --> |
|
<!--key code="54" output=""/> <! Right Command --> |
|
<!--key code="61" output=""/> <! Right Option --> |
|
<!--key code="110" output=""/> <! Contextual Menu --> |
|
<!--key code="62" output=""/> <! Right Control --> |
|
<!-- function row --> |
|
<key code="50" action="tilde"/> |
|
<!-- left pinky 3 --> |
|
<!--@--> |
|
<key code="51" output=""/> |
|
<!-- Backspace --> |
|
<!-- top row --> |
|
<key code="53" output=""/> |
|
<!-- Esc --> |
|
<key code="64" output=""/> |
|
<key code="65" output="."/> |
|
<!-- Decimal Sep. --> |
|
<!-- modifiers --> |
|
<!--key code="59" output=""/> <! Left Control --> |
|
<!--key code="58" output=""/> <! Left Option --> |
|
<!--key code="55" output=""/> <! Left Command --> |
|
<key code="66" output=""/> |
|
<key code="67" output="-"/> |
|
<!-- Num * --> |
|
<key code="69" output="+"/> |
|
<!-- Num + --> |
|
<key code="70" output=""/> |
|
<key code="71" output=""/> |
|
<!-- Num Lock --> |
|
<key code="72" output=""/> |
|
<key code="75" output="*"/> |
|
<!-- Num / --> |
|
<key code="76" output=""/> |
|
<!-- Enter --> |
|
<key code="77" output=""/> |
|
<key code="78" output="+"/> |
|
<!-- Num - --> |
|
<key code="79" output=""/> |
|
<key code="80" output=""/> |
|
<key code="81" output="/"/> |
|
<!-- Num = --> |
|
<key code="82" output="0"/> |
|
<!-- Num 0 --> |
|
<key code="83" output="7"/> |
|
<!-- Num 1 --> |
|
<key code="84" output="8"/> |
|
<!-- Num 2 --> |
|
<key code="85" output="9"/> |
|
<!-- Num 3 --> |
|
<key code="86" output="4"/> |
|
<!-- Num 4 --> |
|
<key code="87" output="5"/> |
|
<!-- Num 5 --> |
|
<key code="88" output="6"/> |
|
<!-- Num 6 --> |
|
<key code="89" output="1"/> |
|
<!-- Num 7 --> |
|
<key code="91" output="2"/> |
|
<!-- Num 8 --> |
|
<key code="92" output="3"/> |
|
<!-- Num 9 --> |
|
<key code="96" output=""/> |
|
<!-- F5 --> |
|
<key code="97" output=""/> |
|
<!-- F6 --> |
|
<key code="98" output=""/> |
|
<!-- F7 --> |
|
<key code="99" output=""/> |
|
<!-- F3 --> |
|
<key code="100" output=""/> |
|
<!-- F8 --> |
|
<key code="101" output=""/> |
|
<!-- F9 --> |
|
<key code="103" output=""/> |
|
<!-- F11 --> |
|
<key code="105" output=""/> |
|
<!-- PrtScn --> |
|
<key code="106" output=""/> |
|
<key code="107" output=""/> |
|
<!-- ScrLk --> |
|
<key code="109" output=""/> |
|
<!-- F10 --> |
|
<key code="111" output=""/> |
|
<!-- F12 --> |
|
<key code="113" output=""/> |
|
<!-- Pause --> |
|
<!-- navigation and control keys --> |
|
<key code="114" output=""/> |
|
<!-- Ins --> |
|
<key code="115" output=""/> |
|
<!-- Home --> |
|
<key code="116" output=""/> |
|
<!-- PgUp --> |
|
<key code="117" output=""/> |
|
<!-- Del --> |
|
<key code="118" output=""/> |
|
<!-- F4 --> |
|
<key code="119" output=""/> |
|
<!-- End --> |
|
<key code="120" output=""/> |
|
<!-- F2 --> |
|
<key code="121" output=""/> |
|
<!-- PgDn --> |
|
<!-- arrow keys --> |
|
<key code="122" output=""/> |
|
<!-- F1 --> |
|
<key code="123" output=""/> |
|
<!-- Left --> |
|
<key code="124" output=""/> |
|
<!-- Right --> |
|
<key code="125" output=""/> |
|
<!-- Down --> |
|
<key code="126" output=""/> |
|
<!-- Up --> |
|
</keyMap> |
|
<keyMap index="4"> |
|
<key code="0" output="Å"/> |
|
<!-- left pinky --> |
|
<key code="1" output="Ø"/> |
|
<!-- left ring --> |
|
<key code="2" output="Æ"/> |
|
<!-- left middle --> |
|
<key code="3" output="É"/> |
|
<!-- left index 1 --> |
|
<key code="4" output="Ð"/> |
|
<!-- right index 2 --> |
|
<key code="5" action="i"/> |
|
<!-- left index 2 --> |
|
<!--*--> |
|
<key code="6" action="acute"/> |
|
<!-- left pinky --> |
|
<!--@--> |
|
<key code="7" output="q"/> |
|
<!-- left ring --> |
|
<!--*--> |
|
<key code="8" action="j"/> |
|
<!-- left middle --> |
|
<!--*--> |
|
<key code="9" action="k"/> |
|
<!-- left index 1 --> |
|
<!--*--> |
|
<key code="10" action="compose"/> |
|
<!--*--> |
|
<key code="11" output="x"/> |
|
<!-- left index 2 --> |
|
<!--*--> |
|
<key code="12" action="diaeresis"/> |
|
<!-- left pinky --> |
|
<!--@--> |
|
<key code="13" output="«"/> |
|
<!-- left ring --> |
|
<!--+--> |
|
<key code="14" output="»"/> |
|
<!-- left middle --> |
|
<!--+--> |
|
<key code="15" output="¶"/> |
|
<!-- left index 1 --> |
|
<!--+--> |
|
<key code="16" output="f"/> |
|
<!-- right index 2 --> |
|
<!--*--> |
|
<key code="17" output="Ü"/> |
|
<!-- left index 2 --> |
|
<key code="18" output="&"/> |
|
<!-- left pinky 2 --> |
|
<!--*--> |
|
<key code="19" output="¤"/> |
|
<!-- left pinky 1 --> |
|
<!--@--> |
|
<key code="20" output="¢"/> |
|
<!-- left ring --> |
|
<!--@--> |
|
<key code="21" output="¥"/> |
|
<!-- left middle --> |
|
<!--@--> |
|
<key code="22" output="£"/> |
|
<!-- left index 2 --> |
|
<!--@--> |
|
<key code="23" output="€"/> |
|
<!-- left index 1 --> |
|
<!--@--> |
|
<key code="24" action="grave"/> |
|
<!-- right pinky 2 --> |
|
<!--@--> |
|
<key code="25" output="+"/> |
|
<!-- right middle --> |
|
<!--*--> |
|
<key code="26" action="asterisk"/> |
|
<!-- right index 2 --> |
|
<!--*--> |
|
<key code="27" output="¡"/> |
|
<!-- right pinky 1 --> |
|
<!--@--> |
|
<key code="28" output="½"/> |
|
<!-- right index 1 --> |
|
<!--@--> |
|
<key code="29" output="]"/> |
|
<!-- right ring --> |
|
<!--*--> |
|
<key code="30" action="circum"/> |
|
<!-- right pinky 3 --> |
|
<!-- home row --> |
|
<!--key code="57" output=""/> <! Caps Lock --> |
|
<key code="31" output="®"/> |
|
<!-- right ring --> |
|
<key code="32" output=""/> |
|
<!-- right index 1 --> |
|
<!--greek--> |
|
<key code="33" output="¿"/> |
|
<!-- right pinky 2 --> |
|
<!--@--> |
|
<key code="34" output="Ç"/> |
|
<!-- right middle --> |
|
<key code="35" action="l"/> |
|
<!-- right pinky 1 --> |
|
<!--*--> |
|
<key code="36" output="
"/> |
|
<!-- Return --> |
|
<!--*--> |
|
<!-- bottom row --> |
|
<!--key code="56" output=""/> <! Left Shift --> |
|
<!-- even though this key is not here on actual ANSI keyboards |
|
we add a binding here for keyboards which physically have |
|
ISO layout but are mis-classified (VMware Fusion) |
|
--> |
|
<key code="37" output="Ñ"/> |
|
<!-- right ring --> |
|
<key code="38" action="acute"/> |
|
<!-- right index 1 --> |
|
<!--@--> |
|
<key code="39" output="-"/> |
|
<!-- right pinky 2 --> |
|
<!--*--> |
|
<key code="40" output="Þ"/> |
|
<!-- right middle --> |
|
<key code="41" output="ß"/> |
|
<!-- right pinky 1 --> |
|
<!--@--> |
|
<key code="42" output="\"/> |
|
<!-- right pinky 3 --> |
|
<!--*--> |
|
<key code="43" output="w"/> |
|
<!-- right middle --> |
|
<!--*--> |
|
<key code="44" action="z"/> |
|
<!-- right pinky --> |
|
<!--*--> |
|
<!--key code="60" output=""/> <! Right Shift --> |
|
<!-- numpad --> |
|
<key code="45" output="b"/> |
|
<!-- right index 2 --> |
|
<!--*--> |
|
<key code="46" output=""/> |
|
<!-- right index 1 --> |
|
<!--math--> |
|
<key code="47" output="v"/> |
|
<!-- right ring --> |
|
<!--*--> |
|
<key code="48" output="	"/> |
|
<!-- Tab --> |
|
<!--*--> |
|
<key code="49" action="space"/> |
|
<!-- Spacebar --> |
|
<!--key code="54" output=""/> <! Right Command --> |
|
<!--key code="61" output=""/> <! Right Option --> |
|
<!--key code="110" output=""/> <! Contextual Menu --> |
|
<!--key code="62" output=""/> <! Right Control --> |
|
<!-- function row --> |
|
<key code="50" action="nasal"/> |
|
<!-- left pinky 3 --> |
|
<!--@--> |
|
<key code="51" output=""/> |
|
<!-- Backspace --> |
|
<!--*--> |
|
<!-- top row --> |
|
<key code="53" output=""/> |
|
<!-- Esc --> |
|
<key code="64" output=""/> |
|
<key code="65" output="."/> |
|
<!-- Decimal Sep. --> |
|
<!-- modifiers --> |
|
<!--key code="59" output=""/> <! Left Control --> |
|
<!--key code="58" output=""/> <! Left Option --> |
|
<!--key code="55" output=""/> <! Left Command --> |
|
<key code="66" output=""/> |
|
<key code="67" output="-"/> |
|
<!-- Num * --> |
|
<key code="69" output="+"/> |
|
<!-- Num + --> |
|
<key code="70" output=""/> |
|
<key code="71" output=""/> |
|
<!-- Num Lock --> |
|
<key code="72" output=""/> |
|
<key code="75" output="*"/> |
|
<!-- Num / --> |
|
<key code="76" output=""/> |
|
<!-- Enter --> |
|
<key code="77" output=""/> |
|
<key code="78" output="+"/> |
|
<!-- Num - --> |
|
<key code="79" output=""/> |
|
<key code="80" output=""/> |
|
<key code="81" output="/"/> |
|
<!-- Num = --> |
|
<key code="82" output="0"/> |
|
<!-- Num 0 --> |
|
<key code="83" output="7"/> |
|
<!-- Num 1 --> |
|
<key code="84" output="8"/> |
|
<!-- Num 2 --> |
|
<key code="85" output="9"/> |
|
<!-- Num 3 --> |
|
<key code="86" output="4"/> |
|
<!-- Num 4 --> |
|
<key code="87" output="5"/> |
|
<!-- Num 5 --> |
|
<key code="88" output="6"/> |
|
<!-- Num 6 --> |
|
<key code="89" output="1"/> |
|
<!-- Num 7 --> |
|
<key code="91" output="2"/> |
|
<!-- Num 8 --> |
|
<key code="92" output="3"/> |
|
<!-- Num 9 --> |
|
<key code="96" output=""/> |
|
<!-- F5 --> |
|
<key code="97" output=""/> |
|
<!-- F6 --> |
|
<key code="98" output=""/> |
|
<!-- F7 --> |
|
<key code="99" output=""/> |
|
<!-- F3 --> |
|
<key code="100" output=""/> |
|
<!-- F8 --> |
|
<key code="101" output=""/> |
|
<!-- F9 --> |
|
<key code="103" output=""/> |
|
<!-- F11 --> |
|
<key code="105" output=""/> |
|
<!-- PrtScn --> |
|
<key code="106" output=""/> |
|
<key code="107" output=""/> |
|
<!-- ScrLk --> |
|
<key code="109" output=""/> |
|
<!-- F10 --> |
|
<key code="111" output=""/> |
|
<!-- F12 --> |
|
<key code="113" output=""/> |
|
<!-- Pause --> |
|
<!-- navigation and control keys --> |
|
<key code="114" output=""/> |
|
<!-- Ins --> |
|
<key code="115" output=""/> |
|
<!-- Home --> |
|
<key code="116" output=""/> |
|
<!-- PgUp --> |
|
<key code="117" output=""/> |
|
<!-- Del --> |
|
<key code="118" output=""/> |
|
<!-- F4 --> |
|
<key code="119" output=""/> |
|
<!-- End --> |
|
<key code="120" output=""/> |
|
<!-- F2 --> |
|
<key code="121" output=""/> |
|
<!-- PgDn --> |
|
<!-- arrow keys --> |
|
<key code="122" output=""/> |
|
<!-- F1 --> |
|
<key code="123" output=""/> |
|
<!-- Left --> |
|
<key code="124" output=""/> |
|
<!-- Right --> |
|
<key code="125" output=""/> |
|
<!-- Down --> |
|
<key code="126" output=""/> |
|
<!-- Up --> |
|
</keyMap> |
|
<keyMap index="5"> |
|
<!-- number row --> |
|
<key code="0" output=""/> |
|
<!-- ctrl-A --> |
|
<key code="1" output=""/> |
|
<!-- ctrl-O --> |
|
<key code="2" output=""/> |
|
<!-- ctrl-E --> |
|
<key code="3" output=""/> |
|
<!-- ctrl-U --> |
|
<key code="4" output=""/> |
|
<!-- ctrl-D --> |
|
<key code="5" output="	"/> |
|
<!-- ctrl-I --> |
|
<key code="6" output=""/> |
|
<key code="7" output=""/> |
|
<!-- ctrl-Q --> |
|
<key code="8" output="
"/> |
|
<!-- ctrl-J --> |
|
<key code="9" output=""/> |
|
<!-- ctrl-K --> |
|
<key code="11" output=""/> |
|
<!-- ctrl-X --> |
|
<key code="12" output=""/> |
|
<key code="13" output=""/> |
|
<key code="14" output=""/> |
|
<key code="15" output=""/> |
|
<!-- ctrl-P --> |
|
<key code="16" output=""/> |
|
<!-- ctrl-F --> |
|
<key code="17" output=""/> |
|
<!-- ctrl-Y --> |
|
<key code="18" output=""/> |
|
<key code="19" output=""/> |
|
<!-- ctrl-[ --> |
|
<key code="20" output=""/> |
|
<key code="21" output=""/> |
|
<key code="22" output=""/> |
|
<key code="23" output=""/> |
|
<key code="24" output=""/> |
|
<key code="25" output=""/> |
|
<key code="26" output=""/> |
|
<key code="27" output=""/> |
|
<key code="28" output=""/> |
|
<key code="29" output=""/> |
|
<!-- ctrl-] --> |
|
<key code="30" output=""/> |
|
<!-- ctrl-@ --> |
|
<!-- home row --> |
|
<key code="31" output=""/> |
|
<!-- ctrl-R --> |
|
<key code="32" output=""/> |
|
<!-- ctrl-G --> |
|
<key code="33" output=""/> |
|
<key code="34" output=""/> |
|
<!-- ctrl-C --> |
|
<key code="35" output=""/> |
|
<!-- ctrl-L --> |
|
<key code="36" output="
"/> |
|
<key code="37" output=""/> |
|
<!-- ctrl-N --> |
|
<key code="38" output=""/> |
|
<!-- ctrl-H --> |
|
<key code="39" output=""/> |
|
<!-- ctrl-_ --> |
|
<key code="40" output=""/> |
|
<!-- ctrl-T --> |
|
<key code="41" output=""/> |
|
<!-- ctrl-S --> |
|
<key code="42" output=""/> |
|
<!-- ctrl-\ --> |
|
<!-- bottom row --> |
|
<key code="43" output=""/> |
|
<!-- ctrl-W --> |
|
<key code="44" output=""/> |
|
<!-- ctrl-Z --> |
|
<key code="45" output=""/> |
|
<!-- ctrl-B --> |
|
<key code="46" output="
"/> |
|
<!-- ctrl-M --> |
|
<key code="47" output=""/> |
|
<!-- ctrl-V --> |
|
<key code="48" output="	"/> |
|
<key code="49" output=""/> |
|
<key code="51" output=""/> |
|
<!-- ctrl-Backspace --> |
|
<!-- top row --> |
|
<key code="53" output=""/> |
|
<key code="64" output=""/> |
|
<key code="65" output=""/> |
|
<key code="66" output=""/> |
|
<key code="67" output=""/> |
|
<key code="69" output=""/> |
|
<key code="70" output=""/> |
|
<key code="71" output=""/> |
|
<key code="72" output=""/> |
|
<key code="75" output=""/> |
|
<key code="76" output=""/> |
|
<key code="77" output=""/> |
|
<key code="78" output=""/> |
|
<key code="79" output=""/> |
|
<key code="80" output=""/> |
|
<key code="81" output=""/> |
|
<key code="82" output=""/> |
|
<key code="83" output=""/> |
|
<key code="84" output=""/> |
|
<key code="85" output=""/> |
|
<key code="86" output=""/> |
|
<key code="87" output=""/> |
|
<key code="88" output=""/> |
|
<key code="89" output=""/> |
|
<key code="91" output=""/> |
|
<key code="92" output=""/> |
|
<key code="96" output=""/> |
|
<key code="97" output=""/> |
|
<key code="98" output=""/> |
|
<key code="99" output=""/> |
|
<key code="100" output=""/> |
|
<key code="101" output=""/> |
|
<key code="103" output=""/> |
|
<key code="105" output=""/> |
|
<key code="106" output=""/> |
|
<key code="107" output=""/> |
|
<key code="109" output=""/> |
|
<key code="111" output=""/> |
|
<key code="113" output=""/> |
|
<key code="114" output=""/> |
|
<key code="115" output=""/> |
|
<key code="116" output=""/> |
|
<key code="117" output=""/> |
|
<key code="118" output=""/> |
|
<key code="119" output=""/> |
|
<key code="120" output=""/> |
|
<key code="121" output=""/> |
|
<key code="122" output=""/> |
|
<key code="123" output=""/> |
|
<key code="124" output=""/> |
|
<key code="125" output=""/> |
|
<key code="126" output=""/> |
|
</keyMap> |
|
</keyMapSet> |
|
<keyMapSet id="ISO"> |
|
<keyMap index="0" baseMapSet="ANSI" baseIndex="0"> |
|
<key code="10" output="$"/> |
|
<key code="50" action="compose"/> |
|
<key code="94" action="compose"/> |
|
<!-- ABNT kbds only --> |
|
</keyMap> |
|
<keyMap index="1" baseMapSet="ANSI" baseIndex="1"> |
|
<key code="10" action="tilde"/> |
|
<key code="50" action="compose"/> |
|
<key code="94" action="compose"/> |
|
<!-- ABNT kbds only --> |
|
</keyMap> |
|
<keyMap index="2" baseMapSet="ANSI" baseIndex="2"> |
|
<key code="10" output="$"/> |
|
<key code="50" action="compose"/> |
|
<key code="94" action="compose"/> |
|
<!-- ABNT kbds only --> |
|
</keyMap> |
|
<keyMap index="3" baseMapSet="ANSI" baseIndex="3"> |
|
<key code="10" action="tilde"/> |
|
<key code="50" action="compose"/> |
|
<key code="94" action="compose"/> |
|
<!-- ABNT kbds only --> |
|
</keyMap> |
|
<keyMap index="4" baseMapSet="ANSI" baseIndex="4"> |
|
<key code="10" action="nasal"/> |
|
<key code="50" action="compose"/> |
|
<key code="94" action="compose"/> |
|
<!-- ABNT kbds only --> |
|
</keyMap> |
|
<keyMap index="5" baseMapSet="ANSI" baseIndex="5"> |
|
<key code="10" output="$"/> |
|
<key code="50" action="compose"/> |
|
<key code="94" action="compose"/> |
|
<!-- ABNT kbds only --> |
|
</keyMap> |
|
</keyMapSet> |
|
<keyMapSet id="JIS"> |
|
<keyMap index="0" baseMapSet="ANSI" baseIndex="0"> |
|
<key code="93" output=""/> |
|
<!-- Yen --> |
|
<key code="94" output=""/> |
|
<!-- Underscore --> |
|
<key code="95" output=""/> |
|
<!-- Keypad Comma --> |
|
<key code="102" output=""/> |
|
<!-- Switch to Eisu --> |
|
<key code="104" output=""/> |
|
<!-- Switch to Kana --> |
|
</keyMap> |
|
<keyMap index="1" baseMapSet="ANSI" baseIndex="1"> |
|
<key code="93" output=""/> |
|
<!-- Yen --> |
|
<key code="94" output=""/> |
|
<!-- Underscore --> |
|
<key code="95" output=""/> |
|
<!-- Keypad Comma --> |
|
<key code="102" output=""/> |
|
<!-- Switch to Eisu --> |
|
<key code="104" output=""/> |
|
<!-- Switch to Kana --> |
|
</keyMap> |
|
<keyMap index="2" baseMapSet="ANSI" baseIndex="2"> |
|
<key code="93" output=""/> |
|
<!-- Yen --> |
|
<key code="94" output=""/> |
|
<!-- Underscore --> |
|
<key code="95" output=""/> |
|
<!-- Keypad Comma --> |
|
<key code="102" output=""/> |
|
<!-- Switch to Eisu --> |
|
<key code="104" output=""/> |
|
<!-- Switch to Kana --> |
|
</keyMap> |
|
<keyMap index="3" baseMapSet="ANSI" baseIndex="3"> |
|
<key code="93" output=""/> |
|
<!-- Yen --> |
|
<key code="94" output=""/> |
|
<!-- Underscore --> |
|
<key code="95" output=""/> |
|
<!-- Keypad Comma --> |
|
<key code="102" output=""/> |
|
<!-- Switch to Eisu --> |
|
<key code="104" output=""/> |
|
<!-- Switch to Kana --> |
|
</keyMap> |
|
<keyMap index="4" baseMapSet="ANSI" baseIndex="4"> |
|
<key code="93" output=""/> |
|
<!-- Yen --> |
|
<key code="94" output=""/> |
|
<!-- Underscore --> |
|
<key code="95" output=""/> |
|
<!-- Keypad Comma --> |
|
<key code="102" output=""/> |
|
<!-- Switch to Eisu --> |
|
<key code="104" output=""/> |
|
<!-- Switch to Kana --> |
|
</keyMap> |
|
<keyMap index="5" baseMapSet="ANSI" baseIndex="5"> |
|
<key code="93" output=""/> |
|
<!-- Yen --> |
|
<key code="94" output=""/> |
|
<!-- Underscore --> |
|
<key code="95" output=""/> |
|
<!-- Keypad Comma --> |
|
<key code="102" output=""/> |
|
<!-- Switch to Eisu --> |
|
<key code="104" output=""/> |
|
<!-- Switch to Kana --> |
|
</keyMap> |
|
</keyMapSet> |
|
<actions> |
|
<action id="A"> |
|
<when state="none" output="A"/> |
|
<when state="acute" output="Á"/> |
|
<when state="alig" output="Å"/> |
|
<when state="circum" output="Â"/> |
|
<when state="compose" next="alig"/> |
|
<when state="diaeresis" output="Ä"/> |
|
<when state="grave" output="À"/> |
|
<when state="macron" output="Ā"/> |
|
<when state="nasal" output="Ã"/> |
|
<when state="ring" output="Å"/> |
|
</action> |
|
<action id="C"> |
|
<when state="none" output="C"/> |
|
<when state="cedilla" output="Ç"/> |
|
<when state="compose" next="caron"/> |
|
</action> |
|
<action id="D"> |
|
<when state="none" output="D"/> |
|
<when state="compose" next="eth"/> |
|
</action> |
|
<action id="E"> |
|
<when state="none" output="E"/> |
|
<when state="acute" output="É"/> |
|
<when state="alig" output="Æ"/> |
|
<when state="circum" output="Ê"/> |
|
<when state="diaeresis" output="Ë"/> |
|
<when state="grave" output="È"/> |
|
</action> |
|
<action id="G"> |
|
<when state="none" output="G"/> |
|
</action> |
|
<action id="H"> |
|
<when state="none" output="H"/> |
|
</action> |
|
<action id="I"> |
|
<when state="none" output="I"/> |
|
<when state="acute" output="Í"/> |
|
<when state="circum" output="Î"/> |
|
<when state="diaeresis" output="Ï"/> |
|
<when state="grave" output="Ì"/> |
|
</action> |
|
<action id="J"> |
|
<when state="none" output="J"/> |
|
</action> |
|
<action id="K"> |
|
<when state="none" output="K"/> |
|
</action> |
|
<action id="L"> |
|
<when state="none" output="L"/> |
|
</action> |
|
<action id="M"> |
|
<when state="none" output="M"/> |
|
<when state="thorn" output="™"/> |
|
</action> |
|
<action id="N"> |
|
<when state="none" output="N"/> |
|
<when state="nasal" output="Ñ"/> |
|
</action> |
|
<action id="O"> |
|
<when state="none" output="O"/> |
|
<when state="acute" output="Ó"/> |
|
<when state="caron" output="©"/> |
|
<when state="circum" output="Ô"/> |
|
<when state="compose" next="ring"/> |
|
<when state="diaeresis" output="Ö"/> |
|
<when state="grave" output="Ò"/> |
|
<when state="nasal" output="Õ"/> |
|
<when state="stroke" output="Ø"/> |
|
</action> |
|
<action id="R"> |
|
<when state="none" output="R"/> |
|
</action> |
|
<action id="S"> |
|
<when state="none" output="S"/> |
|
<when state="compose" next="ssharp"/> |
|
<when state="dot" output="Ș"/> |
|
</action> |
|
<action id="T"> |
|
<when state="none" output="T"/> |
|
<when state="compose" next="thorn"/> |
|
<when state="dot" output="Ț"/> |
|
</action> |
|
<action id="U"> |
|
<when state="none" output="U"/> |
|
<when state="acute" output="Ú"/> |
|
<when state="circum" output="Û"/> |
|
<when state="diaeresis" output="Ü"/> |
|
<when state="grave" output="Ù"/> |
|
</action> |
|
<action id="Y"> |
|
<when state="none" output="Y"/> |
|
<when state="acute" output="Ý"/> |
|
</action> |
|
<action id="Z"> |
|
<when state="none" output="Z"/> |
|
</action> |
|
<action id="a"> |
|
<when state="none" output="a"/> |
|
<when state="acute" output="á"/> |
|
<when state="alig" output="å"/> |
|
<when state="circum" output="â"/> |
|
<when state="compose" next="alig"/> |
|
<when state="diaeresis" output="ä"/> |
|
<when state="grave" output="à"/> |
|
<when state="macron" output="ā"/> |
|
<when state="nasal" output="ã"/> |
|
<when state="ring" output="å"/> |
|
</action> |
|
<action id="acute"> |
|
<when state="none" next="acute"/> |
|
</action> |
|
<action id="apostrophe"> |
|
<when state="none" output="'"/> |
|
<when state="compose" next="acute"/> |
|
<when state="greater" output="’"/> |
|
<when state="less" output="‘"/> |
|
</action> |
|
<action id="asterisk"> |
|
<when state="none" output="*"/> |
|
<when state="compose" next="ring"/> |
|
</action> |
|
<action id="at"> |
|
<when state="none" output="@"/> |
|
<when state="compose" next="alig"/> |
|
</action> |
|
<action id="backquote"> |
|
<when state="none" output="`"/> |
|
<when state="compose" next="grave"/> |
|
</action> |
|
<action id="breve"> |
|
<when state="none" next="breve"/> |
|
</action> |
|
<action id="c"> |
|
<when state="none" output="c"/> |
|
<when state="cedilla" output="ç"/> |
|
<when state="compose" next="caron"/> |
|
</action> |
|
<action id="caret"> |
|
<when state="none" output="^"/> |
|
<when state="compose" next="circum"/> |
|
</action> |
|
<action id="circum"> |
|
<when state="none" next="circum"/> |
|
</action> |
|
<action id="colon"> |
|
<when state="none" output=":"/> |
|
<when state="compose" next="diaeresis"/> |
|
</action> |
|
<action id="comma"> |
|
<when state="none" output=","/> |
|
<when state="compose" next="cedilla"/> |
|
</action> |
|
<action id="compose"> |
|
<when state="none" next="compose"/> |
|
</action> |
|
<action id="d"> |
|
<when state="none" output="d"/> |
|
<when state="compose" next="eth"/> |
|
</action> |
|
<action id="dash"> |
|
<when state="none" output="-"/> |
|
<when state="compose" next="macron"/> |
|
<when state="dot" output="·"/> |
|
</action> |
|
<action id="diaeresis"> |
|
<when state="none" next="diaeresis"/> |
|
</action> |
|
<action id="e"> |
|
<when state="none" output="e"/> |
|
<when state="acute" output="é"/> |
|
<when state="alig" output="æ"/> |
|
<when state="circum" output="ê"/> |
|
<when state="diaeresis" output="ë"/> |
|
<when state="grave" output="è"/> |
|
</action> |
|
<action id="g"> |
|
<when state="none" output="g"/> |
|
</action> |
|
<action id="grave"> |
|
<when state="none" next="grave"/> |
|
</action> |
|
<action id="greater"> |
|
<when state="none" output=">"/> |
|
<when state="acute" output="’"/> |
|
<when state="compose" next="greater"/> |
|
<when state="diaeresis" output="”"/> |
|
</action> |
|
<!-- dead key actions; go straight to a state and wait for key --> |
|
<action id="h"> |
|
<when state="none" output="h"/> |
|
</action> |
|
<action id="i"> |
|
<when state="none" output="i"/> |
|
<when state="acute" output="í"/> |
|
<when state="circum" output="î"/> |
|
<when state="diaeresis" output="ï"/> |
|
<when state="grave" output="ì"/> |
|
</action> |
|
<action id="j"> |
|
<when state="none" output="j"/> |
|
</action> |
|
<action id="k"> |
|
<when state="none" output="k"/> |
|
</action> |
|
<action id="l"> |
|
<when state="none" output="l"/> |
|
</action> |
|
<action id="less"> |
|
<when state="none" output="<"/> |
|
<when state="acute" output="‘"/> |
|
<when state="compose" next="less"/> |
|
<when state="diaeresis" output="“"/> |
|
</action> |
|
<action id="lparen"> |
|
<when state="none" output="("/> |
|
<when state="compose" next="breve"/> |
|
</action> |
|
<action id="m"> |
|
<when state="none" output="m"/> |
|
</action> |
|
<action id="n"> |
|
<when state="none" output="n"/> |
|
<when state="nasal" output="ñ"/> |
|
</action> |
|
<action id="nasal"> |
|
<when state="none" next="nasal"/> |
|
</action> |
|
<!-- same as the terminator table below --> |
|
<action id="o"> |
|
<when state="none" output="o"/> |
|
<when state="acute" output="ó"/> |
|
<when state="caron" output="©"/> |
|
<when state="circum" output="ô"/> |
|
<when state="compose" next="ring"/> |
|
<when state="diaeresis" output="ö"/> |
|
<when state="grave" output="ò"/> |
|
<when state="nasal" output="õ"/> |
|
<when state="stroke" output="ø"/> |
|
</action> |
|
<action id="period"> |
|
<when state="none" output="."/> |
|
<when state="compose" next="dot"/> |
|
<when state="dot" output="…"/> |
|
</action> |
|
<action id="quote"> |
|
<when state="none" output="""/> |
|
<when state="compose" next="diaeresis"/> |
|
<when state="greater" output="”"/> |
|
<when state="less" output="“"/> |
|
</action> |
|
<action id="r"> |
|
<when state="none" output="r"/> |
|
</action> |
|
<action id="s"> |
|
<when state="none" output="s"/> |
|
<when state="compose" next="ssharp"/> |
|
<when state="dot" output="ș"/> |
|
</action> |
|
<action id="semi"> |
|
<when state="none" output=";"/> |
|
<when state="compose" next="diaeresis"/> |
|
</action> |
|
<action id="slash"> |
|
<when state="none" output="/"/> |
|
<when state="compose" next="stroke"/> |
|
</action> |
|
<action id="space"> |
|
<when state="none" output=" "/> |
|
<when state="acute" output="´"/> |
|
<when state="alig" output="a"/> |
|
<when state="breve" output="("/> |
|
<when state="caron" output="c"/> |
|
<when state="cedilla" output="¸"/> |
|
<when state="circum" output="ˆ"/> |
|
<when state="diaeresis" output="¨"/> |
|
<when state="dot" output="."/> |
|
<when state="eth" output="e"/> |
|
<when state="grave" output="`"/> |
|
<when state="greater" output=">"/> |
|
<when state="less" output="<"/> |
|
<when state="macron" output="-"/> |
|
<when state="nasal" output="˜"/> |
|
<when state="ring" output="o"/> |
|
<when state="ssharp" output="s"/> |
|
<when state="stroke" output="/"/> |
|
<when state="thorn" output="t"/> |
|
</action> |
|
<action id="t"> |
|
<when state="none" output="t"/> |
|
<when state="compose" next="thorn"/> |
|
<when state="dot" output="ț"/> |
|
</action> |
|
<action id="tilde"> |
|
<when state="none" output="~"/> |
|
<when state="compose" next="nasal"/> |
|
</action> |
|
<action id="u"> |
|
<when state="none" output="u"/> |
|
<when state="acute" output="ú"/> |
|
<when state="circum" output="û"/> |
|
<when state="diaeresis" output="ü"/> |
|
<when state="grave" output="ù"/> |
|
</action> |
|
<action id="y"> |
|
<when state="none" output="y"/> |
|
<when state="acute" output="ý"/> |
|
<when state="diaeresis" output="ÿ"/> |
|
</action> |
|
<action id="z"> |
|
<when state="none" output="z"/> |
|
</action> |
|
<action id="zero"> |
|
<when state="none" output="7"/> |
|
<when state="stroke" output="∞"/> |
|
</action> |
|
<action id="zero 1"> |
|
<when state="none" output="0"/> |
|
<when state="stroke" output="∞"/> |
|
</action> |
|
</actions> |
|
<terminators> |
|
<when state="acute" output="´"/> |
|
<when state="alig" output="a"/> |
|
<when state="breve" output="˘"/> |
|
<when state="caron" output="c"/> |
|
<when state="cedilla" output="¸"/> |
|
<when state="circum" output="ˆ"/> |
|
<when state="compose" output=""/> |
|
<when state="diaeresis" output="¨"/> |
|
<when state="dot" output="˙"/> |
|
<when state="eth" output="d"/> |
|
<when state="grave" output="`"/> |
|
<when state="greater" output=">"/> |
|
<when state="less" output="<"/> |
|
<when state="macron" output="-"/> |
|
<when state="nasal" output="˜"/> |
|
<when state="ring" output="o"/> |
|
<when state="ssharp" output="s"/> |
|
<when state="stroke" output="/"/> |
|
<when state="thorn" output="t"/> |
|
</terminators> |
|
</keyboard> |