4

我正在尝试在 Windows 上设置 vim 以像在 Linux 中一样工作。基本上,当我在 linux 中键入 ":make" 时,我会通过 vim 本身获得 makeprg 的流式输出。

在 Windows 上,我得到一个 cmd 提示,但在 vim 后面。我必须切换焦点以查看结果,直到它们完成,然后可以在 quickfix 窗口中查看它们。

我尝试下载“tee”的副本并将shellpipe 设置为|tee,但这并没有真正改变任何东西。以下是我的 vimrc 中的相关设置,我使用 ninja,但如果我切换到 nmake 或类似的东西,也会发生同样的情况。

set makeprg=ninja\ -C\ build-ninja
set shellpipe=2>&1\ \|tee
set efm+=%Dninja:\ Entering\ directory\ `%f',%Xninja:\ leaving\ directory
4

1 回答 1

0

我认为与您想要的有关,但仅提供部分解决方案,因为它不会等到程序完成运行:

设置 makeprg=start\ /min\ ninja\ -C\ build-ninja

让它工作并非易事(见评论),这似乎是对 Windows 版本的 Vim 的重要疏忽,因为 start 不能从 makeprg 执行(见评论),只能从内部(更有限的 !start)执行。

您可以在这个问题中找到启动程序的完整文档(您似乎需要以某种方式调用)

于 2012-11-05T02:27:47.727 回答