Skip to content

CLI Reference

Complete command-line interface reference for Rxiv-Maker.

Quick Help

Use rxiv <command> --help for detailed help on any command.

🎯 Quick Command Overview

Command Purpose Typical Time Common Use
rxiv init Create new manuscript 10 seconds Starting new paper
rxiv pdf Generate PDF 30s - 2min Main workflow
rxiv validate Check manuscript 15 seconds Before submission
rxiv arxiv Prepare arXiv package 1 minute arXiv uploads
rxiv clean Clean build files 5 seconds Fresh rebuild
rxiv track-changes Compare versions 30 seconds Revision tracking
rxiv get-rxiv-preprint Clone example 30 seconds Learning
rxiv check-installation Verify setup 10 seconds Troubleshooting

📖 Command Reference

rxiv init

Create a new manuscript project with template structure.

# Create new manuscript
rxiv init my-paper
cd my-paper
# Initialize in existing directory
rxiv init . --force

# Skip interactive prompts
rxiv init my-paper --no-interactive
my-paper/
├── 00_CONFIG.yml         # Manuscript metadata
├── 01_MAIN.md           # Main content
├── 02_SUPPLEMENTARY_INFO.md # Optional
├── 03_REFERENCES.bib    # Bibliography
├── FIGURES/             # Figure scripts
└── .gitignore           # Git ignore

Parameters: - <name> - Project name (creates directory) - --force - Initialize in non-empty directory - --no-interactive - Use defaults without prompts


rxiv pdf

Generate publication-ready PDF from your manuscript.

# Basic PDF generation
rxiv pdf

# With custom output directory
rxiv pdf --output-dir submission/
# Skip validation for faster builds
rxiv pdf --skip-validation

# Skip figure regeneration
rxiv pdf --skip-figures

# Both for maximum speed
rxiv pdf --skip-validation --skip-figures
# Force regenerate all figures
rxiv pdf --force-figures

# Clean and rebuild
rxiv clean && rxiv pdf --force-figures
# Verbose output
rxiv pdf --verbose

# Debug mode
rxiv pdf --debug

# Quiet mode
rxiv pdf --quiet

Options: - [manuscript_path] - Path to manuscript directory (default: current) - --output-dir <path> - Custom output directory (default: output/) - --force-figures - Regenerate all figures ignoring cache - --skip-validation - Skip manuscript validation (faster builds) - --skip-figures - Use existing figure files - --track-changes <tag> - Track changes against git tag - --verbose - Detailed build output - --quiet - Minimal output - --debug - Enable debug logging - --draft - Add draft watermark

Output Files: - manuscript.pdf - Publication-ready PDF - manuscript.tex - Generated LaTeX source - Figures/ - Generated figure files - logs/ - Build logs and diagnostics


rxiv validate

Check manuscript for errors and issues.

# Quick validation
rxiv validate

# Detailed report
rxiv validate --detailed
# Skip DOI validation
rxiv validate --no-doi

# Check specific manuscript
rxiv validate path/to/manuscript/

Validation Checks:

  • ✅ Structure - Required files and directory organization
  • ✅ Syntax - Markdown formatting and enhanced syntax
  • ✅ Citations - BibTeX entries and references
  • ✅ Figures - File existence and script validity
  • ✅ Cross-references - Figure, table, and equation references
  • ✅ Mathematics - LaTeX math syntax
  • ✅ Configuration - YAML metadata completeness
  • ✅ Dependencies - Required packages and tools

Options: - [manuscript_path] - Path to manuscript (default: current) - --detailed - Show detailed validation report - --no-doi - Skip DOI validation for speed - --fix-common - Auto-fix common issues

Exit Codes: - 0 - No issues found - 1 - Warnings (proceed with caution) - 2 - Errors (must fix)


rxiv arxiv

Prepare arXiv-ready submission package.

# Generate arXiv package
rxiv arxiv

# Output: for_arxiv.zip
# Custom zip filename
rxiv arxiv --zip-filename my-submission.zip

# Don't create zip (just directory)
rxiv arxiv --no-zip

# Custom output directory
rxiv arxiv --output-dir submission/

Package Contents:

for_arxiv.zip
├── manuscript.tex       # LaTeX source
├── manuscript.bbl       # Compiled bibliography
├── Figures/            # All figures (PNG/PDF)
│   ├── figure_01.png
│   ├── figure_02.pdf
│   └── ...
└── [additional .sty/.cls if custom]

Options: - [manuscript_path] - Path to manuscript (default: current) - --output-dir <path> - Output directory - --arxiv-dir <path> - Custom arXiv staging directory - --zip-filename <name> - Custom zip filename - --no-zip - Skip zip creation

Submission Steps: 1. Run rxiv arxiv to generate package 2. Upload for_arxiv.zip to arXiv 3. Follow arXiv's processing instructions 4. Verify PDF compilation on arXiv


rxiv clean

Remove generated files and build artifacts.

# Clean output directory
rxiv clean

# Clean specific manuscript
rxiv clean path/to/manuscript/
# Clean all including cache
rxiv clean --all

# Clean only figures
rxiv clean --figures-only

# Clean only cache
rxiv clean --cache-only

# Clean and verify
rxiv clean && rxiv validate

Removes: - Generated PDFs - LaTeX auxiliary files (.aux, .log, .bbl, etc.) - Figure cache - Build logs - Temporary files

Options: - [manuscript_path] - Path to manuscript (default: current) - --all - Remove all generated files including cache - --figures-only - Only clean figure files - --cache-only - Only clean cache - --dry-run - Show what would be deleted without deleting


rxiv track-changes

Compare manuscript versions and generate diff.

# Compare current with previous version
rxiv track-changes v1.0 HEAD

# Compare two git tags
rxiv track-changes v1.0 v2.0
# Custom output filename
rxiv track-changes v1.0 v2.0 --output changes.pdf

# With custom color scheme
rxiv track-changes v1.0 v2.0 --color-changes

Features: - Visual diff with additions/deletions highlighted - Works with git tags, commits, or branches - Generates standalone PDF showing changes - Preserves formatting and figures - Useful for reviewer responses

Options: - <old_ref> - Old git reference (tag/commit/branch) - <new_ref> - New git reference (tag/commit/branch) - --output <filename> - Custom output filename - --color-changes - Use colored diff - --no-highlight - Plain text diff


rxiv get-rxiv-preprint

Clone the official example manuscript.

# Clone official example
rxiv get-rxiv-preprint

# Creates: manuscript-rxiv-maker/
cd manuscript-rxiv-maker/MANUSCRIPT
rxiv pdf

What You Get: - Complete example manuscript - Production-ready figures - Dynamic content examples - All features demonstrated - Published on arXiv

Repository: manuscript-rxiv-maker


rxiv check-installation

Verify Rxiv-Maker installation and dependencies.

# Quick system check
rxiv check-installation
# Comprehensive diagnostics
rxiv check-installation --detailed

# Save report to file
rxiv check-installation --detailed > diagnostic_report.txt

Checks: - ✅ Rxiv-Maker version - ✅ Python installation and version - ✅ LaTeX distribution - ✅ Required LaTeX packages - ✅ Python packages (matplotlib, pandas, etc.) - ✅ System commands (git, etc.) - ✅ File permissions

Options: - --detailed - Show comprehensive diagnostic information - --fix-issues - Attempt to auto-fix common issues


🔧 Global Options

Available for all commands:

rxiv <command> --help      # Show command help
rxiv --version            # Show version
rxiv --config <path>      # Use custom config file
rxiv --no-color          # Disable colored output
rxiv --log-level <level> # Set logging level (DEBUG, INFO, WARNING, ERROR)

📋 Configuration File Reference

The 00_CONFIG.yml file controls manuscript metadata and settings:

Basic Metadata

# Document information
title: "Your Manuscript Title"
short_title: "Short Title"  # For headers (optional)
subtitle: "Optional Subtitle"  # (optional)

# Authors
authors:
  - name: "First Author"
    affiliation: "1"
    email: "[email protected]"
    corresponding: true
    orcid: "0000-0000-0000-0000"  # optional
  - name: "Second Author"
    affiliation: "1,2"
    orcid: "0000-0000-0000-0001"  # optional

# Affiliations
affiliations:
  - id: "1"
    name: "University Name"
    department: "Department Name"  # optional
    city: "City"  # optional
    country: "Country"  # optional
  - id: "2"
    name: "Second Institution"

Content Settings

# Abstract and keywords
abstract: "Your abstract text here. Can be multiple sentences."
keywords:
  - "keyword1"
  - "keyword2"
  - "keyword3"

# Bibliography
bibliography: "03_REFERENCES.bib"
citation_style: "nature"  # or "apa", "chicago", etc.

Formatting Options

# Document formatting
line_numbers: false         # Show line numbers
draft_watermark: false      # Add "DRAFT" watermark
two_column: false          # Use two-column layout
font_size: "11pt"          # Font size: 10pt, 11pt, 12pt
paper_size: "a4"           # a4 or letter

# Figure settings
figure_dpi: 300            # Figure resolution
figure_format: "png"       # png or pdf

# Page layout
margin_top: "2.5cm"
margin_bottom: "2.5cm"
margin_left: "2.5cm"
margin_right: "2.5cm"

Advanced Settings

# LaTeX customization
latex_engine: "pdflatex"   # pdflatex or xelatex
latex_class: "article"     # Document class
latex_extra_preamble: |    # Custom LaTeX commands
  \usepackage{mypackage}
  \newcommand{\mycmd}{text}

# Build settings
cache_figures: true        # Enable figure caching
parallel_figures: 4        # Parallel figure generation
clean_aux_files: true      # Auto-clean auxiliary files

# Submission settings
arxiv_category: "cs.LG"    # arXiv category
preprint_server: "arxiv"   # arxiv, biorxiv, etc.

🔄 Common Workflows

Daily Writing

# Start of session
rxiv validate
rxiv pdf

# Make changes to 01_MAIN.md

# Quick rebuild
rxiv pdf --skip-validation

# End of session
rxiv validate --detailed
git add . && git commit -m "Update results section"

Figure Development

# Test figure script
python FIGURES/my_figure.py

# Generate PDF with new figure
rxiv pdf --force-figures

# If figure looks good, cache it
rxiv pdf  # Automatic caching

Pre-Submission

# Full validation
rxiv validate --detailed

# Clean rebuild
rxiv clean
rxiv pdf --force-figures

# Generate arXiv package
rxiv arxiv

# Track changes if revision
rxiv track-changes v1.0 HEAD

Troubleshooting

# Check installation
rxiv check-installation --detailed

# Clean and rebuild
rxiv clean --all
rxiv pdf --verbose

# Debug specific issue
rxiv pdf --debug > debug.log 2>&1

💡 Tips and Best Practices

Performance Optimization

# Fast iteration during writing
rxiv pdf --skip-validation --skip-figures

# Use parallel figure generation
export RXIV_PARALLEL_JOBS=4
rxiv pdf --force-figures

# Clean cache periodically
rxiv clean --cache-only

Git Integration

# Pre-commit validation
echo "rxiv validate" > .git/hooks/pre-commit
chmod +x .git/hooks/pre-commit

# Tag releases
git tag -a v1.0 -m "Initial submission"
git push --tags

# Track changes for revision
rxiv track-changes v1.0 v1.1

Collaboration

# Validate before pushing
rxiv validate --detailed

# Generate PDF for collaborators
rxiv pdf --output-dir release/

# Share specific version
git tag -a review-v1 -m "For review"

🆘 Getting Help

Command-Specific Help

# Get help for specific command
rxiv pdf --help
rxiv validate --help
rxiv init --help

Documentation

Community Support


📚 Additional Resources


Need more help? Check the Troubleshooting Guide or ask in GitHub Discussions.