从vim运行当前程序并查看vim内部的输出
我想运行当前的Vim程序(本例中为Shell脚本),并在同一窗口中获得输出。我知道一些插件可用或正在使用从vim运行当前程序并查看vim内部的输出,vim,terminal,Vim,Terminal,我想运行当前的Vim程序(本例中为Shell脚本),并在同一窗口中获得输出。我知道一些插件可用或正在使用 读取到新缓冲区 但这就是我正在做的 在VimVim myshell.sh中打开我的程序 将窗口拆分为新文件:拆分输出 :设置自动读取 将终端字符串输出到该文件:/myshell.sh>输出 但我还是要双倍进入才能离开终点站。有什么方法可以绕过它吗?为此,您可以使用silent。但在那之后,你需要重新绘制窗口 所以, :/myshell.sh>输出 然后呢,, :重画 您可以在vimrc中
读取
到新缓冲区
但这就是我正在做的
- 在Vim
Vim myshell.sh中打开我的程序
- 将窗口拆分为新文件
:拆分输出
:设置自动读取
- 将终端字符串输出到该文件
:/myshell.sh>输出
但我还是要双倍进入才能离开终点站。有什么方法可以绕过它吗?为此,您可以使用
silent
。但在那之后,你需要重新绘制窗口
所以,
:/myshell.sh>输出
然后呢,,
:重画代码>
您可以在vimrc
中创建如下命令:
command! -nargs=+ Silent
\ | execute ':silent !' .<q-args>
\ | execute ':redraw!'
命令-纳格斯=+沉默
\|执行“:静默!”。
\|执行“:重画!”
然后像其他命令一样调用它
:Silent./myshell.sh>输出
您可以链接命令,包括“Silent”操作符<代码>:w |无声!!。/%>输出
在我的测试中起作用:w
要写入文件,|
要链接命令,无提示
以静默方式运行下一个命令,然后!。/%>运行命令的输出(%=缓冲区中的文件名)。