CTAN update: xecjk
Datum: 26. Juni 2026 19:24:42 MESZ
Liam Huang submitted an update to the
xecjk
package.
Version: 3.10.0
License: lppl1.3c
Summary description: Support for CJK documents in XeLaTeX
Announcement text:
xeCJK v3.10.0 is a major release focused on Chinese inter-character spacing (CJKglue/CJKecglue) correctness across whatsit-bearing contexts, with broad fixes and a few breaking changes. Highlights: NEW FEATURES * New \xeCJKchar command bypassing interchar handling, replacing the earlier \char redefinition that broke xint and other packages (resolves #407, #800). * New experiment/halfright-prebreakpenalty option (#811). * New experiment/punct-measure-fix option for paragraph-mode punctuation-compensation glue eaten by \unskip. * New NoBreakLongPunct character property forbidding line breaks before long punctuation such as ellipses. * Document fonts unified to Noto Serif CJK; xunicode-symbols.tex now uses a five-level per-character font fallback chain (FreeSerif -> Noto Sans Symbols 2 -> Symbola -> Segoe UI Symbol -> DejaVu Sans) for #878. * Unicode data resynchronised through Unicode 17.0 (with 15.0 / 15.1 catch-up). BUG FIXES (CJKglue / CJKecglue / boundary recovery) * \textcolor and other color whatsit nodes no longer drop CJKecglue on either side (#807, #809, #810, #831, #832). * \textcolor wrapping ulem-family underline commands no longer corrupts CJK inter-character spacing (#830). * Spurious inter-word glue after explicit "}", \mbox and \textcolor is suppressed (#831). * hyperref link annotations preserve CJKecglue across the \Hy@BeginAnnot whatsit (#809, #810). * xeCJKfntef commands no longer leave a stray space on their right side; font-state and \g_@@_last_node_tl are now saved across the hbox (#465, #826). * hypdoc \HD@target hbox and url \Url@FormatString math entry no longer shadow boundary markers (#873, #880). * \lstinline now preserves the character code of catcode-6 tokens beyond '#' (e.g. when \catcode`\&=6) (#879). * Trailing space after a CJK character before a macro is no longer emitted as glue prematurely. * xCJKecglue option and \xeCJKnobreak handling corrected. BREAKING CHANGES * \newCJKfontfamily now defines its font-switching command locally instead of globally (#751/PR #773). * Removed compatibility shims for LaTeX2e versions older than 2020/10/01 (#746). * Minimum LaTeX3 (expl3) version raised to 2025/10/09. DEPRECATED * \xeCJKsetcharclass is deprecated. Full ChangeLog (per \changes{v3.10.0} entries) is available in the package documentation. Source and issue tracker: https://github.com/CTeX-org/ctex-kit
This package is located at https://mirrors.ctan.org/macros/xetex/latex/xecjk More information is at https://ctan.org/pkg/xecjk
Thanks for the upload. For the CTAN Team Erik Braun CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs .
xeCJK v3.10.0 is a major release focused on Chinese inter-character spacing (CJKglue/CJKecglue) correctness across whatsit-bearing contexts, with broad fixes and a few breaking changes. Highlights: NEW FEATURES * New \xeCJKchar command bypassing interchar handling, replacing the earlier \char redefinition that broke xint and other packages (resolves #407, #800). * New experiment/halfright-prebreakpenalty option (#811). * New experiment/punct-measure-fix option for paragraph-mode punctuation-compensation glue eaten by \unskip. * New NoBreakLongPunct character property forbidding line breaks before long punctuation such as ellipses. * Document fonts unified to Noto Serif CJK; xunicode-symbols.tex now uses a five-level per-character font fallback chain (FreeSerif -> Noto Sans Symbols 2 -> Symbola -> Segoe UI Symbol -> DejaVu Sans) for #878. * Unicode data resynchronised through Unicode 17.0 (with 15.0 / 15.1 catch-up). BUG FIXES (CJKglue / CJKecglue / boundary recovery) * \textcolor and other color whatsit nodes no longer drop CJKecglue on either side (#807, #809, #810, #831, #832). * \textcolor wrapping ulem-family underline commands no longer corrupts CJK inter-character spacing (#830). * Spurious inter-word glue after explicit "}", \mbox and \textcolor is suppressed (#831). * hyperref link annotations preserve CJKecglue across the \Hy@BeginAnnot whatsit (#809, #810). * xeCJKfntef commands no longer leave a stray space on their right side; font-state and \g_@@_last_node_tl are now saved across the hbox (#465, #826). * hypdoc \HD@target hbox and url \Url@FormatString math entry no longer shadow boundary markers (#873, #880). * \lstinline now preserves the character code of catcode-6 tokens beyond '#' (e.g. when \catcode`\&=6) (#879). * Trailing space after a CJK character before a macro is no longer emitted as glue prematurely. * xCJKecglue option and \xeCJKnobreak handling corrected. BREAKING CHANGES * \newCJKfontfamily now defines its font-switching command locally instead of globally (#751/PR #773). * Removed compatibility shims for LaTeX2e versions older than 2020/10/01 (#746). * Minimum LaTeX3 (expl3) version raised to 2025/10/09. DEPRECATED * \xeCJKsetcharclass is deprecated. Full ChangeLog (per \changes{v3.10.0} entries) is available in the package documentation. Source and issue tracker: https://github.com/CTeX-org/ctex-kit
This package is located at https://mirrors.ctan.org/macros/xetex/latex/xecjk More information is at https://ctan.org/pkg/xecjk
Thanks for the upload. For the CTAN Team Erik Braun CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs .
xecjk – Support for CJK documents in XeLaTeX
A LaTeX package for typesetting CJK documents in the way users have become used to, in the CJK package.
The package requires a current version of xtemplate (and hence of the current LaTeX3 development environment).
| Paket | xecjk |
| Version | 3.10.0 |
| Copyright | 2007–2010 Wenchang Sun 2009–2022 Leo Liu 2012–2022 Qing Lee |
| Betreuer | Liam Huang Qing Lee Leo Liu Jiang Jiang (inaktiv) Wenchang Sun (inaktiv) |