Skip to content

Windows: AltGr+Q on Brazilian ABNT2 layout opens help overlay instead of typing "/" #4723

Description

@nicolassmotta

Description

On Windows, typing / with a Portuguese (Brazil ABNT2) keyboard layout requires
AltGr+Q. Windows reports this to applications as Ctrl+Alt+Q (standard Windows
behavior for layouts flagged with the AltGr modifier — confirmed for the ABNT2
driver, KBDBR.DLL: "This layout treats right Alt key as Control+Alt"). CodeWhale's
composer matches this against the global Ctrl-/ binding
(docs/KEYBINDINGS.md → "Toggle the help overlay") instead of inserting the literal
/ character, so the help overlay pops open every time I try to type a slash.

For comparison, AltGr+W (produces ? on the same layout) works fine — there's no
Ctrl-? binding in KEYBINDINGS.md, so it isn't intercepted. This isolates the bug
specifically to the Ctrl-/ global chord. Same bug class as the AZERTY AltGr fix in
#2863 / #2867, but that fix was scoped to the sidebar-focus shortcuts (Alt-!,
Alt-@, Alt-#, etc.), not Ctrl-/. #3758's QA matrix already calls out
"Verify AltGr and non-US keyboard layouts do not break normal text entry," but
scoped to Hotbar (Alt-1..Alt-8), not this chord. Global chords aren't
user-configurable yet (#436, #437), so there's no settings-based workaround —
only clipboard paste (Ctrl-V) as a stopgap.

Steps to reproduce

  1. Set Windows keyboard layout to Portuguese (Brazil ABNT2)
  2. Open the CodeWhale TUI (codewhale), focus the composer
  3. Press AltGr+Q (physically Right Alt + Q)

Expected behavior

/ is inserted into the composer like any other character.

Actual behavior

The help overlay opens (same as pressing F1 or Ctrl-/) and / is never typed
into the composer.

Impact

Happens every single time I need to type / — a real workflow blocker for regular
DeepSeek dev work on this layout, not an edge case. Only workaround right now is
typing / elsewhere and pasting it in with Ctrl-V.

Environment

  • OS: Windows (via Git Bash / MINGW64)
  • codewhale version: 0.9.0 (d167c07)
  • Install method: npm install -g codewhale
  • codewhale doctor summary:

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdocumentationImprovements or additions to documentation

    Projects

    Status
    In progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions