- add keylayout XML parser (parse_keylayout.py) that extracts all key
mappings, dead key compositions, modifier layers from .keylayout files
- add validation script (validate_layouts.py) that compares layouts against
v1.3 reference with per-version exception support
- fix action id="6" outputting "p" instead of "6" in v1.3
- generate reference JSON for all 4 layout versions
- document known intentional differences: v1.2 (no ¬ dead key, § vs ẞ),
v1.4 (ẞ on §/` caps, extra ¬ composition)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>