如何在处理文件时在 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