66 Commits

Author SHA1 Message Date
c99483ee46 switch GoatCounter to dedicated eurkey-next instance
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 23:44:32 +02:00
ea4f88ae51 rename v2.0 to EurKEY Next, add ANSI support, normalize Caps Lock, fix v1.4
- rename v2.0 → EurKEY Next across all files, scripts, workflows, website
- rename bundle EurKey-macOS → EurKEY-macOS
- add §/± to ¬ dead key (¬+s → §, ¬+S → ±) for ANSI keyboard compatibility
- normalize Caps Lock = Shift across all four layouts, remove custom Caps bindings
- fix v1.4: revert accidental Caps/ẞ changes, correct changelog to super/subscript swap
- update README: remove duplicate v1.2–v1.4 changelog, reorder versions (Next first)
- update website: ISO+ANSI feature card, EurKEY Next branding, consistent version order

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026.03.22
2026-03-22 21:33:23 +01:00
c2274406ec update readme: fix image paths, add changelog, remove stale bundle
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 12:39:31 +01:00
7c7e54754e update v2.0 layout, fix keyboard viewer dead key cycling, clean up repo
- remove duplicate compositions from v2.0: § from Navigators, ± from
  Option+Shift §, ± from Mathematicians on -, terminator dupes on 5
- change Mathematicians terminator from space to 𝕄
- fix keyboard viewer: support multiple dead keys per key with click
  cycling, show active dead key's own layer character, hide others
- add feature card SVG icons (dead keys, ISO enter, versions, install)
- delete unused draft SVGs, remove leftover docs/ PDFs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026.03.16
2026-03-16 12:31:57 +01:00
c5cd3850c3 fix release workflow: add python setup, reorder build before validate
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026.03.14
2026-03-14 11:05:50 +01:00
92422e1bf1 fix modifier key order, add EU badge template icons, rename build scripts
- fix modifier key order to Apple canonical: Option+Shift (not Shift+Option)
  across parser, validator, PDF generator, website keyboard viewer, README
- add EU badge template icons for v1.2/v1.3/v1.4 matching Apple's built-in
  keyboard layout icon style (edge-to-edge rounded square, text knockout)
- add build-icons.sh to generate .icns from SVG source via rsvg-convert
- rename create-dmg.sh → build-dmg.sh, update CI workflows
- add website feature icons (install, pdf, versions)
- update website icon to star-on-key design

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-14 11:01:56 +01:00
1b9ce5dd86 add GoatCounter analytics, update footer with maintainer credit
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 14:33:44 +01:00
a78c45591f replace dead key panel with inline keyboard compositions
clicking a dead key or pressing its key combo (e.g. Option+M) now
shows compositions directly on the keyboard. keys with compositions
are highlighted, others dimmed. spacebar shows catchy group name.
click the active dead key again or press Escape to exit. add helper
text beneath keyboard explaining viewer interaction.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 14:10:48 +01:00
f3c793c37f fix build workflow: add setup-python, reorder steps
add actions/setup-python for fpdf2 dependency (PEP 668 blocks bare
pip install on macOS runners). run bundle build before validation
so keylayout files exist when validator runs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 13:44:19 +01:00
fa864b65bc rebuild website, PDF generator to match keyboard viewer
remove hero section, add download button in nav, version-aware PDF
download button. rename section title. rebuild ISO enter as single
tall key spanning from row 3 upward. rebuild PDF generator: match
viewer layout (ISO enter, fn key, correct sizes, arrow cluster,
symbol labels), larger fonts, bold modifier labels. dead key pages
now render full keyboards with base/shift compositions, catchy group
names matched by terminator character.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 13:40:48 +01:00
18718e3424 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 <noreply@anthropic.com>
2026-03-06 12:49:36 +01:00
a8f5cf4097 replace PDF iframe with download links, remove main.js 2026-03-05 14:23:58 +01:00
57c8d56afa add workflow_dispatch trigger to website deployment 2026-03-05 14:21:47 +01:00
f8379103d2 trigger website deployment 2026-03-05 14:21:10 +01:00
a31a682f24 remove windows binaries, add eurkey spec PDFs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 14:16:59 +01:00
234b29391f update scripts to use src/ keylayouts, add build-pdf.sh wrapper 2026-03-05 14:16:58 +01:00
3e2fc8f0d9 track src/, fonts/ as project source, replace Hugo with static website
- commit keylayouts, icons, lproj, Iosevka fonts
- remove Hugo, build static site (HTML + CSS + vanilla JS)
- CI workflow generates layout PDFs, deploys to GitHub Pages
2026-03-05 14:16:58 +01:00
019075c12c add .worktrees/ to gitignore 2026-03-05 14:16:58 +01:00
0e1d8c4a85 add layout PDF generation script, generate PDFs for all versions (closes #7)
- add scripts/generate_layout_pdf.py (requires fpdf2)
- generates ISO keyboard diagrams with Base, Shift, Option, Shift+Option
  layers per key, plus dead key composition tables
- output: docs/eurkey-{version}-layout.pdf for v1.2, v1.3, v1.4, v2.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 13:00:00 +01:00
9592b321b1 fix Greek dead key terminator (Ω→α), enable CapsLock language switch, fix parser key resolution
- change Greek dead key terminator from Ω to α in all layout versions,
  matching the official EurKEY spec (closes #11)
- change dead key state name from "dead: Ω" to "dead: α" in v1.2/v1.3
- enable TICapsLockLanguageSwitchCapable in build script (closes #8)
- fix parser to resolve all key codes from base keyMapSets, not just
  codes in explicit layout entry ranges
- add per-version exceptions for newly-discovered v1.2/v1.4 differences
- add Karabiner-Elements docs section, known issues section to README
- add Windows spec installers for reference
- regenerate all parsed JSON specs with fixed parser

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 12:59:46 +01:00
859c26f64c add build workflow, remove redundant validate workflow
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026.03.03
2026-03-03 19:07:50 +01:00
5e29ef63d4 rewrite README: fix typos, add versions table, validation docs
- fix "verison" → "version", "pyhiscal" → "physical", "distiction" → "distinction"
- add versions table explaining each layout version
- add installation from DMG section
- add validation section with usage examples
- restructure changelog with clearer per-version descriptions
- fix dead key table formatting

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:06:48 +01:00
079ff0a872 add build, DMG creation scripts, CI/CD workflows
- build-bundle.sh: regenerates Info.plist with KLInfo entries for all 4
  layout versions, sets CalVer bundle version, validates plists
- create-dmg.sh: packages bundle into a DMG with drag-and-drop symlink
  to /Library/Keyboard Layouts/
- release.yml: GitHub Actions workflow that validates, builds, creates DMG,
  publishes GitHub Release on CalVer tag push
- validate.yml: CI validation on push/PR for layout and script changes
- Info.plist now declares all 4 layouts (was only v2.0)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:06:48 +01:00
7084817dab add validation infrastructure, fix "6" key bug in v1.3
- 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>
2026-03-03 17:06:48 +01:00
e16b92051d add v1.3 to the bundle, implements official spec
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:06:48 +01:00
b5e2de535e create bundle, add v1.4, v2.0 to the bundle
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 17:06:48 +01:00
Leonardo Brondani Schenkel
4bb79f24e7 Change version to 1.2 v1.2 2017-06-06 22:35:48 +02:00
Leonardo Brondani Schenkel
ea231d6517 Change version to 1.2-beta 2017-02-16 18:15:28 +01:00
Leonardo Brondani Schenkel
836eaf6c90 Add ogonek letters 2017-02-16 17:34:43 +01:00
Leonardo Brondani Schenkel
7c95179e9e Add missing macro letters 2017-02-16 17:44:04 +01:00
Leonardo Brondani Schenkel
443bf70d66 Add missing caron letters 2017-02-16 17:24:19 +01:00
Leonardo Brondani Schenkel
d64bd98239 Add missing trema letters 2017-02-16 17:02:17 +01:00
Leonardo Brondani Schenkel
2c4067ace0 Change Option-D to đ/Đ (D WITH STROKE) 2017-02-16 16:55:48 +01:00
Leonardo Brondani Schenkel
93e98ce78c Change Option-Shift-' (Option-") to ¨ (dead key) 2017-02-16 16:49:40 +01:00
Leonardo Brondani Schenkel
5bacd1214c Change Option-Shift-; to ° 2017-02-16 16:39:47 +01:00
Leonardo Brondani Schenkel
fe1e7f1b06 Re-saved/re-formatted file with Ukelele 3.2.2.166 2017-02-16 16:37:08 +01:00
Jonas Diemer
70e66e1458 Merge pull request #3 from saesh/fix-readme
Fix README.md
2017-01-31 17:32:58 +01:00
Jonas Diemer
d494ee89ef Merge branch 'master' into fix-readme 2017-01-31 17:32:48 +01:00
Jonas Diemer
232af39d0b Update README.md
Fix from vitorgalvao
2017-01-31 17:30:41 +01:00
Sascha Hagedorn
de1d70e22d Fix README.md
Fixed line breaks and incomplete path to user directory location.
2016-11-10 12:04:32 +01:00
Jonas Diemer
83e3f246ff Merge pull request #1 from lbschenkel/master
Complete EurKEY v1.1 mappings
2015-04-19 11:31:17 +02:00
Leonardo Brondani Schenkel
dd1375ea53 Update status in README 2015-04-13 15:23:25 +02:00
Leonardo Brondani Schenkel
f34454029a Add mappings: dead key √ (square root) → mathematical symbols 2015-04-10 22:37:53 +02:00
Leonardo Brondani Schenkel
e19ea8f5d3 Add mappings: dead key Ω (omega) → Greek alphabet, superscripts/subscripts 2015-04-10 18:59:10 +02:00
Leonardo Brondani Schenkel
403517f16f Add mappings: dead key © (copyright sign) → (copy|trade)mark symbols, arrows 2015-04-10 22:39:34 +02:00
Leonardo Brondani Schenkel
c7e672eb93 Rename action '5' to 'space' for clarity 2015-04-10 17:31:27 +02:00
Leonardo Brondani Schenkel
1d5fa0631d Add mappings: dead key ¯ (macron) 2015-04-10 17:28:28 +02:00
Leonardo Brondani Schenkel
59ad9b6e4a Add mappings: dead key ˇ (caron) 2015-04-10 17:19:55 +02:00
Leonardo Brondani Schenkel
c31436551a Add mappings: dead key ~ (tilde) 2015-04-10 17:05:56 +02:00
Leonardo Brondani Schenkel
40e7faf258 Add mappings: dead key ´ (acute accent) 2015-04-10 16:59:20 +02:00