From 18718e3424271f09a6ccbfc3e2d196657a92ef0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20F=C3=B6rtsch?= Date: Fri, 6 Mar 2026 12:47:48 +0100 Subject: [PATCH] add interactive keyboard viewer, fix parser, move spec PDF interactive layout viewer with version tabs, modifier key highlighting, dead key compositions, ISO enter spanning two rows, arrow cluster. fix keylayout parser mapSet range handling, update PDF build scripts, move eurkey-layout-complete.pdf to spec/. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/website.yml | 7 + .gitignore | 4 + eurkey-macos.eu/index.html | 45 ++- eurkey-macos.eu/keyboard.js | 302 +++++++++++++++ eurkey-macos.eu/style.css | 349 ++++++++++++++++-- scripts/build-pdf.sh | 4 +- scripts/generate_layout_pdf.py | 4 +- scripts/parse_keylayout.py | 54 +-- .../eurkey-layout-complete.pdf | Bin 9 files changed, 702 insertions(+), 67 deletions(-) create mode 100644 eurkey-macos.eu/keyboard.js rename eurkey-layout-complete.pdf => spec/eurkey-layout-complete.pdf (100%) diff --git a/.github/workflows/website.yml b/.github/workflows/website.yml index a567a0e..9d34d35 100644 --- a/.github/workflows/website.yml +++ b/.github/workflows/website.yml @@ -35,6 +35,13 @@ jobs: run: | pip install fpdf2 python3 scripts/generate_layout_pdf.py -o eurkey-macos.eu/pdf/ + - name: Generate layout JSON + run: | + mkdir -p eurkey-macos.eu/data + for ver in v1.2 v1.3 v1.4 v2.0; do + python3 scripts/parse_keylayout.py "src/keylayouts/EurKEY ${ver}.keylayout" \ + -o "eurkey-macos.eu/data/eurkey-${ver}.json" + done - uses: actions/configure-pages@v5 - uses: actions/upload-pages-artifact@v3 with: diff --git a/.gitignore b/.gitignore index 4337479..b6720ed 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,10 @@ __pycache__/ build/ *.dmg +# Generated site assets +eurkey-macos.eu/data/ +eurkey-macos.eu/pdf/ + # macOS .DS_Store .AppleDouble diff --git a/eurkey-macos.eu/index.html b/eurkey-macos.eu/index.html index 67500c1..1eec71b 100644 --- a/eurkey-macos.eu/index.html +++ b/eurkey-macos.eu/index.html @@ -17,8 +17,8 @@ EurKEY