如何在Neovim中运行后台脚本?

时间:2017-09-07 13:23:59

标签: vim neovim

我希望我可以通过在后台运行脚本而不是在内部Neovim终端模拟器中模仿原始的VIM行为。

基本上原因是我似乎无法让颜色正常工作,而且,我喜欢Ctrl + Z(将编辑器放在后台)并检查最后一个命令的输出是什么。

无论如何,我可以配置nvim在这方面做与vim相同的事情吗?

以下是比较:

编辑:我的测试是使用Dim i As Integer For i = 4 To 100 Range("M" & i).FormulaLocal = "=NUMERO.VALORE(SE(Q" & i & "=""Bedarf kum."";A" & i & ";SE(Q" & i & "=""Ist"";SCARTO(A" & i & ";-1;0);SE(Q" & i & "=""Lz."";SCARTO(A" & i & ";-2;0);SE(Q" & i & "=""Ist+Lz.-Bedarf"";SCARTO(A" & i & ";-3;0);)))))" Next i

运行的

VIM

enter image description here

NVIM

enter image description here

3 个答案:

答案 0 :(得分:0)

启用了终端功能的vim的最新版本(github repo中的HEAD版本)。

您可以使用以下命令在后台运行当前文件:

:terminal ++ hidden ./%

对于neovim

您可能需要安装一些插件,如:

https://github.com/tracyone/neomake-multiprocess

https://github.com/skywind3000/asyncrun.vim

如果您使用的是tmux,则可以

https://gist.github.com/tracyone/65cffd685fc9b9308e50c1a1783d1fb0

答案 1 :(得分:0)

我鼓励您尝试通过:!{cmd}命令运行测试,而不是使用:te[rminal] {cmd}

:te ./vendor/bin/phpunit {file}

这样,phpunit的输出将被捕获在终端缓冲区中。您可以使用<C-^>(或:b#)在终端缓冲区和测试文件之间切换。或者您可以在单独的窗口中并排打开终端缓冲区和测试文件。当您使用终端缓冲区完成后,可以使用:bwipeout {num}删除它。

终端缓冲区的一个很酷的功能是,如果将光标放在文件路径上并按gf,Vim将打开指定的文件。更好的是,您使用gF,然后Vim将以指定的行/列号打开文件(如果存在的话)。

有关详细信息,请在Neovim中查找:help terminal

答案 2 :(得分:0)

您可以使用:silent !./vendor/bin/phpunit {file}来运行脚本背景。