Skip to content

fix(rmk-config): let alias names end at delimiters, not just whitespace#926

Merged
HaoboGu merged 1 commit into
feat/rynk_protocolfrom
fix/alias-delimiters
Jul 12, 2026
Merged

fix(rmk-config): let alias names end at delimiters, not just whitespace#926
HaoboGu merged 1 commit into
feat/rynk_protocolfrom
fix/alias-delimiters

Conversation

@HaoboGu

@HaoboGu HaoboGu commented Jul 11, 2026

Copy link
Copy Markdown
Owner

LM(1, @mods) used to fail with Undefined alias: mods) because an alias name only ended at whitespace, forcing the awkward @mods ) workaround.

  • Alias names now end at the keymap grammar's delimiter set (whitespace, (, ), ,, @), so aliases work directly inside action arguments
  • A bare @ before a delimiter stays literal; adjacent @a@b now resolves as two aliases
  • Alias keys containing a delimiter are rejected up front with a clear error, since they could never be referenced

Verification: five new unit tests + one keyboard_toml_validation integration test; full rmk-config suite passes (81).

Part of the post-review follow-ups for #848.

`LM(1, @mods)` used to fail with `Undefined alias: mods)` because the
alias name only ended at whitespace. Names now end at the keymap
grammar's delimiter set (whitespace, parens, comma, `@`), so aliases
work directly inside action arguments; a bare `@` before a delimiter
stays literal, and adjacent `@a@b` now resolves as two aliases.
Alias keys containing a delimiter are rejected up front since they
could never be referenced.

Signed-off-by: Haobo Gu <haobogu@outlook.com>
@HaoboGu HaoboGu merged commit 7896f20 into feat/rynk_protocol Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant