问题标签 [psreadline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
51 浏览

powershell - PSReadLine 在向上箭头上一个命令执行后打破向下箭头历史

我想知道是否有人注意到在 PowerShell 中安装 PSReadLine 模块似乎破坏了它必须允许我们使用向上箭头查找并执行上一个命令(Windows 命令Prompt 也有这个能力)。

如果我们只是向上箭头并且不执行任何操作,向下箭头可以正常工作 - 但是如果我们向上箭头说 3 个命令并执行它,那么之后的向下箭头不会像我预期的那样产生命令 #2 和 #1,而是它就像我们已经在历史缓冲区的末尾一样。好像我们的“历史位置”在使用向上箭头执行上一个命令后不再保存。

通过一些测试,我设法将其追踪到 PSReadLine 作为罪魁祸首。当我从会话中删除此模块时,上述功能可以正常工作。

这在 Windows 10 v20H2、PSv5.1 上重现(以及许多其他操作系统版本一直追溯到 Win7 SP1,以及其他 PS 版本直至/包括 PSv7.1)。问题肯定似乎与模块有关。

通过搜索,我只找到了另一个提到这一点的线程:

https://powershell.org/forums/topic/posh-v5-console-history-down-arrow-not-working-after-previous-command-entered/

...但没有解决方案。我有点惊讶没有更多关于这方面的内容。

有谁知道是什么原因造成的?我可以在 PSReadLine 中更改一些配置以恢复旧行为吗?

任何帮助深表感谢!

0 投票
1 回答
66 浏览

macos - 我可以在 Powershell 中获得自制软件自动完成功能吗?

我曾经使用 zsh,但我有一些用pwsh. 作为 macOS 用户,我homebrew经常使用。最困扰我的是homebrew官方不提供pwsh自动补全功能。我怎样才能得到一个?

0 投票
0 回答
74 浏览

powershell - 如何阻止 PSReadLine 在 powershell 7.1.3 中更改光标?

问题:

问题是,当我将光标 PowerShell 7.1.3 更改为“垂直栏”时,但一旦我在终端中键入内容或按 enter,光标就会变回“传统样式”

我尝试过的事情:

我曾尝试使用删除模块 PSReadLineRemove-Module PSReadLine但是当我这样做时,它会删除我想要保留的语法突出显示,当然这确实解决了光标的问题,但正如我之前所说,我想保持语法突出显示,因为它看起来很不错。

我知道你可以选择pwsh.exevs code 默认终端,然后在终端的设置中选择“垂直栏”选项,但我不想每次我想使用终端时都打开 vs code。

有没有办法在不删除 PSReadLine 模块的情况下保持语法突出显示并删除光标问题?

0 投票
1 回答
249 浏览

windows - PSReadLine 历史不加载

我今天尝试使用 psreadline。我不明白的是历史命令。

当我跑

历史建议开始出现。

我关闭终端 ps,再次打开它,在我再次运行命令之前没有历史建议。

我想念什么?

0 投票
1 回答
324 浏览

powershell - Powershell中不同Vim模式的不同光标

PSReadline我使用模块将 Vim 绑定添加到我的 Powershell ,如服务器故障帖子中所示。之后的问题是 Vim 的不同模式没有任何视觉指示器。

我只是想要“命令”和其他模式的不同光标。命令模式的块光标和其他模式的行光标。所以我四处搜索,在微软官方文档中找到了这个:Use ViModeChangeHandler to display Vi mode changes

$PROFILE我只是在运行后将其复制粘贴到我的文件底部ise $PROFILE

令人惊讶的是,当我尝试获取我的来源时出现错误$PROFILE

谷歌搜索“Set-PSReadLineOption:无法绑定参数'ViModeIndicator'。无法将值“脚本”转换为类型“Microsoft.PowerShell.ViModeStyle”。” 不会产生任何有用的结果(实际上只有 2 个结果)。

我怎样才能解决这个问题?

0 投票
1 回答
152 浏览

linux - bash历史列表视图像powershell?

使用 PSReadLine 2.2.0 beta4

Set-PSReadLineOption -PredictionSource 历史

Set-PSReadLineOption -PredictionViewStyle ListView

powershell 可以像这样显示历史:

在此处输入图像描述

Bash 或任何其他 Linux shell 是否具有此功能?

0 投票
1 回答
56 浏览

powershell - PSReadLine 升级到 PS 7.2 后抛出异常

使用 PSReadLine 升级到 Powershell 7.2.0 后引发异常

0 投票
1 回答
131 浏览

powershell - Set-PSReadLineOption:找不到与参数名称“PredictionViewStyle”匹配的参数

我正在尝试更改 PSReadline 的 -PredictionViewStyle 选项,但出现错误“Set-PSReadLineOption:找不到与参数名称‘PredictionViewStyle’匹配的参数。”

这是一个全新的安装和 Set-PSReadLineOption -PredictionSource History 的作品。

请问有什么建议吗?

0 投票
2 回答
89 浏览

powershell - 如何在外部编辑器中编辑命令行?

tl;博士

我想找到bash edit-and-execute-command小部件或zsh edit-command-line小部件的 Powershell 版本。

背景

短命令直接在命令行上执行,长而复杂的命令从脚本中执行。但是,在它们变得“长”之前,能够在命令行上测试中等长度的命令会有所帮助。为了帮助完成这项工作,在外部编辑器中编辑命令变得非常有帮助。AFAIK Powershell 并不像 egbashzshdo 那样本机支持这一点。

我目前的尝试

我是 Powershell 的新手,所以我一定会犯很多错误,但我已经提出了一个使用[Microsoft.Powershell.PSConsoleReadLine]该类功能的可行解决方案。我可以将当​​前命令行复制到文件中,编辑文件,然后将编辑后的版本重新注入命令行:

问题

我目前的解决方案感觉笨重而且有点脆弱。还有其他解决方案吗?可以改进当前的解决方案吗?

环境

  • 操作系统 Windows 10.0.19043.0
  • Powershell 版本 5.1.19041.1320
  • PSReadLine 版本 2.0.0

我采用的解决方案

创建一个类似于mklement0显示的“烘焙”可执行文件。我更喜欢vim这个而不是`gvim,因为它直接在控制台中运行:

0 投票
1 回答
39 浏览

windows - 接受部分自动完成

我最近给自己买了一台新的 Windows 11 笔记本电脑,并开始探索 powershell。以前从未在 Windows 上使用过它,但我是zshMac 的频繁用户,所以不是全新的。

我将 Powershell 升级到7.2.1,但注意到我习惯使用 Oh My Zsh 的自动建议类型功能丢失了。经过一番搜索后,我安装了PSReadLine,并使用以下内容设置了我的个人资料:

这比以前好得多,但我注意到我不能部分接受自动完成。

例如,这是我历史的一部分:

如果我现在尝试创建一个文件 saytest-file并开始输入New-Item,我会得到建议。我 想 接受 到 年底-force, 或者 可能 到file. 这没有发生,无论我尝试的组合键是什么(尝试过Ctrl+→</kbd>, Shift+→</kbd>, Alt+→</kbd>, Fn+→</kbd> in vain).

当然,我可以接受完整的建议并删除我不需要的内容。虽然对于这个例子来说它真的无关紧要,但是对于只在初始部分存在匹配的长命令会很烦人。所以,我的问题是部分接受建议的组合是什么,或者如果需要单独启用,我该怎么做?