ANSI против ISO
Две независимые вещи различаются между клавиатурами из разных стран, и их путаница является наиболее частым источником недоразумений при тестировании.
Первая — это раскладка символов: какие буквы напечатаны на каких колпачках. QWERTY — это стандарт для англоязычных стран. QWERTZ, используемая в Германии, Австрии и Швейцарии, меняет местами Y и Z и размещает умлауты на клавишах пунктуации. AZERTY, используемая во Франции и Бельгии, перемещает A, Z и M и размещает знаки препинания в непереключенном цифровом ряду.
Вторая — это физическая форма платы, и именно здесь меняется количество клавиш. Клавиатуры ANSI, стандартные в США, имеют широкую плоскую клавишу Enter в одном ряду и полноразмерный левый Shift. Клавиатуры ISO, стандартные по всей Европе, имеют высокую клавишу Enter, занимающую два ряда и выемку в левом нижнем углу, укороченный левый Shift и дополнительную клавишу рядом с этим Shift, которую браузеры сообщают как IntlBackslash. Эта дополнительная клавиша объясняет, почему полноразмерная клавиатура ISO имеет 105 клавиш, тогда как клавиатура ANSI имеет 104.
Эти две оси независимы в принципе, но коррелируют на практике: клавиатуры QWERTZ и AZERTY по сути всегда являются ISO. Поэтому выбор любой из них в выпадающем списке «Раскладка клавиш» изменяет как обозначения, так и физическую форму экранной клавиатуры, что позволяет количеству клавиш и результату соответствовать вашему оборудованию.
Одно, что никогда не меняется, это сообщаемый код клавиши. Браузеры идентифицируют клавиши по физическому положению на эталонной американской клавиатуре, а не по символу, напечатанному на колпачке. Нажмите клавишу, помеченную Z на немецкой клавиатуре, и она будет сообщена как KeyY, потому что эта позиция является KeyY на эталонной раскладке. Это сделано намеренно: это позволяет игре привязывать WASD и иметь эти привязки под теми же четырьмя пальцами, независимо от того, написано ли на колпачках WASD или ZQSD.