Skip to content

Instantly share code, notes, and snippets.

@erdnuesse
Created February 13, 2020 18:23
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save erdnuesse/19ff1cd1235b4d91f4f15f126df43393 to your computer and use it in GitHub Desktop.
Save erdnuesse/19ff1cd1235b4d91f4f15f126df43393 to your computer and use it in GitHub Desktop.
Deutsches Keyboardlayout für Windows Tastaturen auf OSX.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE keyboard PUBLIC "" "file://localhost/System/Library/DTDs/KeyboardLayout.dtd">
<keyboard group="0" id="4711" name="Win DE" maxout="1">
<layouts>
<layout first="0" last="17" modifiers="Modifiers" mapSet="ANSI"/>
<layout first="18" last="18" modifiers="Modifiers" mapSet="JIS"/>
<layout first="21" last="23" modifiers="Modifiers" mapSet="JIS"/>
<layout first="30" last="30" modifiers="Modifiers" mapSet="JIS"/>
<layout first="33" last="33" modifiers="Modifiers" mapSet="JIS"/>
<layout first="36" last="36" modifiers="Modifiers" mapSet="JIS"/>
<layout first="194" last="194" modifiers="Modifiers" mapSet="JIS"/>
<layout first="197" last="197" modifiers="Modifiers" mapSet="JIS"/>
<layout first="200" last="201" modifiers="Modifiers" mapSet="JIS"/>
<layout first="206" last="207" modifiers="Modifiers" mapSet="JIS"/>
</layouts>
<modifierMap id="Modifiers" defaultIndex="0">
<keyMapSelect mapIndex="0">
<modifier keys=""/>
</keyMapSelect>
<keyMapSelect mapIndex="1">
<modifier keys="anyShift caps?"/>
</keyMapSelect>
<keyMapSelect mapIndex="2">
<modifier keys="anyOption"/>
</keyMapSelect>
<keyMapSelect mapIndex="3">
<modifier keys="caps"/>
</keyMapSelect>
<keyMapSelect mapIndex="4">
<modifier keys="anyShift caps? anyOption"/>
</keyMapSelect>
</modifierMap>
<keyMapSet id="ANSI">
<keyMap index="0">
<key code="0" output="a"/>
<key code="1" output="s"/>
<key code="2" output="d"/>
<key code="3" output="f"/>
<key code="4" output="h"/>
<key code="5" output="g"/>
<key code="6" output="y"/>
<key code="7" output="x"/>
<key code="8" output="c"/>
<key code="9" output="v"/>
<key code="50" output="^"/>
<key code="11" output="b"/>
<key code="12" output="q"/>
<key code="13" output="w"/>
<key code="14" output="e"/>
<key code="15" output="r"/>
<key code="16" output="z"/>
<key code="17" output="t"/>
<key code="18" output="1"/>
<key code="19" output="2"/>
<key code="20" output="3"/>
<key code="21" output="4"/>
<key code="22" output="6"/>
<key code="23" output="5"/>
<key code="24" output="´"/>
<key code="25" output="9"/>
<key code="26" output="7"/>
<key code="27" output="ß"/>
<key code="28" output="8"/>
<key code="29" output="0"/>
<key code="30" output="+"/>
<key code="31" output="o"/>
<key code="32" output="u"/>
<key code="33" output="ü"/>
<key code="34" output="i"/>
<key code="35" output="p"/>
<key code="36" output="&#x000D;"/>
<key code="37" output="l"/>
<key code="38" output="j"/>
<key code="39" output="ä"/>
<key code="40" output="k"/>
<key code="41" output="ö"/>
<key code="42" output="#"/>
<key code="43" output=","/>
<key code="44" output="-"/>
<key code="45" output="n"/>
<key code="46" output="m"/>
<key code="47" output="."/>
<key code="48" output="&#x0009;"/>
<key code="49" output=" "/>
<key code="10" output="&#x003C;"/>
<key code="51" output="&#x0008;"/>
<key code="52" output="&#x0003;"/>
<key code="53" output="&#x001B;"/>
<key code="64" output="&#x0010;"/>
<key code="65" output=","/>
<key code="66" output="&#x001D;"/>
<key code="67" output="*"/>
<key code="69" output="+"/>
<key code="70" output="&#x001C;"/>
<key code="71" output="&#x001B;"/>
<key code="72" output="&#x001F;"/>
<key code="75" output="/"/>
<key code="76" output="&#x0003;"/>
<key code="77" output="&#x001E;"/>
<key code="78" output="-"/>
<key code="79" output="&#x0010;"/>
<key code="80" output="&#x0010;"/>
<key code="82" output="0"/>
<key code="83" output="1"/>
<key code="84" output="2"/>
<key code="85" output="3"/>
<key code="86" output="4"/>
<key code="87" output="5"/>
<key code="88" output="6"/>
<key code="89" output="7"/>
<key code="91" output="8"/>
<key code="92" output="9"/>
<key code="96" output="&#x0010;"/>
<key code="97" output="&#x0010;"/>
<key code="98" output="&#x0010;"/>
<key code="99" output="&#x0010;"/>
<key code="100" output="&#x0010;"/>
<key code="101" output="&#x0010;"/>
<key code="103" output="&#x0010;"/>
<key code="105" output="&#x0010;"/>
<key code="106" output="&#x0010;"/>
<key code="107" output="&#x0010;"/>
<key code="109" output="&#x0010;"/>
<key code="111" output="&#x0010;"/>
<key code="113" output="&#x0010;"/>
<key code="114" output="&#x0005;"/>
<key code="115" output="&#x0001;"/>
<key code="116" output="&#x000B;"/>
<key code="117" output="&#x007F;"/>
<key code="118" output="&#x0010;"/>
<key code="119" output="&#x0004;"/>
<key code="120" output="&#x0010;"/>
<key code="121" output="&#x000C;"/>
<key code="122" output="&#x0010;"/>
<key code="123" output="&#x001C;"/>
<key code="124" output="&#x001D;"/>
<key code="125" output="&#x001F;"/>
<key code="126" output="&#x001E;"/>
</keyMap>
<keyMap index="1">
<key code="0" output="A"/>
<key code="1" output="S"/>
<key code="2" output="D"/>
<key code="3" output="F"/>
<key code="4" output="H"/>
<key code="5" output="G"/>
<key code="6" output="Y"/>
<key code="7" output="X"/>
<key code="8" output="C"/>
<key code="9" output="V"/>
<key code="50" output="°"/>
<key code="11" output="B"/>
<key code="12" output="Q"/>
<key code="13" output="W"/>
<key code="14" output="E"/>
<key code="15" output="R"/>
<key code="16" output="Z"/>
<key code="17" output="T"/>
<key code="18" output="!"/>
<key code="19" output="&#x0022;"/>
<key code="20" output="§"/>
<key code="21" output="$"/>
<key code="22" output="&#x0026;"/>
<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="="/>
<key code="30" output="*"/>
<key code="31" output="O"/>
<key code="32" output="U"/>
<key code="33" output="Ü"/>
<key code="34" output="I"/>
<key code="35" output="P"/>
<key code="36" output="&#x000D;"/>
<key code="37" output="L"/>
<key code="38" output="J"/>
<key code="39" output="Ä"/>
<key code="40" output="K"/>
<key code="41" output="Ö"/>
<key code="42" output="&#x0027;"/>
<key code="43" output=";"/>
<key code="44" output="_"/>
<key code="45" output="N"/>
<key code="46" output="M"/>
<key code="47" output=":"/>
<key code="48" output="&#x0009;"/>
<key code="49" output=" "/>
<key code="10" output="&#x003E;"/>
<key code="51" output="&#x0008;"/>
<key code="52" output="&#x0003;"/>
<key code="53" output="&#x001B;"/>
<key code="64" output="&#x0010;"/>
<key code="66" output="&#x001D;"/>
<key code="70" output="&#x001C;"/>
<key code="71" output="&#x001B;"/>
<key code="72" output="&#x001F;"/>
<key code="76" output="&#x0003;"/>
<key code="77" output="&#x001E;"/>
<key code="79" output="&#x0010;"/>
<key code="80" output="&#x0010;"/>
<key code="96" output="&#x0010;"/>
<key code="97" output="&#x0010;"/>
<key code="98" output="&#x0010;"/>
<key code="99" output="&#x0010;"/>
<key code="100" output="&#x0010;"/>
<key code="101" output="&#x0010;"/>
<key code="103" output="&#x0010;"/>
<key code="105" output="&#x0010;"/>
<key code="106" output="&#x0010;"/>
<key code="107" output="&#x0010;"/>
<key code="109" output="&#x0010;"/>
<key code="111" output="&#x0010;"/>
<key code="113" output="&#x0010;"/>
<key code="114" output="&#x0005;"/>
<key code="115" output="&#x0001;"/>
<key code="116" output="&#x000B;"/>
<key code="117" output="&#x007F;"/>
<key code="118" output="&#x0010;"/>
<key code="119" output="&#x0004;"/>
<key code="120" output="&#x0010;"/>
<key code="121" output="&#x000C;"/>
<key code="122" output="&#x0010;"/>
<key code="123" output="&#x001C;"/>
<key code="124" output="&#x001D;"/>
<key code="125" output="&#x001F;"/>
<key code="126" output="&#x001E;"/>
</keyMap>
<keyMap index="2">
<key code="0" output=""/>
<key code="8" output="©"/>
<key code="50" output="|"/>
<key code="12" output="@"/>
<key code="14" output="€"/>
<key code="15" output="®"/>
<key code="19" output="²"/>
<key code="20" output="³"/>
<key code="25" output="]"/>
<key code="26" output="{"/>
<key code="27" output="\"/>
<key code="28" output="["/>
<key code="29" output="}"/>
<key code="30" output="~"/>
<key code="36" output="&#x000D;"/>
<key code="48" output="&#x0009;"/>
<key code="10" output="|"/>
<key code="51" output="&#x0008;"/>
<key code="52" output="&#x0003;"/>
<key code="53" output="&#x001B;"/>
<key code="64" output="&#x0010;"/>
<key code="66" output="&#x001D;"/>
<key code="70" output="&#x001C;"/>
<key code="71" output="&#x001B;"/>
<key code="72" output="&#x001F;"/>
<key code="76" output="&#x0003;"/>
<key code="77" output="&#x001E;"/>
<key code="79" output="&#x0010;"/>
<key code="80" output="&#x0010;"/>
<key code="96" output="&#x0010;"/>
<key code="97" output="&#x0010;"/>
<key code="98" output="&#x0010;"/>
<key code="99" output="&#x0010;"/>
<key code="100" output="&#x0010;"/>
<key code="101" output="&#x0010;"/>
<key code="103" output="&#x0010;"/>
<key code="105" output="&#x0010;"/>
<key code="106" output="&#x0010;"/>
<key code="107" output="&#x0010;"/>
<key code="109" output="&#x0010;"/>
<key code="111" output="&#x0010;"/>
<key code="113" output="&#x0010;"/>
<key code="114" output="&#x0005;"/>
<key code="115" output="&#x0001;"/>
<key code="116" output="&#x000B;"/>
<key code="117" output="&#x007F;"/>
<key code="118" output="&#x0010;"/>
<key code="119" output="&#x0004;"/>
<key code="120" output="&#x0010;"/>
<key code="121" output="&#x000C;"/>
<key code="122" output="&#x0010;"/>
<key code="123" output="&#x001C;"/>
<key code="124" output="&#x001D;"/>
<key code="125" output="&#x001F;"/>
<key code="126" output="&#x001E;"/>
</keyMap>
<keyMap index="3">
<key code="0" output="A"/>
<key code="1" output="S"/>
<key code="2" output="D"/>
<key code="3" output="F"/>
<key code="4" output="H"/>
<key code="5" output="G"/>
<key code="6" output="Y"/>
<key code="7" output="X"/>
<key code="8" output="C"/>
<key code="9" output="V"/>
<key code="50" output="^"/>
<key code="11" output="B"/>
<key code="12" output="Q"/>
<key code="13" output="W"/>
<key code="14" output="E"/>
<key code="15" output="R"/>
<key code="16" output="Z"/>
<key code="17" output="T"/>
<key code="18" output="!"/>
<key code="19" output="&#x0022;"/>
<key code="20" output="§"/>
<key code="21" output="$"/>
<key code="22" output="&#x0026;"/>
<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="="/>
<key code="30" output="*"/>
<key code="31" output="O"/>
<key code="32" output="U"/>
<key code="33" output="Ü"/>
<key code="34" output="I"/>
<key code="35" output="P"/>
<key code="36" output="&#x000D;"/>
<key code="37" output="L"/>
<key code="38" output="J"/>
<key code="39" output="Ä"/>
<key code="40" output="K"/>
<key code="41" output="Ö"/>
<key code="42" output="&#x0027;"/>
<key code="43" output=";"/>
<key code="44" output="-"/>
<key code="45" output="N"/>
<key code="46" output="M"/>
<key code="47" output=":"/>
<key code="48" output="&#x0009;"/>
<key code="49" output=" "/>
<key code="10" output="&#x003E;"/>
<key code="51" output="&#x0008;"/>
<key code="52" output="&#x0003;"/>
<key code="53" output="&#x001B;"/>
<key code="64" output="&#x0010;"/>
<key code="66" output="&#x001D;"/>
<key code="70" output="&#x001C;"/>
<key code="71" output="&#x001B;"/>
<key code="72" output="&#x001F;"/>
<key code="76" output="&#x0003;"/>
<key code="77" output="&#x001E;"/>
<key code="79" output="&#x0010;"/>
<key code="80" output="&#x0010;"/>
<key code="96" output="&#x0010;"/>
<key code="97" output="&#x0010;"/>
<key code="98" output="&#x0010;"/>
<key code="99" output="&#x0010;"/>
<key code="100" output="&#x0010;"/>
<key code="101" output="&#x0010;"/>
<key code="103" output="&#x0010;"/>
<key code="105" output="&#x0010;"/>
<key code="106" output="&#x0010;"/>
<key code="107" output="&#x0010;"/>
<key code="109" output="&#x0010;"/>
<key code="111" output="&#x0010;"/>
<key code="113" output="&#x0010;"/>
<key code="114" output="&#x0005;"/>
<key code="115" output="&#x0001;"/>
<key code="116" output="&#x000B;"/>
<key code="117" output="&#x007F;"/>
<key code="118" output="&#x0010;"/>
<key code="119" output="&#x0004;"/>
<key code="120" output="&#x0010;"/>
<key code="121" output="&#x000C;"/>
<key code="122" output="&#x0010;"/>
<key code="123" output="&#x001C;"/>
<key code="124" output="&#x001D;"/>
<key code="125" output="&#x001F;"/>
<key code="126" output="&#x001E;"/>
</keyMap>
<keyMap index="4">
<key code="0" output=""/>
<key code="36" output="&#x000D;"/>
<key code="48" output="&#x0009;"/>
<key code="51" output="&#x0008;"/>
<key code="52" output="&#x0003;"/>
<key code="53" output="&#x001B;"/>
<key code="64" output="&#x0010;"/>
<key code="66" output="&#x001D;"/>
<key code="70" output="&#x001C;"/>
<key code="71" output="&#x001B;"/>
<key code="72" output="&#x001F;"/>
<key code="76" output="&#x0003;"/>
<key code="77" output="&#x001E;"/>
<key code="79" output="&#x0010;"/>
<key code="80" output="&#x0010;"/>
<key code="96" output="&#x0010;"/>
<key code="97" output="&#x0010;"/>
<key code="98" output="&#x0010;"/>
<key code="99" output="&#x0010;"/>
<key code="100" output="&#x0010;"/>
<key code="101" output="&#x0010;"/>
<key code="103" output="&#x0010;"/>
<key code="105" output="&#x0010;"/>
<key code="106" output="&#x0010;"/>
<key code="107" output="&#x0010;"/>
<key code="109" output="&#x0010;"/>
<key code="111" output="&#x0010;"/>
<key code="113" output="&#x0010;"/>
<key code="114" output="&#x0005;"/>
<key code="115" output="&#x0001;"/>
<key code="116" output="&#x000B;"/>
<key code="117" output="&#x007F;"/>
<key code="118" output="&#x0010;"/>
<key code="119" output="&#x0004;"/>
<key code="120" output="&#x0010;"/>
<key code="121" output="&#x000C;"/>
<key code="122" output="&#x0010;"/>
<key code="123" output="&#x001C;"/>
<key code="124" output="&#x001D;"/>
<key code="125" output="&#x001F;"/>
<key code="126" output="&#x001E;"/>
</keyMap>
</keyMapSet>
<keyMapSet id="JIS">
<keyMap index="0" baseMapSet="ANSI" baseIndex="0">
<key code="512" output=""/>
</keyMap>
<keyMap index="1" baseMapSet="ANSI" baseIndex="1">
<key code="512" output=""/>
</keyMap>
<keyMap index="2" baseMapSet="ANSI" baseIndex="2">
<key code="512" output=""/>
</keyMap>
<keyMap index="3" baseMapSet="ANSI" baseIndex="3">
<key code="512" output=""/>
</keyMap>
<keyMap index="4" baseMapSet="ANSI" baseIndex="4">
<key code="512" output=""/>
</keyMap>
</keyMapSet>
</keyboard>
@Sams-n
Copy link

Sams-n commented Mar 18, 2020

Thank you for this keyboard layout. Could you please add the vowels with accents i.e. í

@erdnuesse
Copy link
Author

erdnuesse commented Mar 18, 2020

Hey, unfortunately not. The accents are - I guess - more like modifiers and not separate key identifiers. (pressed after each other rather than simultaneously)
In short: I don't know how to do that and I have the same problem.
On the other hand, I didn't know anything 1 day before I started this...
Since it's Corona days I might have some time to look into it but don't get your hopes up just yet.
Much love 🧡

@markusressel
Copy link

markusressel commented May 5, 2021

Thank you for this, its the only one I could find that actually works.

However, ^ and <> keys are swapped when using this layout. Any hint how I can change this? I can see that ^ is mapped to code 50:

<key code="50" output="^"/>

But where is < and > mapped?

EDIT:
Found it, you have to swap code 50 and code 10 items, but be sure to check modifiers.

Here is the modified version I am using now:

Click to expand!
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE keyboard PUBLIC "" "file://localhost/System/Library/DTDs/KeyboardLayout.dtd">
<keyboard group="0" id="48392" name="Win DE SWAP FIX" maxout="1">
  <layouts>
      <layout first="0" last="17" modifiers="Modifiers" mapSet="ANSI"/>
      <layout first="18" last="18" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="21" last="23" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="30" last="30" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="33" last="33" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="36" last="36" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="194" last="194" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="197" last="197" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="200" last="201" modifiers="Modifiers" mapSet="JIS"/>
      <layout first="206" last="207" modifiers="Modifiers" mapSet="JIS"/>
  </layouts>
  <modifierMap id="Modifiers" defaultIndex="0">
      <keyMapSelect mapIndex="0">
          <modifier keys=""/>
      </keyMapSelect>
      <keyMapSelect mapIndex="1">
          <modifier keys="anyShift caps?"/>
      </keyMapSelect>
      <keyMapSelect mapIndex="2">
          <modifier keys="anyOption"/>
      </keyMapSelect>
      <keyMapSelect mapIndex="3">
          <modifier keys="caps"/>
      </keyMapSelect>
      <keyMapSelect mapIndex="4">
          <modifier keys="anyShift caps? anyOption"/>
      </keyMapSelect>
  </modifierMap>
  <keyMapSet id="ANSI">
      <keyMap index="0">
          <key code="0" output="a"/>
          <key code="1" output="s"/>
          <key code="2" output="d"/>
          <key code="3" output="f"/>
          <key code="4" output="h"/>
          <key code="5" output="g"/>
          <key code="6" output="y"/>
          <key code="7" output="x"/>
          <key code="8" output="c"/>
          <key code="9" output="v"/>
          <key code="10" output="^"/>
          <key code="11" output="b"/>
          <key code="12" output="q"/>
          <key code="13" output="w"/>
          <key code="14" output="e"/>
          <key code="15" output="r"/>
          <key code="16" output="z"/>
          <key code="17" output="t"/>
          <key code="18" output="1"/>
          <key code="19" output="2"/>
          <key code="20" output="3"/>
          <key code="21" output="4"/>
          <key code="22" output="6"/>
          <key code="23" output="5"/>
          <key code="24" output="´"/>
          <key code="25" output="9"/>
          <key code="26" output="7"/>
          <key code="27" output="ß"/>
          <key code="28" output="8"/>
          <key code="29" output="0"/>
          <key code="30" output="+"/>
          <key code="31" output="o"/>
          <key code="32" output="u"/>
          <key code="33" output="ü"/>
          <key code="34" output="i"/>
          <key code="35" output="p"/>
          <key code="36" output="&#x000D;"/>
          <key code="37" output="l"/>
          <key code="38" output="j"/>
          <key code="39" output="ä"/>
          <key code="40" output="k"/>
          <key code="41" output="ö"/>
          <key code="42" output="#"/>
          <key code="43" output=","/>
          <key code="44" output="-"/>
          <key code="45" output="n"/>
          <key code="46" output="m"/>
          <key code="47" output="."/>
          <key code="48" output="&#x0009;"/>
          <key code="49" output=" "/>
          <key code="50" output="&#x003C;"/>
          <key code="51" output="&#x0008;"/>
          <key code="52" output="&#x0003;"/>
          <key code="53" output="&#x001B;"/>
          <key code="64" output="&#x0010;"/>
          <key code="65" output=","/>
          <key code="66" output="&#x001D;"/>
          <key code="67" output="*"/>
          <key code="69" output="+"/>
          <key code="70" output="&#x001C;"/>
          <key code="71" output="&#x001B;"/>
          <key code="72" output="&#x001F;"/>
          <key code="75" output="/"/>
          <key code="76" output="&#x0003;"/>
          <key code="77" output="&#x001E;"/>
          <key code="78" output="-"/>
          <key code="79" output="&#x0010;"/>
          <key code="80" output="&#x0010;"/>
          <key code="82" output="0"/>
          <key code="83" output="1"/>
          <key code="84" output="2"/>
          <key code="85" output="3"/>
          <key code="86" output="4"/>
          <key code="87" output="5"/>
          <key code="88" output="6"/>
          <key code="89" output="7"/>
          <key code="91" output="8"/>
          <key code="92" output="9"/>
          <key code="96" output="&#x0010;"/>
          <key code="97" output="&#x0010;"/>
          <key code="98" output="&#x0010;"/>
          <key code="99" output="&#x0010;"/>
          <key code="100" output="&#x0010;"/>
          <key code="101" output="&#x0010;"/>
          <key code="103" output="&#x0010;"/>
          <key code="105" output="&#x0010;"/>
          <key code="106" output="&#x0010;"/>
          <key code="107" output="&#x0010;"/>
          <key code="109" output="&#x0010;"/>
          <key code="111" output="&#x0010;"/>
          <key code="113" output="&#x0010;"/>
          <key code="114" output="&#x0005;"/>
          <key code="115" output="&#x0001;"/>
          <key code="116" output="&#x000B;"/>
          <key code="117" output="&#x007F;"/>
          <key code="118" output="&#x0010;"/>
          <key code="119" output="&#x0004;"/>
          <key code="120" output="&#x0010;"/>
          <key code="121" output="&#x000C;"/>
          <key code="122" output="&#x0010;"/>
          <key code="123" output="&#x001C;"/>
          <key code="124" output="&#x001D;"/>
          <key code="125" output="&#x001F;"/>
          <key code="126" output="&#x001E;"/>
      </keyMap>
      <keyMap index="1">
          <key code="0" output="A"/>
          <key code="1" output="S"/>
          <key code="2" output="D"/>
          <key code="3" output="F"/>
          <key code="4" output="H"/>
          <key code="5" output="G"/>
          <key code="6" output="Y"/>
          <key code="7" output="X"/>
          <key code="8" output="C"/>
          <key code="9" output="V"/>
          <key code="10" output="°"/>
          <key code="11" output="B"/>
          <key code="12" output="Q"/>
          <key code="13" output="W"/>
          <key code="14" output="E"/>
          <key code="15" output="R"/>
          <key code="16" output="Z"/>
          <key code="17" output="T"/>
          <key code="18" output="!"/>
          <key code="19" output="&#x0022;"/>
          <key code="20" output="§"/>
          <key code="21" output="$"/>
          <key code="22" output="&#x0026;"/>
          <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="="/>
          <key code="30" output="*"/>
          <key code="31" output="O"/>
          <key code="32" output="U"/>
          <key code="33" output="Ü"/>
          <key code="34" output="I"/>
          <key code="35" output="P"/>
          <key code="36" output="&#x000D;"/>
          <key code="37" output="L"/>
          <key code="38" output="J"/>
          <key code="39" output="Ä"/>
          <key code="40" output="K"/>
          <key code="41" output="Ö"/>
          <key code="42" output="&#x0027;"/>
          <key code="43" output=";"/>
          <key code="44" output="_"/>
          <key code="45" output="N"/>
          <key code="46" output="M"/>
          <key code="47" output=":"/>
          <key code="48" output="&#x0009;"/>
          <key code="49" output=" "/>
          <key code="50" output="&#x003E;"/>
          <key code="51" output="&#x0008;"/>
          <key code="52" output="&#x0003;"/>
          <key code="53" output="&#x001B;"/>
          <key code="64" output="&#x0010;"/>
          <key code="66" output="&#x001D;"/>
          <key code="70" output="&#x001C;"/>
          <key code="71" output="&#x001B;"/>
          <key code="72" output="&#x001F;"/>
          <key code="76" output="&#x0003;"/>
          <key code="77" output="&#x001E;"/>
          <key code="79" output="&#x0010;"/>
          <key code="80" output="&#x0010;"/>
          <key code="96" output="&#x0010;"/>
          <key code="97" output="&#x0010;"/>
          <key code="98" output="&#x0010;"/>
          <key code="99" output="&#x0010;"/>
          <key code="100" output="&#x0010;"/>
          <key code="101" output="&#x0010;"/>
          <key code="103" output="&#x0010;"/>
          <key code="105" output="&#x0010;"/>
          <key code="106" output="&#x0010;"/>
          <key code="107" output="&#x0010;"/>
          <key code="109" output="&#x0010;"/>
          <key code="111" output="&#x0010;"/>
          <key code="113" output="&#x0010;"/>
          <key code="114" output="&#x0005;"/>
          <key code="115" output="&#x0001;"/>
          <key code="116" output="&#x000B;"/>
          <key code="117" output="&#x007F;"/>
          <key code="118" output="&#x0010;"/>
          <key code="119" output="&#x0004;"/>
          <key code="120" output="&#x0010;"/>
          <key code="121" output="&#x000C;"/>
          <key code="122" output="&#x0010;"/>
          <key code="123" output="&#x001C;"/>
          <key code="124" output="&#x001D;"/>
          <key code="125" output="&#x001F;"/>
          <key code="126" output="&#x001E;"/>
      </keyMap>
      <keyMap index="2">
          <key code="0" output=""/>
          <key code="8" output="©"/>
          <key code="50" output="|"/>
          <key code="12" output="@"/>
          <key code="14" output=""/>
          <key code="15" output="®"/>
          <key code="19" output="²"/>
          <key code="20" output="³"/>
          <key code="25" output="]"/>
          <key code="26" output="{"/>
          <key code="27" output="\"/>
          <key code="28" output="["/>
          <key code="29" output="}"/>
          <key code="30" output="~"/>
          <key code="36" output="&#x000D;"/>
          <key code="48" output="&#x0009;"/>
          <key code="10" output="|"/>
          <key code="51" output="&#x0008;"/>
          <key code="52" output="&#x0003;"/>
          <key code="53" output="&#x001B;"/>
          <key code="64" output="&#x0010;"/>
          <key code="66" output="&#x001D;"/>
          <key code="70" output="&#x001C;"/>
          <key code="71" output="&#x001B;"/>
          <key code="72" output="&#x001F;"/>
          <key code="76" output="&#x0003;"/>
          <key code="77" output="&#x001E;"/>
          <key code="79" output="&#x0010;"/>
          <key code="80" output="&#x0010;"/>
          <key code="96" output="&#x0010;"/>
          <key code="97" output="&#x0010;"/>
          <key code="98" output="&#x0010;"/>
          <key code="99" output="&#x0010;"/>
          <key code="100" output="&#x0010;"/>
          <key code="101" output="&#x0010;"/>
          <key code="103" output="&#x0010;"/>
          <key code="105" output="&#x0010;"/>
          <key code="106" output="&#x0010;"/>
          <key code="107" output="&#x0010;"/>
          <key code="109" output="&#x0010;"/>
          <key code="111" output="&#x0010;"/>
          <key code="113" output="&#x0010;"/>
          <key code="114" output="&#x0005;"/>
          <key code="115" output="&#x0001;"/>
          <key code="116" output="&#x000B;"/>
          <key code="117" output="&#x007F;"/>
          <key code="118" output="&#x0010;"/>
          <key code="119" output="&#x0004;"/>
          <key code="120" output="&#x0010;"/>
          <key code="121" output="&#x000C;"/>
          <key code="122" output="&#x0010;"/>
          <key code="123" output="&#x001C;"/>
          <key code="124" output="&#x001D;"/>
          <key code="125" output="&#x001F;"/>
          <key code="126" output="&#x001E;"/>
      </keyMap>
      <keyMap index="3">
          <key code="0" output="A"/>
          <key code="1" output="S"/>
          <key code="2" output="D"/>
          <key code="3" output="F"/>
          <key code="4" output="H"/>
          <key code="5" output="G"/>
          <key code="6" output="Y"/>
          <key code="7" output="X"/>
          <key code="8" output="C"/>
          <key code="9" output="V"/>
          <key code="10" output="^"/>
          <key code="11" output="B"/>
          <key code="12" output="Q"/>
          <key code="13" output="W"/>
          <key code="14" output="E"/>
          <key code="15" output="R"/>
          <key code="16" output="Z"/>
          <key code="17" output="T"/>
          <key code="18" output="!"/>
          <key code="19" output="&#x0022;"/>
          <key code="20" output="§"/>
          <key code="21" output="$"/>
          <key code="22" output="&#x0026;"/>
          <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="="/>
          <key code="30" output="*"/>
          <key code="31" output="O"/>
          <key code="32" output="U"/>
          <key code="33" output="Ü"/>
          <key code="34" output="I"/>
          <key code="35" output="P"/>
          <key code="36" output="&#x000D;"/>
          <key code="37" output="L"/>
          <key code="38" output="J"/>
          <key code="39" output="Ä"/>
          <key code="40" output="K"/>
          <key code="41" output="Ö"/>
          <key code="42" output="&#x0027;"/>
          <key code="43" output=";"/>
          <key code="44" output="-"/>
          <key code="45" output="N"/>
          <key code="46" output="M"/>
          <key code="47" output=":"/>
          <key code="48" output="&#x0009;"/>
          <key code="49" output=" "/>
          <key code="50" output="&#x003E;"/>
          <key code="51" output="&#x0008;"/>
          <key code="52" output="&#x0003;"/>
          <key code="53" output="&#x001B;"/>
          <key code="64" output="&#x0010;"/>
          <key code="66" output="&#x001D;"/>
          <key code="70" output="&#x001C;"/>
          <key code="71" output="&#x001B;"/>
          <key code="72" output="&#x001F;"/>
          <key code="76" output="&#x0003;"/>
          <key code="77" output="&#x001E;"/>
          <key code="79" output="&#x0010;"/>
          <key code="80" output="&#x0010;"/>
          <key code="96" output="&#x0010;"/>
          <key code="97" output="&#x0010;"/>
          <key code="98" output="&#x0010;"/>
          <key code="99" output="&#x0010;"/>
          <key code="100" output="&#x0010;"/>
          <key code="101" output="&#x0010;"/>
          <key code="103" output="&#x0010;"/>
          <key code="105" output="&#x0010;"/>
          <key code="106" output="&#x0010;"/>
          <key code="107" output="&#x0010;"/>
          <key code="109" output="&#x0010;"/>
          <key code="111" output="&#x0010;"/>
          <key code="113" output="&#x0010;"/>
          <key code="114" output="&#x0005;"/>
          <key code="115" output="&#x0001;"/>
          <key code="116" output="&#x000B;"/>
          <key code="117" output="&#x007F;"/>
          <key code="118" output="&#x0010;"/>
          <key code="119" output="&#x0004;"/>
          <key code="120" output="&#x0010;"/>
          <key code="121" output="&#x000C;"/>
          <key code="122" output="&#x0010;"/>
          <key code="123" output="&#x001C;"/>
          <key code="124" output="&#x001D;"/>
          <key code="125" output="&#x001F;"/>
          <key code="126" output="&#x001E;"/>
      </keyMap>
      <keyMap index="4">
          <key code="0" output=""/>
          <key code="36" output="&#x000D;"/>
          <key code="48" output="&#x0009;"/>
          <key code="51" output="&#x0008;"/>
          <key code="52" output="&#x0003;"/>
          <key code="53" output="&#x001B;"/>
          <key code="64" output="&#x0010;"/>
          <key code="66" output="&#x001D;"/>
          <key code="70" output="&#x001C;"/>
          <key code="71" output="&#x001B;"/>
          <key code="72" output="&#x001F;"/>
          <key code="76" output="&#x0003;"/>
          <key code="77" output="&#x001E;"/>
          <key code="79" output="&#x0010;"/>
          <key code="80" output="&#x0010;"/>
          <key code="96" output="&#x0010;"/>
          <key code="97" output="&#x0010;"/>
          <key code="98" output="&#x0010;"/>
          <key code="99" output="&#x0010;"/>
          <key code="100" output="&#x0010;"/>
          <key code="101" output="&#x0010;"/>
          <key code="103" output="&#x0010;"/>
          <key code="105" output="&#x0010;"/>
          <key code="106" output="&#x0010;"/>
          <key code="107" output="&#x0010;"/>
          <key code="109" output="&#x0010;"/>
          <key code="111" output="&#x0010;"/>
          <key code="113" output="&#x0010;"/>
          <key code="114" output="&#x0005;"/>
          <key code="115" output="&#x0001;"/>
          <key code="116" output="&#x000B;"/>
          <key code="117" output="&#x007F;"/>
          <key code="118" output="&#x0010;"/>
          <key code="119" output="&#x0004;"/>
          <key code="120" output="&#x0010;"/>
          <key code="121" output="&#x000C;"/>
          <key code="122" output="&#x0010;"/>
          <key code="123" output="&#x001C;"/>
          <key code="124" output="&#x001D;"/>
          <key code="125" output="&#x001F;"/>
          <key code="126" output="&#x001E;"/>
      </keyMap>
  </keyMapSet>
  <keyMapSet id="JIS">
      <keyMap index="0" baseMapSet="ANSI" baseIndex="0">
          <key code="512" output=""/>
      </keyMap>
      <keyMap index="1" baseMapSet="ANSI" baseIndex="1">
          <key code="512" output=""/>
      </keyMap>
      <keyMap index="2" baseMapSet="ANSI" baseIndex="2">
          <key code="512" output=""/>
      </keyMap>
      <keyMap index="3" baseMapSet="ANSI" baseIndex="3">
          <key code="512" output=""/>
      </keyMap>
      <keyMap index="4" baseMapSet="ANSI" baseIndex="4">
          <key code="512" output=""/>
      </keyMap>
  </keyMapSet>
</keyboard>

@erdnuesse
Copy link
Author

Thanks for the contribution.
Due to Apple's garbage standards of OS releases and breaking of SMC's of older devices, I had to install linux on my macbook from 2010 and can't test keyboard layouts anymore.
You can fork it from here now though and continue to provide it for others.
Your changes have been added already.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment