PHPStorm ideavim 插件:shell 转义和 ctrl-n/ctrl-p 完成

PHPStorm ideavim plugin: shell escapes and ctrl-n/ctrl-p completion

这是一个二人组。

我是 vi/vim 长期试用 phpstorm 10 的用户。我安装了 ideavim 插件,一般来说,这是我见过的最好的 vim 模拟器日期。但是,有两个问题我很想得到解决方案。

1.一致的 shell 逃避行为

shell 转义有时有效,有时完全失败。例如:

:10,20!sort

按预期对 10 到 20 之间的所有行进行排序。然而:

:10,20!awk '{print }'

只是把线扔掉了...有没有办法解决这个问题?我非常喜欢 shell 逃脱。

2。 ctrl-n 和 ctrl-p 完成

之前有人问过这个问题 ,但答案完全不令人满意(基本上 "just do something totally different")。

我已经转到文件->设置->'other settings'->'vim emulation' 并将 'ctrl-N' 和 'ctrl-P' 处理程序设置为 'vim'.. . 但它什么都不做。实际上,ctrl-p 和 ctrl-n 似乎完全被禁用了。

作为参考,我希望它尽可能以 vim 的方式运行,即在缓冲区中找到完整的单词。例如:

// foobar
foo^p

得到'foobar'.

这可能吗?如果可以,怎么做?

  1. 这是 :! 实现中的错误,请随时在 bug tracker.

  2. 中创建问题
  3. IdeaVim仅在普通模式下支持<C-N><C-P>。您可以使用 PhpStorms 的操作来完成循环展开字并分配 Ctrl+PCtrl+N 作为它们的快捷方式(确保这些快捷方式由 IDE 而不是 Vim 仿真处理)。