1

I've got a LaTeX project in a Git repository which is being worked on using both TeX Live (Linux) and MiKTeX (Windows). The project has a very large number of \includegraphics[...]{...} statements for single files (both PDF and PNG), many of which cannot be combined because they are e.g. embedded in LaTeX tabular environments. Everything compiles just fine, but my current hosting solution has a set limit for the number of individual files the Git repository can have. In order to keep my project under this limit, is there no way to add add a pre-compilation step which extracts a given archive to a given location? If this project was handled using only Linux, I could e.g. write a makefile which does this and then calls the relevant LaTeX/BibTeX commands, but doing this in a way which also works seamlessly with Windows would be extremely difficult and would probably take more time to implement than simply extracting the archive manually each time.

Target structure

For example, compilation currently depends on the following directory structure:

+-- content
|   +-- specimens
|   |   +-- specimen-1.pdf
|   |   +-- specimen-2.pdf
|   |   +-- specimen-3.pdf
|   |   +-- specimen-4.pdf
|   |   +-- specimen-5.pdf
|   |   +-- specimen-6.pdf
|   |   +-- ...
|   +-- experiment-setup.png
|   +-- stimuli.png
+-- mybib.bib
+-- cool-experiment.tex
+-- fun-conference.sty

Source structure

The following structure is how it currently looks in the Git repository in order to keep the project under the file count limit:

+-- content
|   +-- experiment-setup.png
|   +-- specimens.zip
|   +-- stimuli.png
+-- mybib.bib
+-- cool-experiment.tex
+-- fun-conference.sty
  • If you are able to write a makefile then you should also be able to write a simple windows batch file that unzip a zip-file. – Ulrike Fischer Jan 29 '18 at 11:03
  • again, having to create and maintain one build process is time-consuming enough; learning horrible .bat file syntax and creating and maintaining a second build system based on it is worse than stupid. – errantlinguist Jan 29 '18 at 11:13
  • I would understand your argument if you had a complicated build. But here you only want to unzip and then run a few tools. But if you want a script that works on both system either install make on windows. Or write a lua script. This you can use on both systems. Check e.g. l3build. – Ulrike Fischer Jan 29 '18 at 11:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.