v0.21.0 — The base package and engine-native text commands
A minor release: a new lightweight base package, engine-native text commands in place of the LaTeX-style aliases, and a pixel-native option for the CLI.
Breaking changes
The LaTeX-spelled markup aliases are gone — texish is not aiming at LaTeX source compatibility, and each was only a second name for a command the engine already has. Rewrite call sites to the engine-native names:
| removed | use instead |
|---|---|
\emph{…} \textit{…} |
\italic{…} |
\textbf{…} |
\bold{…} |
\textsl{…} |
\slanted{…} |
\textsc{…} |
\smallcaps{…} |
\texttt{…} \textsf{…} \textrm{…} |
\mono{…} \sans{…} \serif{…} |
\textnormal{…} |
{\normalfont …} |
\textsuperscript{…} \textsubscript{…} |
\textsup{…} \textsub{…} |
\ifthenelse{c}{a}{b} |
\if {c} a \else b \fi |
\equal{a}{b} |
\={a}{b} |
The family-role forms \texttt / \textsf / \textrm are renamed to the plain wrapping primitives \mono / \sans / \serif, so the engine's shape and role commands now share one naming convention: \bold \italic \slanted \smallcaps \mono \sans \serif. The declarations (\bfseries, \itshape, \scshape, \ttfamily, …) are unchanged.
New: the base package
The everyday conveniences that used to live inside document are now a lighter package on their own:
\use{base}
base carries a font-size ladder (\tiny…\Huge), the vertical skips (\smallskip / \medskip / \bigskip), single-line alignment (\centerline / \leftline / \rightline, \centering, \rlap / \llap), the center / flushleft / flushright and quote / quotation environments, and the \TeX / \LaTeX / \TeXish logos — and nothing else. A page that wants only these — a caption, a flyer, a title card — can load \use{base} and skip titles, sections and page numbering. \use{document} now begins with \use{base} and adds the article furniture on top, so every existing document keeps working.
CLI: a numeric DPI for -r
--resolution now accepts a DPI number in addition to the named sizes. At -r 72 one point renders as exactly one pixel, so a document laid out in points reads directly in pixels — handy for fixed-size raster targets such as video frames:
texish frame.texish -t png -r 72 # a 1280x720pt page becomes a 1280x720 PNGDemos
A new scripts/lowerthird-demo.script shows a broadcast-style lower third for compositing over video: a translucent-black panel across the foot of a transparent frame, with a large scripture verse set in EB Garamond — built from \pagecolor{transparent}, \colorbox[alpha] and a \parbox, rendered at -r 72.
Suites are green at JVM 1359 / JS 1234 / Native 1249.
Native CLI binaries for Linux (x86_64, arm64) and macOS (arm64) attach below; other platforms use the JVM build.