diff --git a/src/eoatex2pdf.py b/src/eoatex2pdf.py index d86abc0..d1d7d90 100755 --- a/src/eoatex2pdf.py +++ b/src/eoatex2pdf.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -from utils.load_config import load_config, check_executable, exec_command, copy_dir_overwrite +from utils.load_config import load_config, check_executable, exec_command, copy_dir_overwrite, copy_dir_keepaux import utils.libeoaconvert as libeoaconvert import argparse @@ -25,7 +25,8 @@ def main( input_file, output_dir, - nobiber + nobiber, + include ): check_executable( "xelatex" ) if( not os.path.exists( output_dir ) ): @@ -46,10 +47,16 @@ def main( output_file = fixed_file_path, pdf_or_xml = "pdf" ) - copy_dir_overwrite( + if include: + copy_dir_keepaux( input_dir / "texfiles", output_dir / "texfiles" - ) + ) + else: + copy_dir_overwrite( + input_dir / "texfiles", + output_dir / "texfiles" + ) copy_dir_overwrite( input_dir / "preambel", output_dir / "preambel" @@ -135,6 +142,12 @@ def copy_bib_file(): default = False, help="Run only two passes of XeLaTeX and no biber." ) + parser.add_argument( + "--include", + action="store_true", + default = False, + help="Use include rather than input and keep aux files in output directory." + ) parser.add_argument( "INPUT_DIR", help = "directory containing the publication (including resources like pictures, etc.)", @@ -160,5 +173,6 @@ def copy_bib_file(): main( input_file = input_file, output_dir = output_dir, - nobiber = args.no_biber + nobiber = args.no_biber, + include = args.include ) diff --git a/src/utils/load_config.py b/src/utils/load_config.py index 5a50b66..b615755 100644 --- a/src/utils/load_config.py +++ b/src/utils/load_config.py @@ -11,6 +11,7 @@ import shlex import time import shutil +import glob import tempfile @@ -24,6 +25,16 @@ def copy_dir_overwrite( src, dst ): shutil.rmtree( dst ) shutil.copytree( src, dst) +def copy_dir_keepaux(src, dst): + if os.path.exists( dst ): + for filename in glob.glob(os.path.join(dst, '*.tex')): + os.unlink(filename) + else: + os.mkdir(dst) + for filename in glob.glob(os.path.join(src, '*.tex')): + shutil.copy(filename, dst) + + class ToFile: def __init__( self, filename ): self.filename = filename