| name | pandoc-cli |
| description | Use Pandoc to convert documents between formats - Markdown, HTML, PDF, DOCX, LaTeX, EPUB, and dozens more. |
Pandoc
Universal document converter. Convert between Markdown, HTML, PDF, DOCX, LaTeX, EPUB, and 40+ formats.
Common Commands
Markdown Conversions
pandoc input.md -o output.html
pandoc input.md -o output.pdf
pandoc input.md -o output.docx
pandoc input.md -o output.epub
pandoc input.md -s -o output.html
HTML Conversions
pandoc input.html -o output.md
pandoc input.html -o output.pdf
pandoc input.html -t gfm -o output.md
Word/Office
pandoc input.docx -o output.md
pandoc input.docx -o output.html
pandoc input.md --reference-doc=template.docx -o output.docx
LaTeX
pandoc input.tex -o output.html
pandoc input.md -o output.tex
pandoc input.md --pdf-engine=xelatex -o output.pdf
Options
pandoc input.md -s --toc -o output.html
pandoc input.md -s --css=style.css -o output.html
pandoc input.md --template=my-template -o output.html
pandoc input.md -V geometry:margin=1in -o output.pdf
pandoc input.md --highlight-style=tango -o output.html
pandoc input.md --metadata title="My Doc" -o output.html
Multiple Inputs
pandoc ch1.md ch2.md ch3.md -o book.pdf
pandoc ch1.md ch2.md ch3.md --toc -o book.epub
Format Detection
pandoc --list-input-formats
pandoc --list-output-formats
Agent Best Practices
- Pandoc infers format from file extension - use
-f and -t to be explicit
- Use
-s (standalone) for complete documents, not fragments
- PDF output requires LaTeX (install with
brew install --cask mactex-no-gui)
- Use
--toc for automatic table of contents generation
- Use
--template for consistent formatting across documents
- Pipe stdin/stdout:
echo "# Hello" | pandoc -f markdown -t html
- Use
--wrap=none to prevent line wrapping in output
Example Workflows
Convert project docs to HTML site
for f in docs/*.md; do
pandoc "$f" -s --css=style.css -o "${f%.md}.html"
done
Generate PDF report from Markdown
pandoc report.md -s --toc -V geometry:margin=1in -o report.pdf