lshort-zh-cn: the Chinese edition of The Not So Short Introduction to LaTeX2ε, and how to build it from source
A Chinese edition of the Not So Short Introduction to LaTeX2ε
At a glance
- What is it?
- A GFDL-1.3 licensed Chinese LaTeX manual maintained by CTeX-org, shipped as TeX source you typeset yourself. It is for readers who want a Chinese-language LaTeX reference and are willing to run XeLaTeX to get the PDF.
- Who is it for?
- Adopt lshort-zh-cn if you need a Chinese-language LaTeX reference and can build it with XeLaTeX, or if you already have a TeX distribution with current ctex and xeCJK and just want the PDF from CTAN. Do not adopt it as an English-language LaTeX tutorial, and do not expect a prebuilt PDF inside the repository: the top level holds LICENSE, README-zh.md, README.md, src/ and .github/, and nothing else.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 159 days ago.
- What is it written in?
- Mainly TeX, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What lshort-zh-cn actually is, and who it is written for
This is a Chinese edition of The Not So Short Introduction to LaTeX2ε, the long-running introductory manual for LaTeX. The repository is not a PDF download page. It is the TeX source of the book, plus the style file and build machinery needed to turn that source into a PDF. The top-level layout is small: .github/, .gitignore, LICENSE, README-zh.md, README.md and src/.
The audience is narrow and specific. You are expected to be comfortable enough with LaTeX to typeset a book, or at least willing to follow four commands in the right order. If you only want to read a Chinese LaTeX introduction, the project is distributed through CTAN as the package lshort-zh-cn, and the README links there. Building from source is for people who want to modify the text, track changes between versions, or produce the PDF with a particular TeX distribution.
The licence is GNU Free Documentation License, version 1.3. The README points to the LICENSE file for details and notes that the document itself carries a section titled GNU Free Documentation License, with the source in fdl.tex. That is a documentation licence, not a code licence, which matters if you plan to reuse the text rather than just read it.
How the source is organised and why the build order matters
The build is a classic LaTeX multi-pass job, and the README is explicit that the passes are not interchangeable. In the src directory you typeset lshort-zh-cn with xelatex, run makeindex with the style file lshort-zh-cn.ist, then run xelatex twice more. The index pass sits in the middle because the index entries only exist after the first typesetting run, and the two following XeLaTeX runs resolve cross-references and the index into the final PDF.
XeLaTeX rather than pdfLaTeX is not a stylistic preference here. The README's preparation step says to update ctex and xeCJK and all the packages they rely on. ctex is the Chinese typesetting support layer and xeCJK handles CJK fonts under XeTeX, so the toolchain is built around XeTeX's font handling. That also means the document depends on fonts being present and correctly configured on your machine, which is the usual source of failures for this class of project.
The README adds a second precondition: make sure all the other packages used in lshort-zh-cn-style.sty are installed and updated to the newest version. The style file is therefore the authoritative list of dependencies. If a build fails with a missing package, that file is where to look, not the README.
One structural detail worth noticing: the README instructs you to move the finished PDF to the root directory after a successful build. The repository does not appear to store the built PDF at the top level, so the artefact is something you produce rather than something you clone.
Installing the toolchain and producing the PDF
There is no package manager install step for the project itself. You install a TeX distribution that provides XeLaTeX, makeindex and the packages, then work inside src. The README's manual sequence is the most transparent way to see what happens:
xelatex lshort-zh-cn
makeindex -s lshort-zh-cn.ist lshort-zh-cn
xelatex lshort-zh-cn
xelatex lshort-zh-cnRun these from inside src. The first run produces the auxiliary files the index needs, the makeindex run consumes lshort-zh-cn.ist to build the index, and the two final runs fold the index and cross-references into lshort-zh-cn.pdf. Afterwards the README says to move the PDF to the root directory.
If you are on GNU/Linux or macOS, the repository provides a Makefile in src, and the README gives a two-step usage:
make
make installOn Windows there is a batch file, make.bat, also in src, which the README says you can double-click to do the typesetting. If you prefer latexmk, the repository ships a latexmkrc configuration file, and the README says to run latexmk in src and then move the PDF to the root directory.
The preparation step comes before all of this: update ctex and xeCJK and their dependencies in your TeX distribution. Skipping that is the most likely way to get a build that fails or produces broken Chinese text.
Where the build is fragile and when this is the wrong tool
The failure modes are the ordinary ones for a book-length XeLaTeX project, and the README's own instructions point at them. Dependency drift is the first: the README asks for the newest version of every package used in lshort-zh-cn-style.sty, which means an older but otherwise working TeX distribution can fail on this source. If your distribution is pinned for reproducibility, that requirement is in direct tension with your setup.
Font configuration is the second and less documented one. The README names ctex and xeCJK but says nothing about which CJK fonts must be installed or how to select them. On a machine without suitable Chinese fonts, a XeLaTeX run can complete with missing glyphs rather than a clean error, which is worse than a hard failure because you only notice when reading the output.
The build order is the third. Running xelatex once and stopping gives a PDF without a complete index. Running makeindex before the first xelatex run has nothing useful to read. The README does not document a rollback or cleanup procedure, so recovering from a half-finished build means removing the auxiliary files yourself and starting the sequence again.
This is the wrong tool in two clear cases. If you want an English-language LaTeX introduction, the original manual is the relevant work, not this edition. If you want a PDF without a TeX installation, the CTAN package page linked from the README is the path, and cloning this repository to read the source is not.
How it differs from the upstream English manual and from generic LaTeX guides
The obvious alternative is the original English Not So Short Introduction to LaTeX2ε, which this project is an edition of. The difference is not just language. The Chinese edition carries its own style file, lshort-zh-cn-style.sty, its own index style, lshort-zh-cn.ist, and a build that depends on ctex and xeCJK. Upstream does not need a CJK layer, so its build has fewer moving parts and no font configuration question. Choosing this edition means accepting that extra dependency surface in exchange for Chinese typesetting.
A second comparison is with Chinese LaTeX documentation that is not a book source. A wiki page or a blog post about ctex requires no toolchain at all. This project requires a working XeLaTeX setup before you can read the text in its final form. The trade is that you get a structured, versioned document with an index and a formal licence, at the cost of a build step.
The release history shows the shape of maintenance: v6.03 in November 2021, v6.04 in May 2023, v6.05 in December 2024, with the last push to the repository on 2026-04-25. That is a slow cadence, which is normal for a manual that tracks a stable typesetting system, but it means you should not expect fixes to land quickly if a newer TeX distribution breaks the build.
Licence and the cost of keeping a fork in sync
The document is distributed under the GNU Free Documentation License, version 1.3. The README directs readers to the LICENSE file and to the GNU Free Documentation License section inside the document, with the source in fdl.tex. GFDL is designed for documentation and carries conditions around copying, modification and attribution that differ from a permissive code licence. If you intend to redistribute a modified version, read those conditions in the document itself rather than assuming the terms match a software licence you already know. This is a description of what the repository states, not legal advice.
The upgrade cost is low if you only read the PDF and high if you fork the text. Because the build depends on the newest ctex, xeCJK and the packages in lshort-zh-cn-style.sty, a fork inherits that dependency requirement and has to be re-checked whenever a TeX distribution updates. The repository's own build workflow lives under .github/, so the project has automated checking on its side; a fork that does not replicate that workflow loses the early warning.
For a reader, the practical upgrade path is the CTAN package lshort-zh-cn, which the README links and which tracks the released versions. For a contributor, the path is the src directory and the three-pass build.
Editorial conclusion
Adopt lshort-zh-cn if you need a Chinese-language LaTeX reference and can build it with XeLaTeX, or if you already have a TeX distribution with current ctex and xeCJK and just want the PDF from CTAN. Do not adopt it as an English-language LaTeX tutorial, and do not expect a prebuilt PDF inside the repository: the top level holds LICENSE, README-zh.md, README.md, src/ and .github/, and nothing else. Before you invest time, verify that your TeX distribution has updated ctex and xeCJK plus every package listed in src/lshort-zh-cn-style.sty, because the README makes that a precondition for typesetting.
Frequently asked questions
Do I need to install anything to read lshort-zh-cn?
You do not need a TeX installation if you just want to read it. The README links to the CTAN package page for lshort-zh-cn, which is where the distributed version lives. Building from source is only necessary if you want to modify or typeset the text yourself.
Which engine does lshort-zh-cn require to typeset?
The README's manual sequence uses xelatex, not pdflatex, and the preparation step says to update ctex and xeCJK and the packages they rely on. That points to XeTeX's CJK and font handling as the basis of the build.
What licence does lshort-zh-cn use?
It is distributed under the GNU Free Documentation License, version 1.3. The README points to the LICENSE file and notes that the document contains a section titled GNU Free Documentation License, with the source in fdl.tex.
Can I build lshort-zh-cn on Windows?
The README says Windows users are provided a batch file, make.bat, in the src directory, which can be double-clicked to do the typesetting. The Makefile route is described for GNU/Linux and macOS users.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/ctex-org-lshort-zh-cn)