# based on "tree -a -L2 -I .git -I .vscode"
.
├── .explcheckrc # explcheck [1] config file
├── .gitattributes
├── .github
│ └── ...
├── .gitignore
├── .justfile # just [2] definition file
├── .pre-commit-config.yaml # pre-commit [3] config file
├── README.md
├── _typos.toml # typos [4] config file
├── build # temp l3build [5] directory (if exist)
├── build.lua # l3build config file
├── support # l3build support files
│ └── ...
├── tabularray # experimental tabularray development
│ ├── CONTRIBUTING.md
│ ├── README.md
│ ├── build.lua # tabularray l3build config file
│ ├── buildend.lua # wrapper to use support/ppmcheckpdf.lua
│ ├── config-old.lua # tabularray l3build config file for old test set
│ ├── doc
│ ├── tabularray.sty
│ ├── testfiles # new l3build test set
│ ├── testfiles-old # old l3build test set
│ └── ...
└── zutil # experimental LaTeX utility macros
├── README.md
├── build.lua # zutil l3build config file
├── testfiles # zutil l3build tests
├── zutil-debug.code.tex
├── zutil-l3extras.code.tex
├── zutil-softerror.code.tex
└── zutil.sty
Tools
- [1]
explcheck
: Development tools for expl3 programmers
https://github.com/Witiko/expltools\ Installation:tlmgr install expltools
- [2]
just
: Just a command runner
https://github.com/casey/just - [3]
pre-commit
: a Git hook framework
https://github.com/pre-commit/pre-commit\ Installation: (recommended)uv tool install pre-commit
- [4]
typos
: Source code spell checker
https://github.com/crate-ci/typos - [5]
l3build
: A testing and building system for LaTeX
https://github.com/latex3/l3build\ Installation:tlmgr install l3build
Checks
- Quick checks
- check spelling, lint expl3 files, lint GitHub Actions workflow files, and more (see
.pre-commit-config.yaml
) - incremental run (on
git
staged files only)- auto triggered by
git commit
(pre-commit
git hook in use) - run
just pre-commit
orpre-commit run
- auto triggered by
- full run
- run
just lint-all
orpre-commit run -a
- run
- check spelling, lint expl3 files, lint GitHub Actions workflow files, and more (see
- Slow checks
l3build
tests- run
just test-all
- Full checks
- run
just all
- run
- Checks on CI
lint.yml
full quick checkscheck.yml
full slow checks (on single OS)schedule.yml
once a week, quick checks (on 1 OS) + slow checks on 3 OSes
Run all checks
$ just all
General just
usages
# list all "just" recipes available in this repo
$ just
# list commands that would run by RECIPE
$ just --dry-run RECIPE
Advanced just
usages in this repository
# fix typos in-place
$ just typos -w/--write-changes
# or "typos -w/--write-changes"
# check l3build tests using "latex-dev"
$ just test-all --dev
# save a l3build test
$ just save tabularray build tblr-zutil-debug
# check a l3build test
$ just check tabularray build tblr-zutil-debug
Note: As configured by .justfile
in this repository, just
can be invoked from any subdirectory and it acts the same.