Fix Python >= 3.13 terminal execution requiring manual Enter keypresses #25157
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.
Problem
In Python >= 3.13, when using "Run selection/line" to execute multi-line code blocks in the terminal, users had to manually press Enter to complete execution. This was causing the REPL to show continuation prompts ("...") instead of executing the code automatically.
For example, executing this code:
Would result in:
Requiring manual Enter keypresses to execute, instead of running automatically.
Root Cause
The issue was in the bracket paste mode logic for Python >= 3.13:
normalizeSelection.py
correctly adds trailing newlines (\n\n
) for multi-line code blocks to ensure proper executionhelper.ts
was removing these essential trailing newlinesSolution
The fix is minimal and surgical - it simply preserves the correct normalization that
normalizeSelection.py
already provides:Testing
Fixes #24565.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.