Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Libreoffice Processor

Purpose

Converts LibreOffice documents (e.g., .odp presentations) to PDF or other formats.

How It Works

Discovers .odp files in the project and runs libreoffice in headless mode to convert each file to the configured output formats. Uses flock to serialize invocations since LibreOffice only supports a single running instance.

Source Files

  • Input: **/*.odp
  • Output: out/libreoffice/{format}/{relative_path}.{format}

Configuration

[processor.libreoffice]
libreoffice_bin = "libreoffice"        # The libreoffice command to run
formats = ["pdf"]                      # Output formats (pdf, pptx)
args = []                              # Additional arguments to pass to libreoffice
output_dir = "out/libreoffice"         # Output directory
extra_inputs = []                      # Additional files that trigger rebuilds when changed
KeyTypeDefaultDescription
libreoffice_binstring"libreoffice"The libreoffice executable to run
formatsstring[]["pdf"]Output formats to generate (pdf, pptx)
argsstring[][]Extra arguments passed to libreoffice
output_dirstring"out/libreoffice"Base output directory
extra_inputsstring[][]Extra files whose changes trigger rebuilds