Skip to content

fix(cli): handle DECKPAM keypad Enter sequences in terminal#1

Merged
Gitanaskhan26 merged 1 commit intomainfrom
fix/numpad-deckpam-enter
Apr 28, 2026
Merged

fix(cli): handle DECKPAM keypad Enter sequences in terminal#1
Gitanaskhan26 merged 1 commit intomainfrom
fix/numpad-deckpam-enter

Conversation

@Gitanaskhan26
Copy link
Copy Markdown
Owner

Summary

Add DECKPAM support for keypad Enter in terminal mode to resolve unmapped sequence outputs. This matches the missing OM sequence to the 'enter' key mapping.

Related Issues

Fixes google-gemini#22671

Pre-Merge Checklist

  • Updated relevant documentation and README (if needed)
  • Added/updated tests (if needed)
  • Noted breaking changes (if any)

@Gitanaskhan26 Gitanaskhan26 merged commit fed0067 into main Apr 28, 2026
14 of 15 checks passed
@Gitanaskhan26 Gitanaskhan26 self-assigned this Apr 28, 2026
@Gitanaskhan26 Gitanaskhan26 requested a review from Copilot April 28, 2026 04:17
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds support for the DECKPAM (application keypad) keypad Enter escape sequence so the CLI correctly maps previously-unhandled terminal input to the enter key event.

Changes:

  • Map SS3 OM (i.e., ESC O M) to { name: 'enter' } in the key sequence decoder.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

string,
{ name: string; shift?: boolean; ctrl?: boolean }
> = {
OM: { name: 'enter' },
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a unit test for the newly supported DECKPAM keypad Enter sequence (SS3 ESC O M / \x1bOM) to ensure it is parsed as { name: 'enter' } and stays supported across refactors. There are already KeypressContext tests covering Kitty enter sequences, but none for SS3 OM.

Copilot uses AI. Check for mistakes.
string,
{ name: string; shift?: boolean; ctrl?: boolean }
> = {
OM: { name: 'enter' },
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For consistency/readability, consider placing the OM (SS3) mapping alongside the other O* SS3 mappings (OA/OB/OC/OD/OP וכו.) instead of at the top of KEY_INFO_MAP. Keeping related escape sequences grouped makes future maintenance less error-prone.

Copilot uses AI. Check for mistakes.
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.

Numeric Keypad (NumLock) unresponsive in VS Code Integrated Terminal (Linux Fedora KDE Plasma)

2 participants