Windows Powershell Vim键绑定

有没有办法在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。

  • Powershell Plus
  • 的PowerGUI
  • Windows PowerShell集成脚本环境(PS 2.0+)

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模式将是显而易见的事情,但我没有时间去投入。