Skip to content

feat: add French (AZERTY) keyboard layout support #59

@NakaokaRei

Description

@NakaokaRei

Overview

Add support for the French AZERTY keyboard layout (ISO physical keyboard).

Major differences from US QWERTY:

Char US French
a / q Swapped (AZERTY)
w / z Swapped (AZERTY)
m `m` position Right of `l` (where `;` is on US)
Numbers 0-9 Direct input Shift required (unshifted = àéè etc.)
@ Shift+2 Option+à (0x00)
[ `[` (0x21) Option+Shift+(
] `]` (0x1E) Option+Shift+)
{ Shift+`[` Option+(
} Shift+`]` Option+)

Notes

  • AZERTY has a fundamentally different letter arrangement (A/Q and W/Z swapped, M moved)
  • Numbers require Shift to type (unshifted positions produce accented characters)
  • Many symbols require Option key
  • Has dedicated keys for accented characters (é, è, à, ù)

Tasks

  • Add .french case to KeyboardLayout
  • Handle Option key modifier in CharacterKeyMapping
  • Implement French character mapping
  • Add tests
  • Update README

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions