Document full and conference versions

This commit is contained in:
François-Xavier Wicht 2026-10-13 14:18:44 +02:00
parent d204e5b8b1
commit f78b8e674c
Signed by: wichtfx
GPG Key ID: 83B006069E54EC40
2 changed files with 6 additions and 2 deletions

View File

@ -70,7 +70,7 @@ Follow `writing-style-guide.md` in papers and in conversation alike; its "Talkin
- 🔴 **Edit a paper only when the person asks for the edit.** When they point out a fault, the answer is a proposal --- formatted text in chat if it is short or simple, otherwise edited on disc, by the rule above --- and it is theirs to accept or reject. - 🔴 **Edit a paper only when the person asks for the edit.** When they point out a fault, the answer is a proposal --- formatted text in chat if it is short or simple, otherwise edited on disc, by the rule above --- and it is theirs to accept or reject.
- 🔴 **A proposal shown in chat is precise and in textual order**: insert, delete or replace, with only enough context to locate it, as formatted text and never as source, except for the diff of `/tighten-prose`. When the paper is OK, say so. - 🔴 **A proposal shown in chat is precise and in textual order**: insert, delete or replace, with only enough context to locate it, as formatted text and never as source, except for the diff of `/tighten-prose`. When the paper is OK, say so.
- 🔴 **Never modify, reword, paraphrase or restyle text the person wrote** without their explicit authorisation for that change; typo fixes only. 🔴 **Never delete existing text without their consent.** 🔴 **Never write anything in the person's name without their express consent.** When they paste text or say "use my text", paste it verbatim; typographic normalisations are flagged. Do not invent content; when building sections, copy existing content verbatim and mark new content with TODO comments. - 🔴 **Never modify, reword, paraphrase or restyle text the person wrote** without their explicit authorisation for that change; typo fixes only. 🔴 **Never delete existing text without their consent.** 🔴 **Never write anything in the person's name without their express consent.** When they paste text or say "use my text", paste it verbatim; typographic normalisations are flagged. Do not invent content; when building sections, copy existing content verbatim and mark new content with TODO comments.
- 🔴 **Edit the paper, never clone it**: no parallel main file, no duplicated sections directory, for any variant. 🔴 **Never two versions of the same text**: the full version is the text; the short version hides with `\iffull ... \fi`, or replaces point-wise with `\full{...}{...}` only where hiding will not do, and is made only after the paper is done. - 🔴 **Edit the paper, never clone it**: no parallel main file, no duplicated sections directory, for any variant. 🔴 **Never two versions of the same text**: the full version is the text; the short version hides with `\iffull ... \fi`, or replaces point-wise with `\full{...}{...}` only where hiding will not do, and is made only after the paper is done. A proof is written once, in its own file in `appendix/`, and placed with `\proofhere` after its theorem and `\appendixproof` in `appendix/proofs.tex`: the full version has it in the body, the short version in the appendix. `macros/version.tex` defines these commands; `make conf` builds the short version.
- 🔴 **No PDFs** unless the person asks; vimtex compiles theirs, and a session compiles only to check page limits and errors, in its own sandbox and never in the project directory, where vimtex's latexmk writes its build files. 🔴 **Never present a file to the person**: write the change to disc. - 🔴 **No PDFs** unless the person asks; vimtex compiles theirs, and a session compiles only to check page limits and errors, in its own sandbox and never in the project directory, where vimtex's latexmk writes its build files. 🔴 **Never present a file to the person**: write the change to disc.
- **A paper's arXiv version is its living authority**; a camera-ready is a fixed snapshot and never blocks a change. A paper under review is re-uploaded to arXiv after its referee reports and the revision. - **A paper's arXiv version is its living authority**; a camera-ready is a fixed snapshot and never blocks a change. A paper under review is re-uploaded to arXiv after its referee reports and the revision.
- **Publication strategy: submit to the next reasonable deadline**, not the ideal venue. - **Publication strategy: submit to the next reasonable deadline**, not the ideal venue.

View File

@ -10,6 +10,10 @@ This repository is a template for an academic paper in LaTeX, written with Claud
Entries from dblp, through the dblp MCP server or `dblp-cli bibtex <key>`, go in `bib/dblp.bib` and may be added at any time. A reference not in dblp goes in `bib/refs.bib`, with the BibTeX doi.org returns for its DOI. Entries from dblp, through the dblp MCP server or `dblp-cli bibtex <key>`, go in `bib/dblp.bib` and may be added at any time. A reference not in dblp goes in `bib/refs.bib`, with the BibTeX doi.org returns for its DOI.
## Full and conference versions
The full version is the text, and the conference version is built from the same sources. Text of the full version only is hidden in the conference version, and a passage that differs as a whole, such as the abstract, is swapped; `macros/version.tex` defines the commands for both. Each proof is written once, in its own file in `appendix/`: the full version reads it in the body after its theorem, and the conference version restates the theorem in the appendix and reads the proof there. In the class block at the top of `main.tex`, each version can use its own class.
## Building ## Building
`make` compiles the figures, then the paper with latexmk into `build/make/`, and copies the PDF to `main.pdf`. `make figures` compiles each `figures/src/*.tex` into `figures/build/`, and recompiles a figure when its source or a file in `figures/data/` has changed. `make watch` runs latexmk in continuous mode into `build/`, the folder vimtex also uses through `.latexmkrc`; since `make` writes into `build/make/`, it can run while vimtex or `make watch` is compiling. `make clean` removes `build/` and `figures/build/`. `make arxiv` writes `build/arxiv.tar.gz` with the sources, the compiled figures and the `.bbl` file, without `context/`, `scratch/`, `ingest/`, `.claude/`, `CLAUDE.md`, `writing-style-guide.md`, `claudese.md` and `.mcp.json`. `make wordcount` runs texcount over `sections/` and `appendix/`. `make` compiles the figures, then the full version with latexmk into `build/make/full/` and the conference version into `build/make/conf/`, copies their PDFs to `main.pdf` and `main-conf.pdf`, and prints the page on which the References heading of the conference version lands. `make full` and `make conf` build one version each. `make figures` compiles each `figures/src/*.tex` into `figures/build/`, and recompiles a figure when its source or a file in `figures/data/` has changed. `make watch` runs latexmk in continuous mode on the full version into `build/`, the folder vimtex also uses through `.latexmkrc`; since `make` writes into `build/make/`, it can run while vimtex or `make watch` is compiling. `make clean` removes `build/` and `figures/build/`. `make arxiv` writes `build/arxiv.tar.gz` with the sources, the compiled figures and the `.bbl` file of the full version, without `context/`, `scratch/`, `ingest/`, `.claude/`, `CLAUDE.md`, `writing-style-guide.md`, `claudese.md` and `.mcp.json`. `make wordcount` runs texcount over `sections/` and `appendix/`.