SPIX(1)
π¦ NAME π¦
spix β compile a .tex file and, while you're at it, execute the commands that are set inside the file itself. no cap. π
β¨ SYNOPSIS β¨
spix [--version] [-h] [-n] file
π DESCRIPTION π
okay so here's the tea, bestie π« β spix parses a .tex file looking for lines that start with %$, and this is only before the preambule, okay? that's the zone. those lines are shell commands, and spix runs them. main character behaviour fr fr. π
commands get executed as-is, except for two tiny little exceptions that are honestly so iconic:
- commands are run from the directory of the file given in argument π
- the shell variables
$texnameand$basenameare set to the name of the tex file β$texnamewith the.texextension,$basenamewithout it π
π OPTIONS π
-n,--dry-runβ prints the commands that would be executed, but does not execute them. window shopping only, no commitment π-h,--helpβ prints help, and exits. π--versionβ prints version, and exits. β
π EXAMPLES π
so let's say foo.tex is this file right here:
% Compile this file twice with lualatex.
%$ lualatex foo.tex
%$ lualatex foo.tex
\documentclass{article}
\begin{document}
Hello, world!
\end{document}
when you run spix on this file, it gets compiled twice using lualatex(1) β literally exactly as written in lines 2 and 3 of the file. the file is telling you what to do and spix is just like "bet." π₯π
that's the whole page, bestie π this one's from the General Commands Manual, page SPIX(1) β go compile something iconic for me, mwah πβ¨π¦
π¦ where this page comes from
- alpine 3.24: texmf-dist-binextra-doc 2026.0-r0 Β· LPPL-1.0 AND LPPL-1.1 AND LPPL-1.2 AND LPPL-1.3a AND LPPL-1.3c AND GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms