feat(add-template): keep a registered template's intermediates in build/ (#473) (#474)

* feat(add-template): keep a registered template's intermediates in build/

A template registered via /add-template declared a bare compile command, so
every new template scattered .aux/.log/.out beside its source, and Step 4 had to
enumerate six LaTeX extensions to clean up after its test compile.

- The elicited LaTeX command now redirects intermediates to build/ with the
  portable -output-directory (not the MiKTeX-only -aux-directory), creates the
  folder (TeX Live does not), and moves the PDF back beside the source where
  /apply reads it. A leading rm -f ensures a failed compile, which skips the mv,
  never leaves a stale PDF there.
- Toolchains with nothing to redirect (typst compile) keep their command, and
  registration never blocks on the rule. If the redirect alone breaks a
  template (e.g. \include from a subfolder), it is dropped and recorded under
  Known pitfalls.
- The manifest example shows the pattern, Step 4 cleanup deletes build/
  instead of listing extensions, and the ACTIVE-TEMPLATE block tells /apply to
  run the command from the output directory and remove build/ in Step 5e.
- build/ is gitignored.

Stock templates are untouched, so /apply Step 5e stays.

* docs(add-template): drop the MiKTeX aside from the build directory rule

* test(add-template): pin the build directory compile command
This commit is contained in:
Jakob Stender Guldberg authored and GitHub committed 2026-09-21 08:20:10 +02:00
1 parent 09435eb1a5
commit 5bb5f79f7c
4 files changed
+46 -4

No files matched your search

+1
View File
@@ -17,6 +17,7 @@ venv/
*.synctex.gz
*.fls
*.fdb_latexmk
build/
# Personal data (never commit these)
salary_data.json