
 Usage: texsmith [OPTIONS] INPUT...

 Convert MkDocs documents into LaTeX artefacts and optionally build PDFs.

╭─ Input Handling ─────────────────────────────────────────────────────────────╮
│   inputs      INPUT...  Conversion inputs such as Markdown (.md) or HTML     │
│                         (.html) source documents. Optionally, BibTeX files   │
│                         (.bib) for citation processing.                      │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────╮
│ --diagrams-backend              BACKEND  Force the backend for diagram       │
│                                          conversion (draw.io, mermaid):      │
│                                          playwright, local, or docker        │
│                                          (auto-default).                     │
│ --embed                                  Embed converted documents into the  │
│                                          main document instead linking them  │
│                                          with \input.                        │
│ --classic-output                         Display raw latexmk output without  │
│                                          parsing.                            │
│ --build                 -b               Invoke latexmk after rendering to   │
│                                          compile the resulting LaTeX         │
│                                          project.                            │
│ --legacy-latex-accents                   Escape accented characters and      │
│                                          ligatures with legacy LaTeX macros  │
│                                          instead of emitting Unicode glyphs  │
│                                          (defaults to Unicode output).       │
│ --template-scaffold             DEST     Copy the selected template into     │
│                                          DEST and exit.                      │
│ --install-completion                     Install completion for the current  │
│                                          shell.                              │
│ --show-completion                        Show completion for the current     │
│                                          shell, to copy it or customize the  │
│                                          installation.                       │
│ --help                                   Show this message and exit.         │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Diagnostics ────────────────────────────────────────────────────────────────╮
│ --list-extensions                     List Markdown extensions enabled by    │
│                                       default and exit.                      │
│ --list-templates                      List available templates (builtin,     │
│                                       entry-point, and local) and exit.      │
│ --list-bibliography                   Print bibliography details from        │
│                                       provided .bib files and exit.          │
│ --verbose            -v      INTEGER  Increase CLI verbosity. Combine        │
│                                       multiple times for additional          │
│                                       diagnostics.                           │
│                                       [default: 0]                           │
│ --debug                               Show full tracebacks when an           │
│                                       unexpected error occurs.               │
│ --debug-rules                         Display the ordered list of registered │
│                                       render rules.                          │
│ --debug-html                          Persist intermediate HTML snapshots    │
│                                       (inherits from --debug when omitted).  │
│ --open-log                            Open the latexmk log with the system   │
│                                       viewer when compilation fails.         │
│ --template-info                       Display template metadata and exit.    │
│ --fonts-info                          Display a summary of fallback fonts    │
│                                       detected during rendering.             │
│ --print-context                       Print resolved template context        │
│                                       emitters/consumers and exit.           │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Output ─────────────────────────────────────────────────────────────────────╮
│ --output,--output-dir  -o      PATH  Output file or directory. Defaults to   │
│                                      stdout unless a template is used.       │
│ --makefile-deps        -M            Emit a Makefile-compatible .d           │
│                                      dependency file when building PDFs.     │
│ --html                               Output intermediate HTML instead of     │
│                                      LaTeX/PDF.                              │
│ --engine               -e      TEXT  LaTeX engine backend to use when        │
│                                      building (tectonic, lualatex, xelatex). │
│                                      [default: tectonic]                     │
│ --system               -S            Use the system Tectonic binary instead  │
│                                      of the bundled download.                │
│ --isolate                            Use a per-render TeX cache inside the   │
│                                      output directory instead of the shared  │
│                                      ~/.cache/texsmith cache.                │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Input Handling ─────────────────────────────────────────────────────────────╮
│ --selector             TEXT  CSS selector to extract the MkDocs article      │
│                              content.                                        │
│                              [default: article.md-content__inner]            │
│ --full-document              Disable article extraction and render the       │
│                              entire HTML file.                               │
│ --parser               TEXT  BeautifulSoup parser backend to use (defaults   │
│                              to "html.parser").                              │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Structure ──────────────────────────────────────────────────────────────────╮
│ --base-level           TEXT  Base heading level relative to the template     │
│                              (e.g. 1 or 'section').                          │
│                              [default: 0]                                    │
│ --strip-heading              Drop the first document heading from the        │
│                              rendered content.                               │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Template ───────────────────────────────────────────────────────────────────╮
│ --no-promote-title                Disable promotion of the first heading to  │
│                                   document title.                            │
│ --no-title                        Disable title generation even when         │
│                                   metadata provides one.                     │
│ --template          -t      TEXT  Select a LaTeX template to use during      │
│                                   conversion. Accepts a local path, entry    │
│                                   point, or built-in slug such as 'article'  │
│                                   or 'letter'.                               │
│ --enable-fragment   -f      TEXT  Enable an additional fragment by name (can │
│                                   be repeated).                              │
│ --disable-fragment  -F      TEXT  Disable a fragment by name (can be         │
│                                   repeated).                                 │
│ --attribute         -a      TEXT  Override template attributes as key=value  │
│                                   pairs (e.g. -a emoji=color).               │
│ --slot              -s      TEXT  Inject a document section into a template  │
│                                   slot using 'slot:Section'. Repeat to map   │
│                                   multiple sections.                         │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Rendering ──────────────────────────────────────────────────────────────────╮
│ --no-fallback-converters                Disable registration of placeholder  │
│                                         converters when Docker is            │
│                                         unavailable.                         │
│ --no-copy-assets          -C            Disable copying of remote assets to  │
│                                         the output directory.                │
│ --convert-assets                        Convert bitmap assets (PNG/JPEG) to  │
│                                         PDF even when LaTeX supports the     │
│                                         original format.                     │
│ --hash-assets                           Hash stored asset filenames instead  │
│                                         of preserving their original names.  │
│ --manifest                -m            Generate a manifest.json file        │
│                                         alongside the LaTeX output.          │
│ --language                -l      TEXT  Language code passed to babel        │
│                                         (defaults to metadata or english).   │
│ --enable-extension        -x      TEXT  Additional Markdown extensions to    │
│                                         enable (comma or space separated     │
│                                         values are accepted).                │
│ --disable-extension       -X      TEXT  Markdown extensions to disable.      │
│                                         Provide a comma separated list or    │
│                                         repeat the option multiple times.    │
│                                         Use --list-extensions to see the     │
│                                         extensions enabled by default.       │
╰──────────────────────────────────────────────────────────────────────────────╯

