LaTeX-Box-Team/LaTeX-Box — pull request #97 by mtth (2013-07-02 20:05:46+00:00)
Title: Noserver

This branch combines the background (asynchronous) pdf compilation of the `master` branch with the simpler approach of the `portable_lmk` and `remove_vimserver` branches. The main contributions are:

* There are now two additional commands `LatexmkAsync` and `LatexmkSync` to compile latex. Most importantly, `LatexmkSync` doesn't require a vim server to run. Both commands have the mappings you would expect: `la`, etc.

* There are two new global options:

* `g:Latexmk_async` which controls what the default command `Latexmk` does. For consistence with the current master branch it is set to 1 by default (so by default running `Latexmk` will run `LatexmkAsync`). Setting this option to 0 makes `LatexmkSync` the default (and also skips all the asynchronous setup in the plugin configuration).

* `g:Latexmk_autosave` which saves the file automatically before compiling when set (default is unset).

Also a bug fix:

* Running `LatexErrors` used to change vim's current working directory, which could be a problem. This is now fixed and you can view any compilation errors from the quickfix window and keep your current working directory.

Disclaimer:
I am submitting this pull request without having tested background compiling (I am unable to run a vim server on my machine, which is the reason behind this pull request). I didn't change any of the relevant asynchronous code and only moved it inside conditional statements. If someone could check that it works, I would be very grateful since I believe there would be a lot of benefit to having both compilation modes available in this great plugin.