Structure
TeXRocks are consist of 3 parts:
texrocks library
A core library to support all. Its principle is to provide an isolated environment for luahbtex. More details.
LOC: ~ 200
TeX Tools
Many tools developed by us. They aim to replace other TeX tools written in other languages than lua.
In original TeX ecosystem:
- when you want to syntax highlight code in a TeX documents, you need minted written in Python.
- When you want to install a TeX package from CTAN, you need tlmgr written in Perl.
- When you want to build a LaTeX project, you need arara written in Java or latexmk written in Perl.
- When you want to use bibliography, you need biber written in Perl.
- When you want to install TeXLive, you need TeXLive installer GUI written in tcl/tk.
- ...
We try to provide a choice of pure lua. We don't reject other languages because
we also provide CLI interfaces like
kpsewhich
for them. However, if you are tired to install many other languages, we give you
a simple and clean world. Only two dependencies: lx and luahbtex. Others are
unnecessary.
More details.
LOC: ~ 2000
TeX Packages
We pack all TeX packages as rock file format different from *-ctan.zip and
*.tds.zip because rock file format contain a rockspec file to provide meta
information, especially dependency relationship.
More details.
LOC: ~ 8000