Repository navigation
Conversation
Shift and a floor's number (as the elevator's panel numbers them, from the bottom up) does what picking it from the floor list does, from anywhere. Shift because the bare digits are the emotes, Ctrl+digit switches tabs on Windows and Linux, and Alt+digit does on Linux; Shift+digit is nobody's, on any OS, and matching by KeyboardEvent.code keeps it the same keys on any layout. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hop between floors from the keyboard: Shift + 1 to Shift + 9 take you straight to that floor, numbered from the bottom up as the elevator's panel numbers them. It does exactly what picking the floor from the list in the top-left does (
switchFloor): a blink and you're on the same spot there, or from outside (balcony, street, garage, roof) the elevator takes you in.Why Shift
KeyboardEvent.code, so it's the same physical keys on any layout (AZERTY included).Trade-off: emoting with 1–6 while holding Shift to run now changes floor instead; let go of Shift to emote.
Why floors win the overlap with emotes
The only overlap is Shift + 1–6, which used to play an emote too (the emote keys ignored modifiers). That combination now goes to floors, because getting between projects matters much more:
Changes
src/client/features/floorkeys/: new feature, actx.keys.bindonDigit1–Digit9that acts only with Shift. A floor that doesn't exist, or one still cloning, gets a toast.features/emotes: the digit emotes leave Shift+digit alone, so the binding gets it.main.ts: one install line, after the other key features.HELP_ROWS),docs/controls.md,docs/features.mdand the README controls table.tests/floorkeys.test.ts: Shift+2/3 go to floors 2/3; a plain digit and Shift+0 don't.Verification
npm run typecheck✅npm test: 607 pass, includingsize,client-structureandclient-help✅npm run build✅🤖 Generated with Claude Code