If the prompt-string character that is turned red to signal parser errors is colored, the color isn't restored on resolving the error.
还没有人认领这个 Issue。
评估
调研方向
No source file or test is named. Start by reproducing the issue with the provided prompt and quote sequence, then trace PSReadLine's prompt parsing and rendering of ANSI-colored characters. Done means the green > is restored after the parser error is resolved, with regression coverage for the reported behavior.
由索引模型根据 Issue 内容生成。
描述
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
On resolving the parser error, > is printed with the default foreground color rather than in green:
Environment data
PS Version: 7.6.0-preview.3
PS HostName: ConsoleHost
PSReadLine Version: 2.3.6
PSReadLine EditMode: Emacs
OS: Darwin MacBook-Pro.local 24.4.0 Darwin Kernel Version 24.4.0: Fri Apr 11 18:33:47 PDT 2025; root:xnu-11417.101.15~117/RELEASE_ARM64_T6000 arm64
BufferWidth: 180
BufferHeight: 60
Steps to reproduce
Define the following prompt, which prints foo followed by a green > char. (and a space):
function prompt { "foo$($PsStyle.foreground.Green)>$($PSStyle.Reset) " }
Type a single quote character, which provokes a parser error and turns the > red.
Type a closing quote to resolve the parser error.
Presumably related:
- https://github.com/PowerShell/PowerShell/issues/21363 (should be transferred here)
- #3857
Expected behavior
On resolving the parser error, the > should be restored with its original color, i.e. green.
Actual behavior
On resolving the parser error, the > is restored with the default foreground color.
Note that using PSReadLine seemingly does recognize the > despite being surrounded by ANSI escape sequences, but makes no attempt to preserve its color.
Note that trying something like Set-PSReadLineOption -PromptText "$($PsStyle.foreground.Green)>$($PSStyle.Reset) " does not help - PSReadLine doesn't recognize it as part of the prompt string.
- 主要语言
- C#
- 星标
- 4.4k
- 派生
- 341
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
PowerShell/PSReadLine 的其他 Issue
-
Needs-Triage :mag:
难度 2/5 1-3 小时 新手友好度 78/100
PowerShell/PSReadLine#5205 ·
-
Needs-Triage :mag:
难度 2/5 1-3 小时 新手友好度 68/100
PowerShell/PSReadLine#5195 ·
-
Needs-Triage :mag:
难度 2/5 1-3 小时 新手友好度 72/100
PowerShell/PSReadLine#5121 ·
-
Needs-Triage :mag:
难度 2/5 1-3 小时 新手友好度 64/100
PowerShell/PSReadLine#5045 ·
-
Area-CommandHelp Issue-Enhancement
难度 1/5 1 小时以内 新手友好度 68/100
PowerShell/PSReadLine#3470 · 3 个 reaction ·
查看 PowerShell/PSReadLine 的全部 Issue
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 75/100
nightscout/nocturne#1425 ·
-
enhancement
难度 2/5 1-3 小时 新手友好度 75/100
-
难度 2/5 1-3 小时 新手友好度 65/100
-
Documentation
难度 2/5 1-3 小时 新手友好度 75/100
cake-build/cake#5024 ·
-
Frontend status/draft TechnicalDebt
难度 2/5 1-2 天 新手友好度 75/100
Altinn/altinn-auth#4143 ·