Skip to content

Write papers to PDF with Paper Fabric's pandoc pipeline - #2

Merged
h0ffmann merged 3 commits into
mainfrom
paper-fabric-pandoc
Nov 1, 2026
Merged

h0ffmann merged 3 commits into
mainfrom
paper-fabric-pandoc

Conversation

@h0ffmann

@h0ffmann h0ffmann commented Nov 1, 2026 •

Copy link
Copy Markdown
Owner

Goal: a paper in dogma is one directory and one command, just paper, with Paper Fabric's checks from h0ffmann/closed-source.

What comes from closed-source (commit 6b3aae5)

Here What it does
format/tex/template.tex, format/crossref.yaml the pandoc LaTeX template (XeLaTeX, pdfLaTeX-compatible, revision stamp) and pandoc-crossref settings, unchanged
flake.nix, flake.lock picasso's paper lab: pandoc, pandoc-crossref, XeLaTeX, Gleam/Erlang; plus the md shell (markdownlint-cli2, Vale, lychee). Same pinned revision; the unused gleam-website input is removed
tools/ refs-check and ste-check (Gleam), with their tests. Other commands there (site, Zenodo, timeline, arXiv) are specific to that repo, so the entry point is trimmed (see tools/README.md)
.vale/, .vale.ini, .markdownlint-cli2.jsonc, scripts/md-quality.sh the Markdown analysers, with the ignore lists adapted to this repo
.github/workflows/pdf.yml just fabric-test and just paper-check, PDFs as an artifact. Manual only (workflow_dispatch) while the repo is private

New here

  • justfile: paper [slugs], paper-check, fabric-test, md-quality, shell, clean.
  • papers/contextual-bandits/: a starter paper with two fetched references and its REFERENCES.md log.
  • docs/paper-fabric.md: how to start a paper, the citation and cross-reference syntax, the checks.
  • AGENTS.md: a "Papers" section, a hard rule that CI is disabled, and a hard rule that commits and PRs carry no attribution trailers.
  • README section. PDFs and build/ are git-ignored.

How it was checked

  • The pdf workflow ran once on 580e2a5, before it was switched to manual. just fabric-test and just paper-check passed with the pinned Nix toolchain, so the PDF built with crossref, citeproc and the reference-log check.
  • just --list parses the recipes (just 1.21).

Not included

  • The .md workflow. just md-quality works locally.
  • License: in closed-source, tools/ is AGPL-3.0-only and format/ is MIT, while dogma is MPL-2.0. The owner should decide how to mark them here.

From h0ffmann/closed-source (6b3aae5):
- format/: the pandoc LaTeX template and pandoc-crossref settings
- flake.nix/flake.lock: picasso's paper lab (pandoc, crossref, XeLaTeX,
  Gleam) and the md shell (markdownlint-cli2, Vale, lychee)
- tools/: refs-check and ste-check (Gleam), trimmed to those commands
- .vale/, .vale.ini, .markdownlint-cli2.jsonc, scripts/md-quality.sh
- .github/workflows/pdf.yml: build and check papers on each PR

Also: just paper / paper-check / fabric-test / md-quality / shell,
a starter paper (papers/contextual-bandits) with a reference log,
docs/paper-fabric.md, and AGENTS.md/README sections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193yhp2qg7dLSiHGdDsbAVo
@h0ffmann h0ffmann self-assigned this Nov 1, 2026
- pdf.yml runs only on workflow_dispatch; its original triggers stay
  in a comment
- AGENTS.md: hard rule that CI is off, no automatic triggers, run the
  checks locally and say which ones in the PR

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193yhp2qg7dLSiHGdDsbAVo
@h0ffmann
h0ffmann merged commit 64a438b into main Nov 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants