由于需要一些复杂的环境变量,我选择了通过GNU屏幕运行Make。使用屏幕vim的插件,我有以下安装在我的.vimrc:vim运行通过屏幕
map <Leader>mm :call ScreenShellSend("cd ".expand("%:p:h")." && make 2>&1 | tee /path/to/errorfile") <CR>
大致翻译,这将运行使当前工作目录通过现有的屏幕会话的所有必需的环境变量预设的。然后我可以在单独的终端窗口中看到该命令的输出。
我的问题是,假设我让输出到一个文本文件,我怎么告诉自动化VIM的结果使得过程:
A.)定妆使用vim脚本函数,即调用SreenShellSend( )而不是外部程序。
B.)错误文件设置为/路径/到/错误文件
我不知道发送远程命令来屏幕回答这个问题,但请查看Vim for'makeprg'的帮助。如果您可以构建等效于您的ScreenShellSend()命令的命令行,则可以将'makeprg'设置为该命令行。然后'设置errorfile =/path/to/errorfile',你应该很好。 –