Vim 在后台运行命令,但在 vsplit 中实时显示输出

Vim 在后台运行命令,但在 vsplit 中实时显示输出

如何在处理文件时在 vim 中运行终端命令(例如 build),同时在 vsplit 中实时显示输出?

答案1

你需要使用job_start 函数为此。它将在单独的进程实例中调用您的命令。您可以将缓冲区名称传递给此调用,vim 将把作业进程的 STDOUT 和 STDERR 管道链接到这些缓冲区。还可以执行许多其他操作,例如在数据发布到这些缓冲区时注册回调、正在运行的作业类型等。

Example:
        let logjob = job_start("tail -f /tmp/log",
                             \ {'out_io': 'buffer', 'out_name': 'dummy'})
        vsplit | buffer dummy

相关内容