Powershell 5的PSReadLine自动补全如何忽略批处理文件(.cmd/.bat)

13 浏览
0 Comments

Powershell 5的PSReadLine自动补全如何忽略批处理文件(.cmd/.bat)

我经常使用自动补全功能...\n当我按下Tab键调用自动补全时...\nPowershell还会在自动补全列表中包含当前文件夹中的任何文件\n或者当前路径中的文件。\n我该如何配置Powershell以忽略这些文件\n(例如,仅使用Powershell命令/函数进行自动补全)?

0
0 Comments

问题的原因是在PowerShell 5的PSReadLine自动补全功能中无法简单地忽略批处理文件(.cmd/.bat)。目前最好的解决方法是定义一个名为TabExpansion2的函数,然后要么完全自己实现自动补全(绝对不推荐),要么过滤默认TabExpansion2实现返回的结果。

在最近的讨论中,我们曾经谈过这个想法,我记得可能甚至有一个未解决的问题,但在快速搜索这里后没有找到。

我不知道确切的历史,但曾经我们确实实现了你想要的行为。它破坏了一些测试,并且我想有些人更喜欢看到实际上无用的补全而不是没有补全,也许这让人们放心补全仍在工作。

无论如何,我认为这是一个合理的功能请求,如果找不到问题的话,我建议打开一个问题。

谢谢...对于一个本应作为配置选项存在的事情来说,这似乎太麻烦了...我真的不想用拳击手套去杀虫子!;-) 谢谢

最近有人提出了一个问题,在这里可以发表意见:github.com/PowerShell/PowerShell/issues/8092

0