I'm guessing wildly here, but the main difference between
running :make! in Vim and running make in the shell, is that Vim must,
after invoking make, parse the output for errors. It is quite possible
that the extra time taken is the time needed for Vim to parse the make
output into the quickfix list. I'm not sure how you would verify this.
Ah! That's a great place to start. The Makefile I'm using is actually
compiling 8051 code with the Keil C51 compiler. The Keil compiler dumps a
whole lot of nonsense text. Here's an example of the output (for every
single .c file):
C51 COMPILER V8.12 - SN: XXXXX-XXXXX
COPYRIGHT KEIL ELEKTRONIK GmbH 1987 - 2008
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
And there are similar messages for the linker, assembler and hex
generator. All not-useful output that I can't seem to suppress without
also suppressing errors. But I just ran a gcc-based Makefile, and Vim
didn't pause at all.
Is there a way to prevent Vim from parsing Makefile output? It just
occurred to me that I was running Vim in Cygwin (Windows XP), and it
wasn't pausing there either. It was still Vim version 7.2, but I don't
think it was patched (and possibly compiled with different options).
Thanks,
James
Ps: The Keil tools don't run in Linux, so I'm running them through Wine. I
don't think that's important to know, but I may as well mention it.
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php