ANSI mot ISO
Tangentbord från olika länder skiljer sig åt på två helt oberoende sätt, och att blanda ihop dem är den vanligaste källan till förvirring när man testar.
Det första är teckenlayouten: vilka bokstäver som är tryckta på vilka tangenter. QWERTY är standarden i den engelskspråkiga världen och i Norden. QWERTZ, som används i Tyskland, Österrike och Schweiz, byter plats på Y och Z och lägger omljuden på skiljeteckentangenterna. AZERTY, som används i Frankrike och Belgien, flyttar på A, Z och M och har skiljetecken direkt på sifferraden utan att hålla ner Shift.
Det andra är den fysiska utformningen, och det är här antalet tangenter ändras. ANSI-tangentbord, standard i USA, har en bred och rak Enter-tangent på en enda rad och en fullängds vänster-Shift. ISO-tangentbord, standard i Europa, har en hög Enter-tangent som spänner över två rader med ett hack nertill till vänster, en kortare vänster-Shift och en extra tangent bredvid denna Shift som webbläsare rapporterar som IntlBackslash. Denna extra tangent är anledningen till att ett fullstort ISO-tangentbord har 105 tangenter medan ett ANSI-tangentbord har 104.
Dessa två faktorer är oberoende i teorin men hänger ihop i praktiken: QWERTZ- och AZERTY-tangentbord är i princip alltid ISO. Om du väljer någon av dem i rullgardinsmenyn för layout ändras därför både tangenttexterna och den fysiska formen på tangentbordet på skärmen, vilket gör att tangentantalet och resultatet stämmer med din hårdvara.
En sak som aldrig ändras är tangentkoden som rapporteras. Webbläsare identifierar tangenter utifrån deras fysiska position på ett amerikanskt referenstangentbord, inte efter vilket tecken som är tryckt på tangenten. Trycker du på Z på ett tyskt tangentbord rapporteras det som KeyY, eftersom den positionen är KeyY i referenslayouten. Detta är avsiktligt: det är detta som gör att ett spel kan använda WASD-styrning och låta tangenterna ligga under samma fyra fingrar oavsett om det står WASD eller ZQSD på tangenterna.