ListView does not render the first selection after reuse in Vi insert mode
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 65/100
Piste de recherche
Reproduce with pwsh -noprofile, Vi edit mode, and ListView prediction settings, then compare the first DownArrow after reopening ListView with the initial use. Trace the ListView navigation path and Vi insert-mode handling. Done means the first press visibly highlights the internally selected item on every reuse, with Enter and subsequent navigation remaining consistent.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
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
Long-time Vi mode user. For a couple of years, I've been dealing w/ an obscure behavior and finally taking time to report it.
Issue: In Vi insert mode with PredictionViewStyle set to ListView, the first DownArrow press after reusing the list selects a history item internally but fails to render its highlight until another navigation key is pressed.
More Detail:
When using these PSReadLine options:
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -EditMode Vi
the first DownArrow press in the prediction selects a history entry internally without visually rendering the selection highlight.
Pressing Enter at that point executes/accepts the first history item, which indicates that the item was selected despite no visible highlight. Pressing DownArrow a second time causes the selection highlight to appear. After that, UpArrow and DownArrow behave and render normally.
Note: The issue does not occur the first time ListView is used in a new PowerShell session; it only begins after ListView has already been used once.
Entering Vi normal mode and then returning to insert mode resets the behavior, e.g. Esc + i. After that, the first DownArrow press renders correctly again, until the issue recurs.
Environment data
PS Version: 7.6.3
PS HostName: ConsoleHost
PSReadLine Version: 2.4.5
PSReadLine EditMode: Vi
OS: 10.0.26100.1 (WinBuild.160101.0800)
BufferWidth: 180
BufferHeight: 50
Steps to reproduce
- Run
pwsh -noprofile - Run
Set-PSReadLineOption -EditMode Vi - Run
Set-PSReadlineOption -PredictionViewStyle ListView - In Vi insert mode, type text that produces history predictions
- Use the ListView and navigate it with DownArrow (on the first use in a new session, the highlight appears as expected)
- Complete or dismiss the ListView (e.g. ESC to dismiss and
ccto clear the line/command) - Trigger ListView again and press DownArrow once
On the second and later uses of ListView:
- The first DownArrow press appears to do nothing visually.
- No entry is highlighted.
- Pressing Enter accepts or runs the first list item, indicating that the selection changed internally.
- Pressing DownArrow a second time causes the visual highlight to appear.
- Subsequent UpArrow and DownArrow presses render correctly.
Expected behavior
- Each
DownArrowpress in ListView should visibly move the selection to the next prediction. - On the first press, the first matching history entry should be highlighted immediately.
- The visible highlight and the internally selected item should always remain in sync.
- This should behave consistently every time ListView is opened while in Vi insert mode.
Actual behavior
- After ListView has been used once, reopening it in Vi insert mode produces no visible highlight on the first
DownArrowpress. - The first item appears unselected, but it is selected internally.
- Pressing
Enteraccepts/runs that first item despite the missing highlight. - A second
DownArrowpress makes the highlight appear, after which navigation renders normally. - Pressing
Escand thenitemporarily resets the behavior.
- Langage dominant
- C#
- Étoiles
- 4.4k
- Forks
- 341
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de PowerShell/PSReadLine
-
Needs-Triage :mag:
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
PowerShell/PSReadLine#5205 ·
-
Needs-Triage :mag:
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
PowerShell/PSReadLine#5195 ·
-
Needs-Triage :mag:
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
PowerShell/PSReadLine#5121 ·
-
Needs-Triage :mag:
Difficulté 2/5 1-3 heures Accessibilité débutants 64/100
PowerShell/PSReadLine#5045 ·
-
Area-CommandHelp Issue-Enhancement
Difficulté 1/5 Moins d'une heure Accessibilité débutants 68/100
PowerShell/PSReadLine#3470 · 3 réactions ·
Toutes les issues de PowerShell/PSReadLine
Issues similaires
-
bug frontend good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
NavigationViewItemAutomationPeer implements IInvokeProvider but never advertises the Invoke pattern Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
unoplatform/uno#24629 ·
-
agentic-workflows Needs: Triage :mag: State: In-PR
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
CS0162 "Unreachable code detected" warning from a MSBuildTemp .tmp file in every game project Ouvertebug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
-
Type: enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
apache/arrow-adbc#4809 ·