Hi,
You should instead use the integrated :make/quickfix feature of vim. You'll have a much better user experience.
First be sure that you have set javac as the make program. It's best done by sourcing compiler/javac.vim
-> :runtime compiler/javac.vim
I would have done it in a java ftplugin, but as I'm not a Java developer, I'm not sure this is a good default setting. So, let's put it in your function.
```vim
command! MakeAndRun :call s:CompileAndRunFolderJava()
function! s:CompileAndRunFolderJava() abort
   runtime compiler/javac.vim
   " old trick to detect compilation errors - part 1
   " --- The following code is borrowed from LaTeXSuite
   "   close the quickfix window before trying to open it again, 
   "   otherwise whether or not we end up in the quickfix window 
   "   after the :cwindow command is not fixed.
   cclose " used to detect errors
   let winnum = winnr()
   " compile all java files in folder of the current buffer
   make %:p:h/*.java
   " old trick to detect compilation errors - part 2
   if winnum == winnr() " => no error detected
     " run Main java file in that folder
     :!(cd .. && java %:p:h:t.Main)
     " delete all the .class files in that folder
     :!rm %:p:h/*.class
   endif
   " :echomsg "Done"
endfunction
```
-- 
-- 
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
--- 
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Tuesday, October 18, 2016
Subscribe to:
Post Comments (Atom)
 
No comments:
Post a Comment