Skip to content

[A11Y] Mac reads Selection replaced when typing in an editor #175

Open

Description

@ssawczyn

Type of Accessibility Issue

Other (describe below)

Describe the Issue

On a Mac, I hear "selection replaced" whenever I start typing text in the editor. This occurs whether the editor is open to a blank file or whether I am editing an existing file. This is likely related to the way VoiceOver bahevs with auto-complete defaults. Since I am new to VS Code, I am using the default settings and am not sure what I should potentially disable, or if there is a VoiceOver verbosity setting that would resolve this. Once the solution to this is found, my recommendation would be to add the solution to the documentation as an optional recommendation specific for Mac users. I would be happy to help test and document.

Steps to Reproduce

  1. open the editor
  2. type a cahracter, message will be spoken.
  3. Alternatively open an existing file in the editor
  4. type a character anywhere in the document, even within existing text. Message will be spoken when the first character is typed.

Screen Reader

VoiceOver (macOS)

Browser

Google Chrome

Operating System and Version

Mac Tahoe 26.3

Relevant WCAG Success Criterion (if known)

None

Impact on Your Workflow

It's more annoying than anything else, but could give the impression that something is actually being replaced which could lead to confusion.

Additional Context

No response

Activity

  1. taylorarndt commented on Mar 8, 2026

    @taylorarndt
    Member

    @ssawczyn I am looking into this

  2. taylorarndt commented on Mar 8, 2026

    @taylorarndt
    Member

    Thanks for the detailed report @ssawczyn! I wasn't able to reproduce the "selection replaced" announcement on my end. When I tested VS Code with VoiceOver, it announced "new line" for every character typed rather than "selection replaced", so the behavior may vary by VS Code version or VoiceOver settings.

    Did you try this on VS Code Insiders? It may behave differently as it includes the latest accessibility improvements.

    A few things worth trying:

    1. Disable macOS Text Replacements
    macOS text replacements can interfere with VS Code and trigger unexpected announcements:

    • Go to System Settings → Keyboard → Text
    • Try disabling any text replacement shortcuts

    2. Adjust VoiceOver Verbosity

    • Open VoiceOver Utility (VO + F8)
    • Under Verbosity, adjust the settings for editing/selections

    This is a complex accessibility interaction between VoiceOver and VS Code. It may be worth potentially escalating to Microsoft via the VS Code GitHub repository. Tagging @accesswatch as they may be able to help investigate further.

    Please come to the Mac room during break and we can troubleshoot this together in person.

  3. ssawczyn commented on Mar 9, 2026

    @ssawczyn
    ContributorAuthor

    @taylorarndt Thanks for looking into this with me.

    When I tested VS Code with VoiceOver, it announced "new line" for every character typed rather than "selection replaced", so the behavior may vary by VS Code version or VoiceOver settings.

    Interestingly enough, I'm getting the "new line" announcement while I'm writing this reply from within VS Code. When I edit a text file though, I get selection replaced. It would not surprise me if these two things were related in some way.

    Did you try this on VS Code Insiders? It may behave differently as it includes the latest accessibility improvements.

    No, I did not try this as I'm very much a VS Code Outsider at this point. :) I also don't want to introduce anything that might make VS Code more confusing for me given how new I am to using it. If there's a way to run both in parallel, I'd be willing to test, but we should probably connect on that outside this issue.

    1. Disable macOS Text Replacements

    This did not resolve the issue. I even deleted text replacements, I didn't have that many anyway.

    2. Adjust VoiceOver Verbosity

    • Open VoiceOver Utility (VO + F8)
    • Under Verbosity, adjust the settings for editing/selections

    Editing/selection? I don't see verbosity settings for these things specifically. I did look under speech and under text though and didn't see anything relevant or anything regarding text selection. Text, text area, text field, and web area are all set to default.

    It may be worth potentially escalating to Microsoft via the VS Code GitHub repository. Tagging @accesswatch as they may be able to help investigate further.

    I am hesitent to escalate to Microsoft as I have seen similar behavior in other editors, notably editors that handle Markdown such as Joplin. I'm also not sure exactly when this started happening, it could be something introduced in VoiceOver relatively recently. I think we should still investigate this, but we might want to hold off escalating to Microsoft until we can be sure this is specific to VS Code.

    Please come to the Mac room during break and we can troubleshoot this together in person.

    Unfortunately, I saw this after the break. If you're still willing to troubleshoot this with me, let's find another time to connect and get this figured out. :)

  4. accesswatch commented on Oct 28, 2026

    @accesswatch
    Collaborator

    An update, @ssawczyn. Following your suggestion, Chapter 11's VoiceOver section now explains this announcement (#262). It tells Mac learners that nothing is replaced, that turning off text replacements did not help, and to add their macOS, VoiceOver and VS Code versions here. I'm leaving this open until we find the cause. Since you have seen the same thing in Joplin, it may come from VoiceOver rather than VS Code. Your macOS, VoiceOver and VS Code versions, and whether it happens in TextEdit, would tell us which.


    Generated by Claude Code

  5. accesswatch commented on Oct 28, 2026

    @accesswatch
    Collaborator

    Labelled accessibility and help wanted: we would like help from someone who uses VoiceOver on macOS every day to find where this announcement comes from.

    Scope. Find the cause of VoiceOver saying "selection replaced" when the first character is typed in a VS Code editor, and either a setting that stops it or enough evidence to report it upstream. Chapter 11 already tells learners that nothing is replaced (#262); this issue is about the cause.

    What would help

    • Your macOS, VoiceOver and VS Code versions, and whether VS Code's editor.accessibilitySupport is on.
    • Whether it also happens in TextEdit, in a plain <textarea> in Safari or Chrome, and in VS Code with all extensions disabled (code --disable-extensions). That separates VoiceOver, the browser engine VS Code uses, VS Code and extensions such as Copilot.
    • A VoiceOver speech log or a short recording, if you are comfortable sharing one.

    Done when we know which component produces the announcement, and either Chapter 11 gives a setting that stops it, or an upstream issue (Apple Feedback or microsoft/vscode) is linked here and listed in ACCESSIBILITY.md under "Dependencies and upstream blockers".

    Thank you again, @ssawczyn, for the report and the offer to test.


    Generated by Claude Code

  6. accesswatch commented on Oct 29, 2026

    @accesswatch
    Collaborator

    Reported upstream to VS Code: microsoft/vscode#345026. It is listed in ACCESSIBILITY.md under "Dependencies and upstream blockers". If you can add your VS Code version, and whether it still happens with code --disable-extensions, there or here, that would help them narrow it down.

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

    accessibilityAccessibility barriers, reports and improvementsbugSomething isn't workinghelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions