Skip to content

Setting a key handler for 'Ctrl+Alt+?' sets the same key handler for '?' #3508

Open

Description

Prerequisites

  • Write a descriptive title.
  • Make sure you are able to repro it on the latest released version
  • Search the existing issues, especially the pinned issues.

Exception report

N/A

Screenshot

N/A

Environment data

PS Version: 7.3.0
PS HostName: ConsoleHost (Windows Terminal)
PSReadLine Version: 2.2.6
PSReadLine EditMode: Windows
OS: 10.0.25262.1000 (WinBuild.160101.0800)
BufferWidth: 120
BufferHeight: 30

Steps to reproduce

  1. Launch PowerShell.
  2. Run Set-PSReadLineKeyHandler -Chord 'Ctrl+Alt+?' -Function ShowKeyBindings.
  3. Type "?".

Expected behavior

"?" is inserted into the command line.

Actual behavior

The list of key bindings appears. "?" is not inserted into the command line.

Notes

  • After step 2, Get-PSReadLineKeyHandler -Chord '?' returns a key binding same with Get-PSReadLineKeyHandler -Chord 'Ctrl+Alt+?'.
  • This bug is reproduced with Windows PowerShell 5.1 / PowerShell 7.3.0 on Windows Terminal / conhost.exe.
  • This bug is reproduced for other functions such as ShowCommandHelp
  • This bug is NOT reproduced for other keys such as 'Ctrl+Alt+K'.

Activity

  1. ghost added
    Needs-Triage 🔍It's a new issue that core contributor team needs to triage.
    on Dec 9, 2022
  2. andyleejordan commented on Dec 9, 2022

    @andyleejordan
    Member

    I have a hunch that this is because Ctrl+? is the ASCII 'delete' control character.

  3. luidera22 commented on Mar 12, 2024

    @luidera22

    I have a hunch that this is because Ctrl+? is the ASCII 'delete' control character.

    I'm afraid it is not the case, since I'm having the same issue but with shift. I set "Shift+E" and I can't type "E" in uppercase at all, since it recognizes the "Shift+E" as uppercase "E". So yeah, if I use CAPSLOCK and then type "E" it would execute the command but not show the letter at all. It also applies to pasting. If I paste, let's say: "I LOVE BURGERS" it would then output "I LOV BURGRS".

    Captura de tela 2024-03-12 111040

    Captura de tela 2024-03-12 111029

    As you can see in the images, I have set the command like the documentation suggests but in the pwsh it shows as I set just the uppercase letter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-KeyHandlersLabel for issues related to key handlersIssue-BugIt either shouldn't be doing this or needs an investigation.

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions