`ShowCommandHelp` (F1) doesn't work for `about_*` topics relating to language keywords, specifically, if the "about_" prefix isn't used.

未关闭
#3,570 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
45/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
csharp
领域
cli

调研方向

Start at the ShowCommandHelp implementation and reproduce the F1 behavior in a PowerShell console using the if, about_If, and _if inputs described in the issue. Trace how language keywords are resolved to conceptual help topics. Done means pressing F1 after if displays the about_If help topic while preserving the existing prefixed behavior.

由索引模型根据 Issue 内容生成。

描述

Area-CommandHelp Issue-Enhancement
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.4.0-preview.1
PS HostName: ConsoleHost
PSReadLine Version: 2.2.6
PSReadLine EditMode: Emacs
OS: Darwin JDoes-MacBook-Pro.local 22.2.0 Darwin Kernel Version 22.2.0: Fri Nov 11 02:03:51 PST 2022; root:xnu-8792.61.2~4/RELEASE_ARM64_T6000 arm64
BufferWidth: 180
BufferHeight: 60
Steps to reproduce

A - currently undocumented - feature of the ShowCommandHelp function (F1) is that it can act on the titles of conceptual help topics (about_*) too - both with and without the about_ prefix (although omitting the prefix sometimes results in surprising behavior).

# OK: Shows help topic about_Scopes in alternate screen buffer, with paging.
PS> scopes # <- press F1 here

However, this doesn't work for language keywords, such as if, while, return, ... - _except_ if the about_` prefix is also used.

# OK, thanks to explicit "about_" prefix
PS> about_If # <- press F1 here

# !! BROKEN: no action is taken
PS> if # <- press F1 here

# WORKAROUND: Use minimal prefix "_"
PS> _if # <- press F1 here

Related, more general problem:

  • #3571
Expected behavior

Typing if followed by F1 should show the about_If help topic.

Actual behavior

Nothing happens.

主要语言
C#
星标
4.4k
派生
341
PR 合并指标
30 天内没有已合并 PR

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

PowerShell/PSReadLine 的其他 Issue

查看 PowerShell/PSReadLine 的全部 Issue

相似的 Issue

更多 C# Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。