Skip to content

Relocate NAV arrows + move LALT to S/L and RALT to R/U#10

Merged
rdlu merged 2 commits intomainfrom
design/idea-4-relocate-nav-arrows
Apr 11, 2026
Merged

Relocate NAV arrows + move LALT to S/L and RALT to R/U#10
rdlu merged 2 commits intomainfrom
design/idea-4-relocate-nav-arrows

Conversation

@rdlu
Copy link
Copy Markdown
Owner

@rdlu rdlu commented Apr 11, 2026

Summary

  • NAV arrow cluster moved from row 2 (over home-row mods) to row 3 (over plain N M , .) so OS auto-repeat works for LEFT / DOWN / UP — resolves NAV layer arrows don't auto-repeat when base position has a hold-tap #5
  • LALT moved from the index-reach positions (G/H) to the ring-finger home positions (S/L) — was being mistyped
  • RALT (AltGr mod-tap) moved from the index-reach positions (T/Y) to the index-home positions (R/U) — same mistyping issue
  • CODE layer mod-tap wrappers updated to follow the new finger positions: mt LALT now pairs with S-position (tap = }); G becomes plain +
  • KEYMAP.md updated

Resulting home row mapping

Symmetric across both hands:

Left:  A  S      D      F      G
          LALT   LCTRL  LSHFT
Right: H  J      K      L      ;
          RSHFT  RCTRL  LALT

All four modifiers stay directly holdable on the home row, so multi-mod chords (CTRL+ALT+SHIFT+key, GUI+SHIFT+S, etc.) work without any thumb gymnastics. The home-row-mod timing (tapping-term-ms=280, require-prior-idle-ms=150, quick-tap-ms=175, hold-trigger-on-release) is unchanged.

NAV arrow relocation

Before (row 2, 33–36): LEFT DOWN UP RIGHT   → over hmr L/A/R/T (hold-tap, broke repeat)
After  (row 3, 46–49): LEFT DOWN UP RIGHT   → over plain N M , . (repeat works)

The window-management shortcuts (LG(N1) LG(U) LG(I) LG(N9)) swap into the vacated row 2 positions.

Supersedes

Test plan

  • Flash pre-release firmware on both halves
  • NAV + LEFT/DOWN/UP auto-repeat on hold
  • Home-row-mod feel with the new finger mapping (LALT on ring, LCTRL on middle, LSHFT on index)
  • AltGr combos via R/U (é, ó, etc.) during normal typing
  • CODE layer: [ ] + still produced on D / F / G; } now carries LALT on S
  • Multi-mod chords: CTRL+SHIFT+P, GUI+SHIFT+S, CTRL+ALT+DEL

Related: #5, #7

🤖 Generated with Claude Code

Instead of moving modifiers around, keep the home-row mods on D/F/G and
H/J/K (unchanged from main) and move the vim-style arrow cluster on NAV
from row 2 (over hmr H/J/K/L) to row 3 (over plain N/M/,/.).

Positions 33-36 on NAV now host the window-management shortcuts that
previously lived at 46-49. Positions 46-49 host LEFT/DOWN/UP/RIGHT and
sit over plain base-layer keys, so OS auto-repeat should work.

Home-row mods, CODE layer mt wrappers, base layer, and thumb cluster
are all untouched. Tracking #7.
Finger-position refinements on top of idea-4 (NAV arrow relocation):

- RALT (ralt_mt) moved from T/Y (index reach) to R/U (index home) —
  was being mistyped on the reach position
- LALT (hml/hmr) moved from G/H (index reach) to S/L (ring finger) —
  same mistyping issue; ring-finger holds are also more sustained

Resulting home row mapping is now symmetric across both hands:
  ring=LALT, middle=LCTRL, index=LSHFT (left)
  index=RSHFT, middle=RCTRL, ring=LALT (right)

CODE layer mod wrappers updated to match the new finger positions:
  mt LALT moves to S-position (tap side = RBRC), G becomes plain PLUS.

Tracking #7.
@rdlu rdlu marked this pull request as ready for review April 11, 2026 01:20
@rdlu rdlu changed the title [design] Idea 4 — keep home-row mods, move NAV arrows Relocate NAV arrows + move LALT to S/L and RALT to R/U Apr 11, 2026
@rdlu rdlu self-assigned this Apr 11, 2026
@rdlu rdlu added the enhancement New feature or request label Apr 11, 2026
@rdlu rdlu merged commit a148f50 into main Apr 11, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

NAV layer arrows don't auto-repeat when base position has a hold-tap

1 participant