msiniscalchi / atom-latextools

Port of the LaTeXTools package to the Atom editor
MIT License
58 stars 21 forks source link

Feature request: Output Directory #56

Open chbuschmann opened 8 years ago

chbuschmann commented 8 years ago

Output Directory for aux files.

msiniscalchi commented 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!

cortner commented 8 years ago

I actually like having everything in an alternative out directory. Do I understand correctly that the forward/backward search won't work?

ig0774 commented 8 years ago

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.

cortner commented 8 years ago

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.