Open chbuschmann opened 8 years ago
This is a tricky issue. At one level, you can already set the output directory by passing the appropriate option to the tex engine (either in Settings or as a %!TEX
magic comment). This will work. However, the code that parses the log file and displays the PDF file will fail because these files will not, in general, be in the expected location (i.e., in the same dir as the tex source or root file).
The painful issue to deal with is that MikTeX and TeXLive handle this differently. MikTeX offers more granular control--you can tell it to put aux files in one directory and the pdf output file in another. TeXLive, on the other hand, only allows you to say "all generated files go to directory X"---which applies to both PDF and aux files. So, one, you need code that handles both cases separately, which is painful. Second, you can't provide the exact same functionality on MikTeX and TeXLive.
I'm thinking about an alternative approach: introduce a setting or magic comment that points to the log and pdf files, wherever they may be. This is easy to do and cross-platform. Users who want to fiddle with where tex puts generated files are sophisticated enough to understand what such settings would mean.
Happy to entertain alternatives, but so far this is what I could come up with!
I actually like having everything in an alternative out directory. Do I understand correctly that the forward/backward search won't work?
Forward search (or even displaying the PDF) definitely won't. You'll lose any relevant warnings or errors in the console because latextools won't be able to read the log file and the delete temp files functionality will likely do nothing useful. Oddly, backward search may work perfectly, since that mostly depends on a corresponding synctex
file.
too bad - this would be a nice feature to have, because a lot of my collaborators who haven't yet accepted Git will collaboratively work on a latex document on dropbox and we screw up each others compilations.
Output Directory for aux files.