Writeup Generation
Target: $ARGUMENTS
Generates structured academic/technical writeups as markdown with citation
support. IEEE [1] style by default. PDF export via pandoc is optional.
Workflow
- Parse arguments - Extract topic, template (default:
project-report-IMRaD), and citation style - Create directory -
docs/write-up/<topic>/ - Copy template - Copy from
templates/todocs/write-up/<topic>/:project-report-IMRaD— scientific/academic (Introduction, Methods, Results, Discussion)technical-doc— software documentation (Overview, Architecture, API, Config, Deployment)
- Fill sections - Replace TODO comments in each chapter file
- Setup bibliography - Add entries to
09a_bibliography.bib - Run markdownlint -
npx markdownlint-cli docs/write-up/<topic>/*.md - Generate PDF (optional) - If pandoc is available, run
make pandoc_run
Additional Resources
- Templates: project-report-IMRaD/ | technical-doc/
- Setup help:
make -f $CLAUDE_PLUGIN_ROOT/Makefile setup_pdf_converter HELP - Pandoc help:
make -f $CLAUDE_PLUGIN_ROOT/Makefile pandoc_run HELP=1
Citation Styles
| Style | CSL File | Notes |
|---|---|---|
| IEEE (default) | Bundled (scripts/writeup/citation-styles/ieee.csl) |
Numeric [1] |
| APA | Bundled (scripts/writeup/citation-styles/apa.csl) |
Author-date (Smith, 2024) |
| Chicago | Bundled (scripts/writeup/citation-styles/chicago-author-date.csl) |
Author-date (Smith 2024) |
Additional CSL files are available from the Zotero Style Repository.
PDF Export (Optional)
If pandoc and LaTeX are installed, generate PDF using the bundled Makefile:
dir=docs/write-up/<topic> && \
make -f $CLAUDE_PLUGIN_ROOT/Makefile pandoc_run \
INPUT_FILES="$$(printf '%s\036' $$dir/*.md)" \
OUTPUT_FILE="$$dir/output.pdf" \
BIBLIOGRAPHY="$$dir/09a_bibliography.bib"
With custom citation style:
dir=docs/write-up/<topic> && \
make -f $CLAUDE_PLUGIN_ROOT/Makefile pandoc_run \
INPUT_FILES="$$(printf '%s\036' $$dir/*.md)" \
OUTPUT_FILE="$$dir/output.pdf" \
BIBLIOGRAPHY="$$dir/09a_bibliography.bib" \
CSL="$CLAUDE_PLUGIN_ROOT/scripts/writeup/citation-styles/apa.csl"
Full writeup build (content generation + PDF):
make -f $CLAUDE_PLUGIN_ROOT/Makefile writeup \
WRITEUP_DIR=docs/write-up/<topic>
Section Numbering (MANDATORY)
NEVER add manual section numbers to headings. Pandoc --number-sections
handles all numbering automatically.
- Wrong:
# 2. Projektvorstellung,## 2.1 Motivation,### 2.1.1 Details - Correct:
# Projektvorstellung,## Motivation,### Details
Manual numbers in markdown headings conflict with pandoc auto-numbering and produce duplicated numbers in the PDF output.
Quality Checks
Before completing:
- No manual section numbers - Headings must not contain
N.,N.N,N.N.Nprefixes - Markdownlint -
npx markdownlint-cli docs/write-up/<topic>/*.md - Citation validation - Verify all
[@key]references exist in.bibfile - PDF generation (optional) - If pandoc available, run
make pandoc_run