Pre-processes LaTeX working papers for archival at arXiv.
ArXiv is an online repository of electronic preprints (known as e-prints) in various fields of science, particularly in physics, mathematics, computer science, quantitative biology, quantitative finance, statistics, electrical engineering, systems science, and economics. It is owned and operated by Cornell University. Researchers can submit their papers to arXiv to make them publicly accessible before they are published in peer-reviewed journals. This allows for rapid dissemination of research findings and facilitates open access to scientific literature. ArXiv provides a platform for researchers to share their work, receive feedback, and establish priority for their discoveries. It has become an essential resource in the scientific community for staying updated on the latest research developments.
arXivIt is a script designed to prepare your LaTeX project for submission to arXiv. It automates the process of validating, cleaning, and packaging your project into a .tar file that complies with arXiv's strict requirements. This manual explains how to use arXivIt and what it does. The script is friendly with latex, pdflatex and biblatex/biber.
arXivIt performs the following tasks to ensure your LaTeX project is ready for arXiv submission:
-
Validates Sources:
- Ensures your project contains valid (La)TeX, AMS(La)TeX, or PDFLaTeX sources.
-
Validates Figures:
- Ensures figures are in valid formats: PostScript (PS, EPS), JPEG, GIF, PNG, or PDF.
-
Flattens Main
.texFile:- Combines all
\inputand\includestatements into a single, flattened.texfile.
- Combines all
-
Checks Filenames:
- Ensures filenames comply with arXiv's strict requirements (e.g., no spaces, special characters, or overly long names).
-
Removes Unused Files:
- Deletes any files not referenced by your main
.texfile.
- Deletes any files not referenced by your main
-
Handles Symlinks:
- Replaces symbolic links with hard copies of the files.
-
Removes Conflicting PDFs:
- Deletes any
.pdffiles that might conflict with arXiv's processing.
- Deletes any
-
Cleans Hidden Files:
- Deletes hidden files and directories (e.g.,
.gitignore,.DS_Store).
- Deletes hidden files and directories (e.g.,
-
Warns About Empty Files:
- Alerts you if any files in your project are empty.
-
Validates
.bblFile:- Ensures the
.bblfile matches the name of the main.texfile for proper reference processing.
- Ensures the
-
Removes comments:
- Will ask if you want to remove latex comments (lines starting with %)
- A folder containing your LaTeX project. The folder must include:
- A main
.texfile (e.g.,main.tex). - Any additional
.texfiles, figures, and references.
- A main
- A
.tarfile ready for upload to arXiv.
- Ensure you have Python 3 installed.
- Install required Python packages (if any) using
pip install -r requirements.txt.
- Place your LaTeX project in a folder (e.g.,
my_latex_project). - Run the script from the command line:
python arxivit.py /path/to/my_latex_project