有没有办法在PowerShell中获得vim的键绑定,就像在bash或zsh中使用类似的命令一样
set -o vi
PowerShell是一个运行时环境,可以在默认的Windows控制台以外的东西中托pipe。 现在唯一支持Vi模式的ISE是现在PS Gallery上的PSReadLine
有用法说明,但简单的VI模式,你需要添加以下行到您的ISEconfiguration文件。
Set-PSReadlineOption -EditMode vi
请注意,Vi支持已在1.2版本中添加,但在Windows 10中随附了1.1版本。您将需要使用-force参数来更新装运(也称为手动安装)版本。 以下是其他一些可能在未来开发Vi模式的ISE。
PSReadline模块提供了这个function。
要安装很简单,不知道要求是什么,但我认为至less提供了这个方法的Windows 10。 如果您没有OneGet或不确定您可以按照PSReadline上的说明进行操作
在不提升权限的情况下安装PSReadline
Install-Module PsReadline -Scope CurrentUser
检查你有一个PowerShellconfiguration文件
Test-Path $PROFILE
如果你不创build一个
New-File -Type File $PROFILE
在ISE中打开$ PROFILE
ise $PROFILE
添加这一行
Set-PSReadlineOption -EditMode vi
重新加载$configuration文件或只是重新启动powershell
& $PROFILE
我不会发誓,Powershell没有一个无证的function,但据我所知,答案是否定的。 至less我从来没有见过Powershell文档中的任何内容来暗示它是可能的。
JR
碰巧,您可以将PowerShell语法突出显示加载到VIM中。 这是我用于脚本开发。
http://www.vim.org/scripts/script.php?script_id=1327
虽然它不在shell本身,但是build立更长的脚本很方便。 我在VIM中有一个窗口,在另一个窗口中有一个PowerShell提示符。 我觉得非常方便 。
PowerShell引擎现在提供了一些钩子来使这个相对直接,但我不知道谁已经做了。
PSReadln项目有一个emacs模式,尽pipe它还处于初级阶段。 在PSReadln中添加一个vi模式将是显而易见的事情,但我没有时间去投入。