# cstypo

This package provides macros for Czech language typography rules using Lua(La)TeX.

- License is MIT license. See `LICENSE` file.

- Author is [Václav Haisman](mailto:vhaisman+cstypo@gmail.com?subject=[cstypo])

- Source code on GitHub in [`wilx/cstypo`](https://github.com/wilx/cstypo) repository.

To build the CTAN package, run these commands from the package source directory:

```sh
latexmk -gg -lualatex -interaction=nonstopmode -halt-on-error cstypotest.tex
latexmk -gg -lualatex -interaction=nonstopmode -halt-on-error cstypo.tex
ctanify --pkgname=cstypo --no-tds \
  cstypo.lua=tex/luatex/cstypo \
  cstypo.sty=tex/lualatex/cstypo \
  cstypo-tex.tex=tex/luatex/cstypo \
  README.md=doc/lualatex/cstypo \
  LICENSE=doc/lualatex/cstypo \
  cstypotest.tex=doc/lualatex/cstypo \
  cstypotest.pdf=doc/lualatex/cstypo \
  cstypo.tex=doc/lualatex/cstypo \
  cstypo.pdf=doc/lualatex/cstypo
```

This rebuilds the example and manual PDFs and writes `cstypo.tar.gz`.
The archive contains a flat `cstypo/` directory with the package files,
README, license, documentation sources, and PDFs. It omits the optional
TDS ZIP, following CTAN's guidance for small packages in the
[upload basics](https://ctan.org/help/upload-pkg) and
[upload addendum](https://ctan.org/file/help/ctan/CTAN-upload-addendum).

ctanify 1.9.1 still creates a temporary TDS tree internally with `--no-tds`,
so the command retains file mappings and requires `zip`. The resulting
TDS ZIP is not included in the submission archive.

Building requires LuaLaTeX, latexmk, ctanify, GNU tar, gzip, and zip, plus
the document's LaTeX packages and the Charis SIL, TeX Gyre Heros, and
DejaVu Sans Mono fonts. The complete Ubuntu dependency list is in
[the build workflow](https://github.com/wilx/cstypo/blob/master/.github/workflows/build.yml).

GitHub Actions runs the regression tests and the commands above on pushes,
pull requests, and manual runs. Download `cstypo.tar.gz` from the artifacts
of a successful **Build package** run in the repository's **Actions** tab.
Artifacts are retained for 30 days.
